Keras es una biblioteca de software de código abierto que proporciona una interfaz de Python para redes neuronales artificiales. Actúa como interfaz para la biblioteca TensorFlow. Keras se lanzó por primera vez en 2015 y fue diseñado para permitir una experimentación rápida con redes neuronales profundas, centrándose en ser fácil de usar, modular y extensible. El nombre Keras deriva de la palabra griega antigua κέρας (keras), que significa 'cuerno'.
Historia
Keras fue desarrollado como parte del esfuerzo de investigación del proyecto ONEIROS (Sistema Operativo Robótico Inteligente Neuroelectrónico de Código Abierto). Su autor principal y mantenedor es François Chollet, ingeniero de Google hasta 2024. Inicialmente, Keras era un software independiente, pero posteriormente se integró en la biblioteca TensorFlow. Hasta la versión 2.3, Keras admitía múltiples backends, incluidos TensorFlow, Microsoft Cognitive Toolkit, Theano y PlaidML. Desde la versión 2.4 hasta la versión 3.0, solo se admitía TensorFlow. A partir de la versión 3.0 (y su versión preliminar, Keras Core), Keras volvió a ser multi-backend, admitiendo TensorFlow, JAX y PyTorch. Keras 3 se convirtió en la versión predeterminada para TensorFlow 2.16 en adelante, pero Keras 2 todavía se puede utilizar.
Características
Keras contiene numerosas implementaciones de bloques de construcción de redes neuronales de uso común, como capas, objetivos, funciones de activación, optimizadores y una variedad de herramientas para trabajar con datos de imagen y texto. Esto simplifica la programación de redes neuronales profundas. Además de las redes neuronales estándar, Keras admite redes neuronales convolucionales y recurrentes. También admite otras capas de utilidad comunes como dropout, normalización por lotes y agrupación. Keras permite a los usuarios producir modelos profundos en teléfonos inteligentes (iOS y Android), en la web o en la Máquina Virtual de Java. También permite el uso de entrenamiento distribuido de modelos de aprendizaje profundo en clústeres de unidades de procesamiento gráfico (GPU) y unidades de procesamiento tensorial (TPU).
Adopción e impacto
Keras se ha convertido en una de las API de redes neuronales de alto nivel más utilizadas, particularmente en la comunidad de aprendizaje automático. Su integración con TensorFlow lo ha convertido en una herramienta estándar para muchas aplicaciones de aprendizaje profundo. La biblioteca es conocida por su facilidad de uso, lo que ha contribuido a su popularidad tanto entre principiantes como entre investigadores. Keras también se utiliza en varios proyectos de inteligencia artificial, incluidos aquellos que involucran IA generativa y modelos de lenguaje de gran tamaño. La flexibilidad de la biblioteca y su soporte para múltiples backends la han convertido en una opción versátil para desarrollar e implementar redes neuronales.
Véase también
- Comparación de software de aprendizaje profundo
- Red neuronal
- TensorFlow
- PyTorch
- JAX
Referencias
- Documentación de Keras y sitio web oficial
- Notas de lanzamiento de TensorFlow
- Publicaciones y charlas de François Chollet