02/10/2019

TensorFlow 2.0 est disponible

logo TensorFlow 2.0

La nouvelle version du framework open source veut faciliter le développement d’applications pour les développeurs Python et met la bibliothèque Keras au centre de la solution.

Google a annoncé la disponibilité générale de TensorFlow 2.0 en version stable. Les multiples changements embarqués dans TensorFlow 2.0 visent à rendre les utilisateurs de TensorFlow plus productifs en supprimant les API redondantes, rendant les API plus cohérentes. Il s’intègre aussi mieux avec l’environnement d’exécution Python Eager. Selon l’équipe de développement, les performances d’entraînement du framework sont jusqu’à trois fois plus rapide.

Un framework mature

Pour rappel, TensorFlow (TF) est une bibliothèque d’apprentissage automatique open source créée par Google et publiée pour la première fois en novembre 2015. La version 1.0 de TensorFlow, publiée en février 2017 avec plus de performances offrait la compatibilité avec les langages Java et Go. Cette version était mue par un compilateur spécial pour les graphes baptisé XLA (Accelerated Linear Algebra) dont les performances pouvaient être améliorées selon Google.

Au-delà du nettoyage des APIs, TensorFlow 2.0 fournit Keras, une autre bibliothèque populaire de réseaux de neurones de haut niveau, en tant qu’API centrale de haut niveau utilisée pour construire et former les modèles. Keras fournit ainsi plusieurs API de modélisation telles que Sequential, Functional et Subclassing avec une exécution rapide, pour une itération immédiate et un débogage intuitif, et tf.data, pour construire des pipelines d’entrée évolutifs. En clair Keras devient le centre de Tensor Flow. Maintenant intégrée sur le code TensorFlow brut, Keras permettra d’apporter aux développeurs beaucoup plus de productivité dans le domaine de l’apprentissage automatique et de l’IA.

Google ajoute dans son annonce :  « Avec une intégration étroite de Keras dans TensorFlow et l’exécution de fonctions Pythonic, TensorFlow 2.0 rend l’expérience du développement d’applications aussi familière que possible aux développeurs Python ».

Variété des environnements d’exécution

L’équipe de développement de la bibliothèque a adopté le format de fichier SavedModel pour cette nouvelle version. Ainsi, il est possible d’exécuter les modèles sur une variété de temps d’exécution, y compris le nuage, le Web, les navigateurs, Node.js, les systèmes mobiles et embarqués. Cela permet d’exécuter les modèles avec TensorFlow, de les déployer avec TensorFlow Serving, de les utiliser sur des systèmes mobiles et embarqués avec TensorFlow, etc. Par ailleurs, TensorFlow 2.0 offre de nombreuses améliorations de performances sur différents GPU.

Amélioration des performances

TensorFlow 2.0 est étroitement intégré à TensorRT et utilise une API améliorée pour offrir une meilleure convivialité et de hautes performances lors de l’inférence sur les GPU NVIDIA T4 Cloud sur Google Cloud.

« L’apprentissage automatique sur les GPU et les systèmes NVIDIA permet aux développeurs de résoudre des problèmes qui semblaient impossibles il y a quelques années seulement […] TensorFlow 2.0 regorge de nombreuses fonctions d’accélération GPU et nous avons hâte de voir les incroyables applications AI que la communauté créera avec ces outils mis à jour », a déclaré Kari Briski, directeur principal de la gestion des produits de logiciel d’informatique accélérée chez NVIDIA.

Traduction du Python

TensorFlow 2.0 fournit un écosystème complet d’outils pour les développeurs, les entreprises et les chercheurs qui veulent pousser l’état de l’art dans l’apprentissage automatique et construire des applications ML évolutives. Notamment, AutoGraph traduit le flux de contrôle Python en expressions TensorFlow, permettant aux utilisateurs d’écrire du code Python régulier à l’intérieur des fonctions décorées avec tf.function. AutoGraph est également appliqué aux fonctions utilisées avec les API tf.data, tf.distribute et tf.keras.

Source : hype.codes

Actualités