- Annonce de la sortie officielle de Keras 3.0, après 5 mois de bêta publique
- Keras 3 est une réécriture complète permettant d’exécuter les workflows Keras sur JAX, TensorFlow et PyTorch
- Nouvelles fonctionnalités pour l’entraînement et le déploiement de modèles à grande échelle
Bienvenue dans le machine learning multi-framework
- Les avantages de Keras mettent l’accent sur une vitesse de développement élevée, l’expérience utilisateur, la conception de l’API et la facilité de débogage
- Framework éprouvé choisi par 2,5 millions de développeurs, il est utilisé dans des systèmes de ML à grande échelle comme les véhicules autonomes de Waymo et le moteur de recommandation de YouTube
- Keras 3 apporte aussi des avantages supplémentaires comme l’optimisation des performances des modèles, l’élargissement des options de l’écosystème de modèles, ainsi que la prise en charge du parallélisme de modèles à grande échelle et du parallélisme de données
L’API Keras 3 disponible sur JAX, TensorFlow et PyTorch
- Keras 3 implémente l’intégralité de l’API Keras et peut être utilisé avec TensorFlow, JAX et PyTorch
- Tout modèle Keras n’utilisant que des couches intégrées fonctionne immédiatement sur tous les backends pris en charge
- Les modèles
tf.kerasexistants peuvent également être exécutés directement sur JAX et PyTorch
Écriture de couches, modèles et métriques multi-framework
- Keras 3 permet de créer des composants (couches personnalisées, modèles préentraînés, etc.) qui fonctionnent de la même manière sur tous les backends
- L’espace de noms
keras.opsfournit une API NumPy compatible entre backends ainsi que des fonctions spécialisées pour les réseaux de neurones - Tant que l’on utilise uniquement
keras.ops, les couches personnalisées et les métriques fonctionnent avec le même code sur JAX, PyTorch et TensorFlow
Nouvelle API de distribution pour le parallélisme de données à grande échelle et le parallélisme de modèles
- Nouvelle API de distribution pour résoudre les problèmes de sharding des grands modèles
- Le modèle peut être écrit comme s’il s’exécutait sur un seul appareil, en séparant la définition du modèle, la logique d’entraînement et la configuration du sharding
- L’API permet de définir facilement des dispositions de sharding pour le parallélisme de données et le parallélisme de modèles
Modèles préentraînés
- Divers modèles préentraînés sont disponibles dans Keras 3
- Tous les modèles de Keras Applications ainsi que les modèles préentraînés de KerasCV et KerasNLP fonctionnent sur tous les backends
Prise en charge des pipelines de données cross-framework sur tous les backends
- Les modèles Keras 3 peuvent être entraînés à l’aide de divers pipelines de données, quel que soit le backend JAX, PyTorch ou TensorFlow
Divulgation progressive de la complexité
- L’API Keras suit un principe de conception qui prend en charge différents workflows, des plus simples jusqu’à la personnalisation de bas niveau, afin de convenir à divers profils d’utilisateurs
API sans état
- Tous les objets Keras avec état disposent désormais d’une API sans état utilisable dans les fonctions JAX
Passage de Keras 2 à Keras 3
- Keras 3 présente un haut niveau de compatibilité avec Keras 2, et la plupart des utilisateurs peuvent passer à Keras 3 sans modifier leur code
- Les bases de code plus importantes peuvent nécessiter quelques modifications, mais un guide de migration complet est fourni pour faciliter la transition
- Si vous souhaitez continuer à utiliser Keras 2, vous pouvez utiliser le package
tf_kerasou définir la variable d’environnementTF_USE_LEGACY_KERAS
L’avis de GN⁺
Le point le plus important de cet article est la sortie officielle de Keras 3.0 et les nouvelles fonctionnalités qu’elle apporte aux développeurs. Keras 3.0 fonctionne sur divers backends comme JAX, TensorFlow et PyTorch, et améliore fortement la flexibilité et l’efficacité du développement en machine learning grâce à de meilleures capacités d’entraînement et de déploiement pour les grands modèles. Ces caractéristiques constituent une nouvelle très intéressante pour la communauté du machine learning et offrent aux développeurs l’occasion d’expérimenter et de déployer des modèles dans des environnements encore plus variés.
3 commentaires
Personnellement, j’aime vraiment beaucoup Keras, donc je suis ravi qu’il soit désormais possible de l’utiliser avec PyTorch comme backend.
Oh, une nouvelle version de Keras a été annoncée.
Je n'ai appris que PyTorch,
mais comme il est dit que les modèles
tf.kerasexistants peuvent aussi être exécutés directement sur JAX et PyTorch, je me demande bien comment cela fonctionne~Oh, Keras 3 est sorti. +_+
J’espère que le développement comme l’entraînement des modèles deviendront un peu plus simples.