TensorFlow Lite

TensorFlow Lite est un ensemble d'outils qui permet le machine learning sur l'appareil en aidant les développeurs à exécuter leurs modèles sur des appareils mobiles, intégrés et de périphérie.

Principales fonctionnalités

  • Optimisé pour le machine learning sur l'appareil, en tenant compte de cinq contraintes clés : la latence (pas d'aller-retour vers un serveur), la confidentialité (aucune donnée personnelle ne quitte l'appareil), la connectivité (la connectivité Internet n'est pas requise), la taille (taille réduite du modèle et binaire) et la consommation d'énergie (inférence efficace et manque de connexions réseau).
  • Compatibilité avec plusieurs plates-formes : appareils Android et iOS, Linux intégré et microcontrôleurs.
  • Compatibilité avec de nombreux langages, dont Java, Swift, Objective-C, C++ et Python.
  • Hautes performances avec accélération matérielle et optimisation du modèle

Workflow de développement

Le guide suivant décrit chaque étape du workflow et fournit des liens vers des instructions supplémentaires:

1. Générer un modèle TensorFlow Lite

Un modèle TensorFlow Lite est représenté dans un format portable efficace spécial, appelé FlatBuffers (identifié par l'extension de fichier .tflite). Cela offre plusieurs avantages par rapport au format de modèle de tampon de protocole de TensorFlow, tels qu'une taille réduite (empreinte de code réduite) et une inférence plus rapide (accès direct aux données sans étape d'analyse/décompression supplémentaire), ce qui permet à TensorFlow Lite de s'exécuter efficacement sur les appareils disposant de ressources de calcul et de mémoire limitées.

Un modèle TensorFlow Lite peut éventuellement inclure des métadonnées contenant une description de modèle lisible par un ordinateur et des données lisibles par un ordinateur pour la génération automatique de pipelines de prétraitement et de post-traitement lors de l'inférence sur l'appareil. Pour en savoir plus, consultez Ajouter des métadonnées.

Vous pouvez générer un modèle TensorFlow Lite de différentes manières:

  • Utiliser un modèle TensorFlow Lite existant:reportez-vous à la section Exemples TensorFlow Lite pour choisir un modèle existant. Les modèles peuvent ou non contenir des métadonnées.

  • Convertir un modèle TensorFlow en modèle TensorFlow Lite:utilisez le convertisseur TensorFlow Lite pour convertir un modèle TensorFlow en modèle TensorFlow Lite. Lors de la conversion, vous pouvez appliquer des optimisations telles que la quantification pour réduire la taille et la latence du modèle avec une perte de justesse minimale, voire aucune. Par défaut, tous les modèles ne contiennent pas de métadonnées.

2. Exécuter une inférence

L'inférence fait référence au processus d'exécution d'un modèle TensorFlow Lite sur l'appareil pour effectuer des prédictions à partir des données d'entrée. Vous pouvez exécuter des inférences des manières suivantes en fonction du type de modèle:

Sur les appareils Android et iOS, vous pouvez améliorer les performances à l'aide de l'accélération matérielle. Sur les deux plates-formes, vous pouvez utiliser un délégué de GPU. Sous iOS, vous pouvez utiliser le délégué de Core ML. Pour prendre en charge de nouveaux accélérateurs matériels, vous pouvez définir votre propre délégué.

Commencer

Consultez les guides suivants selon l'appareil que vous ciblez:

Contraintes techniques