10 puntos por GN⁺ 2023-11-29 | 3 comentarios | Compartir por WhatsApp
  • Se anunció el lanzamiento oficial de Keras 3.0, tras 5 meses de pruebas beta públicas
  • Keras 3 es una reescritura integral que permite ejecutar flujos de trabajo de Keras sobre JAX, TensorFlow y PyTorch
  • Ofrece nuevas capacidades para el entrenamiento y despliegue de modelos a gran escala

Bienvenida al aprendizaje automático multiframewok

  • Las ventajas de usar Keras se centran en una alta velocidad de desarrollo, experiencia de usuario, diseño de API y facilidad de depuración
  • Es un framework probado elegido por 2.5 millones de desarrolladores, y se usa en sistemas de ML a gran escala como los vehículos autónomos de Waymo y el motor de recomendaciones de YouTube
  • Keras 3 ofrece beneficios adicionales como optimización del rendimiento del modelo, ampliación de opciones del ecosistema de modelos, y soporte para paralelismo de modelos a gran escala y paralelismo de datos

La API de Keras 3 está disponible en JAX, TensorFlow y PyTorch

  • Keras 3 implementa toda la API de Keras y puede usarse con TensorFlow, JAX y PyTorch
  • Cualquier modelo de Keras que use solo capas integradas funciona de inmediato en todos los backends compatibles
  • Los modelos existentes de tf.keras también pueden ejecutarse directamente en JAX y PyTorch

Escritura de capas, modelos y métricas multiframewok

  • Keras 3 permite crear componentes (como capas personalizadas y modelos preentrenados) que funcionan igual en todos los backends
  • A través del espacio de nombres keras.ops, ofrece una API de NumPy compatible entre backends y funciones especializadas para redes neuronales
  • Mientras se use solo keras.ops, las capas y métricas personalizadas funcionarán con el mismo código en JAX, PyTorch y TensorFlow

Nueva API distribuida para paralelismo de datos a gran escala y paralelismo de modelos

  • Proporciona una nueva API distribuida para resolver el problema del sharding de modelos a gran escala
  • Separa la definición del modelo, la lógica de entrenamiento y la configuración de sharding, para que se pueda escribir un modelo como si se ejecutara en un solo dispositivo
  • Ofrece una API para especificar fácilmente layouts de sharding para paralelismo de datos y paralelismo de modelos

Modelos preentrenados

  • Ofrece una variedad de modelos preentrenados disponibles en Keras 3
  • Todos los modelos de Keras Applications y los modelos preentrenados de KerasCV y KerasNLP funcionan en todos los backends

Soporte para pipelines de datos cross-framework en todos los backends

  • Los modelos de Keras 3 pueden entrenarse usando diversos pipelines de datos, independientemente de si el backend es JAX, PyTorch o TensorFlow

Divulgación progresiva de la complejidad

  • La API de Keras sigue un principio de diseño que soporta distintos flujos de trabajo para diversos perfiles de usuario, desde flujos simples hasta personalización de bajo nivel

API sin estado

  • Todos los objetos con estado de Keras ahora tienen una API sin estado que puede usarse en funciones de JAX

Migración de Keras 2 a Keras 3

  • Keras 3 tiene un alto nivel de compatibilidad con Keras 2, y la mayoría de los usuarios pueden cambiarse a Keras 3 sin modificar código
  • Las bases de código más grandes podrían requerir algunos cambios, pero se proporciona una guía de migración completa para ayudar en el proceso
  • Si se desea seguir usando Keras 2, se puede usar el paquete tf_keras o establecer la variable de entorno TF_USE_LEGACY_KERAS para usar Keras 2

Opinión de GN⁺

Lo más importante de este artículo es el lanzamiento oficial de Keras 3.0 y las nuevas funciones que ofrece a los desarrolladores. Keras 3.0 funciona con diversos backends como JAX, TensorFlow y PyTorch, y mejora de forma importante la flexibilidad y la eficiencia del desarrollo de aprendizaje automático al reforzar las capacidades de entrenamiento y despliegue de modelos a gran escala. Estas características son una noticia muy interesante para la comunidad de machine learning y brindan a los desarrolladores la oportunidad de experimentar y desplegar modelos en entornos más diversos.

3 comentarios

 
cosine20 2023-12-05

Personalmente me gusta muchísimo Keras, así que me da muchísimo gusto que ahora también se pueda ejecutar usando PyTorch como backend.

 
imozart7 2023-11-30

Oh, así que anunciaron una nueva versión de Keras.

Yo solo he aprendido PyTorch,
pero eso de que "los modelos existentes de tf.keras también se pueden ejecutar directamente en JAX y PyTorch" me da curiosidad saber cómo se hace~

 
kuroneko 2023-11-29

Vaya, ya salió Keras 3. +_+
Ojalá que tanto el desarrollo como el entrenamiento de modelos se vuelvan un poco más fáciles.