IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Mobile : Google annonce la Developer Preview de TensorFlow Lite
Une version allégée et multiplateforme de sa bibliothèque d'apprentissage automatique

Le , par Stéphane le calme

344PARTAGES

6  0 
Google a annoncé la disponibilité de la préversion développeur de TensorFlow Lite, une version de la bibliothèque open source TensorFlow de Google, principalement utilisée pour les applications d'apprentissage automatique. TensorFlow Lite a d'abord été annoncé par Dave Burke, vice-président de l'ingénierie d'Android, durant l’édition 2017 de la conférence Google I/O dédiée aux développeurs.

Dans un billet de blog, l’entreprise explique que « TensorFlow Lite est la solution légère de TensorFlow pour les appareils mobiles et embarqués. Elle permet une inférence d'apprentissage machine sur l'appareil avec une faible latence et une petite taille binaire. TensorFlow Lite prend également en charge l'accélération matérielle avec l'API Android Neural Networks. »

L'idée sous-jacente est de permettre aux développeurs de créer des applications qui utiliseraient les fonctionnalités d'apprentissage automatique sur les appareils de la même manière que Google avec Android. Cependant, TensorFlow Lite a été conçu pour être multiplateforme, ce qui signifie que les développeurs peuvent créer des applications pour iOS et Android. TensorFlow Lite présente un faible encombrement de la mémoire pour tirer le moins de ressources possible ; un atout si les développeurs tombent sur des appareils mobiles avec des ressources limitées.

TensorFlow Lite est considéré comme le successeur de TensorFlow Mobile, mais compte tenu de l'état du fait qu’il est encore en stade de préversion, TensorFlow Mobile demeure le choix le plus indiqué pour les applications stables. Pour rappel, TensorFlow Mobile permet aux développeurs d'intégrer des modèles TensorFlow qui fonctionnent dans un environnement de bureau, sur des appareils mobiles. Cependant, les applications créées avec TensorFlow Lite seront plus légères et plus rapides que les applications similaires utilisant TensorFlow Mobile. Bien entendu, pour le moment tous les cas d'utilisation ne sont pas encore supportés par TensorFlow Lite.

D’ailleurs, parlant de TensorFlow Mobile, l’équipe a indiqué que « Comme vous le savez, TensorFlow prend déjà en charge le déploiement mobile et embarqué de modèles via l'API TensorFlow Mobile. À l'avenir, TensorFlow Lite devrait être considéré comme l'évolution de TensorFlow Mobile, et au fur et à mesure de sa maturité, il deviendra la solution recommandée pour le déploiement de modèles sur des périphériques mobiles et embarqués. »

Et d’ajouter que « La portée de TensorFlow Lite est grande et toujours en développement actif. Avec cette préversion développeur, nous avons intentionnellement commencé avec une plateforme disposant de contrainte pour assurer la performance sur certains des modèles les plus courants. Nous prévoyons de prioriser l'expansion fonctionnelle future en fonction des besoins de nos utilisateurs. Les objectifs de notre développement continu sont de simplifier l'expérience des développeurs et de permettre le déploiement de modèles pour une gamme de périphériques mobiles et embarqués. »

Google garantit que TensorFlow Lite prend déjà en charge un certain nombre de modèles qui ont été entraînés et optimisés pour mobile
  • Inception V3, un modèle populaire pour détecter les objets dominants présents dans une image ;
  • MobileNets, une famille de modèles de vision par ordinateur conçus pour optimiser efficacement la précision tout en tenant compte des ressources limitées d'une application. Ce sont de petits modèles à faible latence, qui nécessitent de faibles puissances pour répondre aux contraintes de ressources d'une variété de cas d'utilisation. Ils peuvent être utilisés pour la classification, la détection, l'intégration et la segmentation. Les modèles MobileNet sont plus petits, mais moins précis que Inception V3 ;
  • On Device Smart Reply, un modèle sur l'appareil qui fournit des réponses à un message texte entrant en suggérant des messages contextuellement pertinents. Google avance que le modèle a été spécialement conçu pour les appareils à mémoire restreinte tels que les montres et les téléphones. Il a été utilisé avec succès pour faire apparaître des réponses intelligentes sur Android Wear à toutes les applications tierces et de première partie.

Bien que vous puissiez traiter de nouvelles données sur le périphérique via des applications basées sur TensorFlow Lite, à ce stade, il n'est pas possible de former de nouveaux modèles d'apprentissage automatique sur l'appareil lui-même. Dans sa forme actuelle, TensorFlow Lite prend en charge l'inférence et non l'entraînement.


Ci-dessus l’architecture TensorFlow Lite dont voici les composants individuels :
  • modèle TensorFlow : un modèle TensorFlow entraîné enregistré sur le disque ;
  • TensorFlow Lite Converter : un programme qui convertit le modèle au format de fichier TensorFlow Lite ;
  • fichier modèle TensorFlow Lite : format de fichier modèle basé sur FlatBuffers, optimisé pour une vitesse maximale et une taille minimale.

Le fichier de modèle TensorFlow Lite est ensuite déployé dans une application mobile, où nous avons :
  • Java API : un wrapper pratique autour de l'API C ++ sur Android
  • API C ++: qui charge le fichier modèle TensorFlow Lite et appelle l'interpréteur. La même bibliothèque est disponible sur Android et iOS ;
  • Interprète : exécute le modèle en utilisant un ensemble d'opérateurs. L'interprète prend en charge le chargement sélectif de l'opérateur ; sans opérateurs, il ne s'agit que de 70 Ko, mais une fois tous les opérateurs chargés il pèse 300 Ko. C'est une réduction significative par rapport aux 1,5 M requis par TensorFlow Mobile (avec un ensemble normal d'opérateurs) ;
  • sur certains appareils Android, l'interpréteur utilise l'API Android Neural Networks pour l'accélération matérielle ou l'exécution par défaut de l'unité centrale si aucune n'est disponible.

Source : blog développeurs Google, introduction à TensorFlow Lite

Une erreur dans cette actualité ? Signalez-nous-la !