# Keras: biblioteca de código abierto para crear redes neuronales

La [inteligencia artificial](https://www.ionos.com/es-us/digitalguide/online-marketing/vender-en-internet/que-es-la-inteligencia-artificial/ "¿Qué es la inteligencia artificial?") desempeña un papel fundamental en el mundo digital actual, tanto en el desarrollo y el uso de videojuegos (u otros programas de aplicación) como en los servicios web, los dispositivos o las máquinas. En este sentido, uno de los campos de investigación más importantes es el de las llamadas [redes neuronales](https://www.ionos.com/es-us/digitalguide/online-marketing/marketing-para-motores-de-busqueda/que-es-una-neural-network/ "¿Qué es una neural network?") (en inglés, *neural networks*), que estudia en profundidad los conceptos básicos del “pensamiento virtual”. La implementación de estas redes se simplifica considerablemente con Keras. Descubre qué esconde esta **biblioteca de código abierto** y cómo facilita la creación de redes neuronales.

## ¿Qué es Keras?

Keras es una biblioteca de código abierto (con licencia MIT) escrita en Python, que se basa principalmente en el trabajo de François Chollet, un desarrollador de Google, en el marco del proyecto ONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System). La primera versión de este software multiplataforma se lanzó el 28 de marzo de 2015. El objetivo de la biblioteca es acelerar la creación de redes neuronales: para ello, Keras no funciona como un *framework* independiente, sino como una **interfaz de uso intuitivo** (API) que permite acceder a varios ***frameworks* de aprendizaje automático** y desarrollarlos. Entre los *frameworks* compatibles con Keras, se incluyen Theano, Microsoft Cognitive Toolkit (anteriormente CNTK) y TensorFlow.

Nota Keras ha sido una **parte integral de la API principal de TensorFlow** desde que se lanzó TensorFlow 1.4. Sin embargo, esta biblioteca continúa desarrollándose como **software independiente**, ya que se diseñó como una interfaz para diversos *frameworks* desde el principio, un enfoque que se sigue aplicando.

La versión actual de Keras es compatible con Python desde la versión 2.7: puedes acceder al **proyecto completo** a través del [directorio oficial de GitHub de Keras](https://github.com/keras-team/keras/ "El directorio GitHub de la biblioteca de código abierto Keras").

[YouTube video](https://www.youtube.com/watch?v=j_pJmXJwMLA)## ¿Cómo funciona Keras?

Keras es una biblioteca que funciona a nivel de modelo: **proporciona bloques modulares** sobre los que se pueden desarrollar modelos complejos de aprendizaje profundo. A diferencia de los *frameworks*, este software de código abierto no se utiliza para operaciones sencillas de bajo nivel, sino que utiliza las bibliotecas de los *frameworks* de aprendizaje automático vinculadas, que en cierto modo actúan como un motor de *backend* para Keras. Las capas de la red neuronal que se quieren configurar se relacionan entre sí de acuerdo con el **principio modular**, sin que el usuario de Keras tenga que comprender o controlar directamente el propio *backend* del *framework* elegido.

Como hemos mencionado, Keras se basa especialmente en las herramientas TensorFlow, Theano y Microsoft Cognitive Toolkit, para las cuales existen **interfaces listas para usar** que permiten un **acceso rápido e intuitivo al *backend* correspondiente**. Así, no es necesario que te decidas por un *framework* concreto, porque es posible cambiar de *backend* fácilmente. Si lo prefieres, también puedes elegir un *backend* alternativo, aparte de estas tres soluciones. Para ello, solo debes especificarlo en el **archivo de configuración** (keras.json) y aplicarlo mediante las funciones “placeholder”, “variable” y “function”.

Consejo Puedes obtener información más detallada sobre la **administración de los *backend*** y el **uso general** del software en nuestro completo [tutorial de Keras](https://www.ionos.com/es-us/digitalguide/paginas-web/desarrollo-web/tutorial-de-keras/ "Tutorial de Keras").

## ¿Qué ventajas ofrece Keras?

La biblioteca de código abierto Keras supone una excelente aportación a las herramientas que sirven para crear redes neuronales, ya que simplifica muchísimo este proceso. En este caso, la atención se centra sobre todo en mejorar la **usabilidad**: Keras funciona como una interfaz diseñada expresamente para personas y solo secundariamente para máquinas. Las **acciones del usuario necesarias** para los casos de uso más importantes **se reducen al mínimo** y, si aun así se producen **errores**, se proporciona un ***feedback*** que ayuda a resolverlos. Por lo tanto, aprender a utilizar Keras es relativamente fácil, lo que mejora la productividad. Además, gracias a la conexión con los *frameworks* de aprendizaje profundo, esta simplicidad no conlleva limitaciones funcionales: puedes incorporar todas las características que quieras a través de **interfaces que se adaptan a la perfección** (o volverlas a deshabilitar si es necesario).

Keras también presenta las siguientes ventajas:

- **Amplia compatibilidad entre plataformas para los modelos desarrollados**: los modelos desarrollados con Keras son especialmente fáciles de utilizar en diferentes plataformas. Por ejemplo, son compatibles con iOS (Apple CoreML), Android (Keras TensorFlow Android Runtime), Google Cloud y Raspberry Pi por defecto.
- **Compatibilidad con múltiples motores de *backend***: Keras no solo te da mucha libertad a la hora de elegir el *backend*, sino que también te permite combinar varios motores. Además, es posible transferir los modelos desarrollados a otro *backend* en cualquier momento.
- **Excelente soporte para múltiples GPU**: con Keras, los recursos necesarios para desarrollar los procesos de aprendizaje profundo se pueden distribuir fácilmente en varios chips o tarjetas gráficas.
- **Desarrollo por parte de grandes empresas**: el mantenimiento y el desarrollo de Keras cuentan con el apoyo de las empresas más importantes del sector. Google, Amazon AWS, Microsoft, Apple y Nvidia, entre otras, están implicadas en el proyecto.

## ¿Para qué proyectos es adecuado Keras?

Como interfaz universal para gran variedad de plataformas de aprendizaje automático, Keras se utiliza actualmente en muchos proyectos del **sector de la IA**. Si la biblioteca ya registraba **más de 250 000 usuarios individuales** a mediados de 2018, esta cantidad ha aumentado significativamente, al menos desde la incorporación al software TensorFlow de Keras. La libre elección del *framework* subyacente, la licencia gratuita y el concepto multiplataforma hacen de Keras la solución perfecta para las aplicaciones de redes neuronales profesionales, tanto en la industria como en la investigación. Por ejemplo, empresas famosas como **Netflix**, **Uber** y **Yelp**, así como grandes organizaciones como la **NASA** o la **CERN**, confían en Keras o en el paquete TensorFlow-Keras para llevar a cabo sus proyectos.


This is a markdown version of: [https://www.ionos.com/es-us/digitalguide/online-marketing/marketing-para-motores-de-busqueda/que-es-keras/](https://www.ionos.com/es-us/digitalguide/online-marketing/marketing-para-motores-de-busqueda/que-es-keras/) for AI/LLM consumption.