Le convertisseur TensorFlow Lite permet de convertir des modèles TensorFlow dans un format FlatBuffer optimisé afin qu'ils puissent être utilisés par l'interpréteur TensorFlow Lite.
FlatBuffers
FlatBuffers est une bibliothèque de sérialisation multiplate-forme Open Source efficace. Elle est semblable aux tampons de protocole, à la différence qu'aucune étape d'analyse ou de décompression n'est requise pour une représentation secondaire avant l'accès aux données, ce qui permet d'éviter l'allocation de mémoire par objet. L'empreinte du code de FlatBuffers est d'un ordre de magnitude inférieur à celui des tampons de protocole.
De l'entraînement de modèle au déploiement sur l'appareil
Le convertisseur TensorFlow Lite génère un fichier FlatBuffer TensorFlow Lite (.tflite
) à partir d'un modèle TensorFlow.
Ce convertisseur est compatible avec les formats d'entrée suivants :
- SavedModel
GraphDef
figé : modèles générés par freeze_graph.py.- Modèles HDF5
tf.keras
. - Tout modèle issu de
tf.Session
(API Python uniquement).
Le fichier TensorFlow Lite FlatBuffer
est ensuite déployé sur un appareil client et l'interpréteur TensorFlow Lite utilise le modèle compressé pour l'inférence sur l'appareil. Ce processus de conversion est illustré dans le diagramme ci-dessous :
Options
Le convertisseur TensorFlow Lite peut être utilisé à partir de l'une des deux options suivantes :
- Python (recommandé) : l'utilisation de l'API Python facilite la conversion de modèles dans le cadre d'un pipeline de développement de modèles et permet de réduire les problèmes de compatibilité dès le début.
- Ligne de commande