Apprends à exporter un modèle YOLO26 au format TFLite Edge TPU#
Déployer des modèles de vision par ordinateur sur des appareils aux capacités de calcul limitées, tels que les systèmes mobiles ou embarqués, peut être complexe. Utiliser un format de modèle optimisé pour de meilleures performances simplifie le processus. Le format de modèle TensorFlow Lite Edge TPU, ou TFLite Edge TPU, est conçu pour consommer un minimum d'énergie tout en offrant de hautes performances pour les réseaux neuronaux.
La fonctionnalité d'exportation au format TFLite Edge TPU te permet d'optimiser tes modèles Ultralytics YOLO26 pour une inférence rapide et une faible consommation d'énergie. Dans ce guide, nous allons t'expliquer comment convertir tes modèles au format TFLite Edge TPU afin de faciliter leur exécution sur divers appareils mobiles et embarqués.
Pourquoi exporter vers TFLite Edge TPU ?#
Exporter des modèles vers TensorFlow Edge TPU rend les tâches d'apprentissage automatique rapides et efficaces. Cette technologie convient aux applications disposant de peu d'énergie, de ressources de calcul et de connectivité. L'Edge TPU est un accélérateur matériel de Google. Il accélère les modèles TensorFlow Lite sur les appareils en périphérie. L'image ci-dessous montre un exemple du processus utilisé.
L'Edge TPU fonctionne avec des modèles quantifiés. La quantification rend les modèles plus petits et plus rapides sans perte importante d'exactitude. Elle est idéale pour les ressources limitées de l'informatique en périphérie, car elle permet aux applications de répondre rapidement en réduisant la latence et en traitant rapidement les données localement, sans dépendre du cloud. Le traitement local contribue également à préserver la confidentialité et la sécurité des données utilisateur, puisqu'elles ne sont pas envoyées à un serveur distant.
Principales fonctionnalités de TFLite Edge TPU#
Voici les principales fonctionnalités qui font de TFLite Edge TPU un excellent choix de format de modèle pour les développeurs :
-
Performances optimisées sur les appareils en périphérie : TFLite Edge TPU offre de hautes performances pour les réseaux neuronaux grâce à la quantification, à l'optimisation des modèles, à l'accélération matérielle et à l'optimisation du compilateur. Son architecture minimaliste contribue à réduire sa taille et ses coûts.
-
Débit de calcul élevé : TFLite Edge TPU combine une accélération matérielle spécialisée et une exécution efficace à l'aide du moteur d'exécution pour atteindre un débit de calcul élevé. Il convient parfaitement au déploiement de modèles d'apprentissage automatique exigeant de hautes performances sur les appareils en périphérie.
-
Calculs matriciels efficaces : TensorFlow Edge TPU est optimisé pour les opérations matricielles, essentielles aux calculs des réseaux neuronaux. Cette efficacité est déterminante pour les modèles d'apprentissage automatique, notamment ceux qui nécessitent de nombreuses multiplications et transformations matricielles complexes.
Options de déploiement avec TFLite Edge TPU#
Avant d'aborder l'exportation de modèles YOLO26 au format TFLite Edge TPU, voyons où les modèles TFLite Edge TPU sont généralement utilisés.
TFLite Edge TPU offre plusieurs options de déploiement pour les modèles d'apprentissage automatique, notamment :
-
Déploiement sur l'appareil : les modèles TensorFlow Edge TPU peuvent être déployés directement sur des appareils mobiles et embarqués. Le déploiement sur l'appareil permet aux modèles de s'exécuter directement sur le matériel, sans nécessiter de connexion au cloud, soit en intégrant le modèle au bundle de l'application, soit en le téléchargeant à la demande.
-
Déploiement hybride : une approche hybride combine le déploiement sur l'appareil et dans le cloud, offrant une solution polyvalente et évolutive pour déployer des modèles d'apprentissage automatique. Ses avantages comprennent le traitement sur l'appareil pour des réponses rapides et le cloud computing pour les calculs plus complexes.
Tâches prises en charge#
L'exportation vers Edge TPU prend en charge six des sept tâches Ultralytics. La segmentation sémantique est disponible uniquement avec YOLO26, la seule famille qui fournit cette tête. L'estimation de profondeur n'est pas prise en charge, car son modèle INT8 émet un opérateur EXP v2 que le compilateur Edge TPU ne peut pas analyser.
| Tâche | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Détection | ✅ | ✅ | ✅ |
| Segmentation | ✅ | ✅ | ✅ |
| Sémantique | ❌ | ❌ | ✅ |
| Profondeur | ❌ | ❌ | ❌ |
| Classification | ✅ | ✅ | ✅ |
| Pose | ✅ | ✅ | ✅ |
| OBB | ✅ | ✅ | ✅ |
Le compilateur Edge TPU mappe les opérations qu'il prend en charge sur l'accélérateur et laisse les autres s'exécuter sur le CPU. La prise en charge d'une tâche ne signifie donc pas que toutes les opérations s'exécutent sur le TPU.
Exporter des modèles YOLO26 vers TFLite Edge TPU#
Tu peux étendre la compatibilité des modèles et la flexibilité du déploiement en convertissant les modèles YOLO26 vers TensorFlow Edge TPU.
Installation#
Pour installer le package requis, exécute :
# Install the required package for YOLO26
pip install ultralyticsPour obtenir des instructions détaillées et les bonnes pratiques relatives au processus d'installation, consulte notre guide d'installation Ultralytics. Si tu rencontres des difficultés lors de l'installation des packages requis pour YOLO26, consulte notre guide des problèmes courants pour trouver des solutions et des conseils.
Utilisation#
Tous les modèles Ultralytics YOLO26 sont conçus pour prendre en charge l’exportation directement, ce qui facilite leur intégration à ton workflow de déploiement préféré. Tu peux consulter la liste complète des formats d’exportation et des options de configuration pris en charge pour choisir la meilleure configuration pour ton application.
Le format TFLite Edge TPU prend en charge les modes Export, Predict et Validate. L'inférence et la validation s'exécutent sur du matériel Coral Edge TPU. Exporte ton modèle, puis charge le modèle exporté pour effectuer une inférence ou valider son exactitude.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TFLite Edge TPU format
model.export(format="edgetpu") # creates 'yolo26n_full_integer_quant_edgetpu.tflite'from ultralytics import YOLO
# Load the exported TFLite Edge TPU model
model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TFLite Edge TPU model
model = YOLO("yolo26n_full_integer_quant_edgetpu.tflite")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Arguments d'exportation#
| Argument | Type | Valeur par défaut | Description |
|---|---|---|---|
format | str | 'edgetpu' | Format cible du modèle exporté, définissant sa compatibilité avec différents environnements de déploiement. |
imgsz | int ou tuple | 640 | Taille d’image souhaitée pour l’entrée du modèle. Peut être un entier pour les images carrées ou un tuple (height, width) pour des dimensions spécifiques. |
quantize | int ou str | 8/auto | Précision de la quantification. 8 (INT8) est requis et activé automatiquement pour Edge TPU. Il compresse le modèle et accélère l'inférence, avec une perte minimale d'exactitude sur les appareils en périphérie. Remplace les indicateurs obsolètes half/int8. |
opset | int | None | Spécifie la version de l’opset ONNX pour le graphe ONNX intermédiaire. Si elle n’est pas définie, la dernière version prise en charge est utilisée. |
data | str | None | Chemin vers le fichier YAML du jeu de données, essentiel pour la quantification ; la classification accepte plutôt un répertoire de jeu de données ou le nom d’un jeu de données intégré. Si ce chemin est omis avec quantize=8, Ultralytics sélectionne le jeu de données de calibration par défaut pour la tâche du modèle. |
fraction | float, int ou list | 1.0 | Sous-ensemble de calibration sous forme de ratio, de nombre d’images ou de ratios/nombres [train, val, test]. Les listes de deux éléments laissent test complet, tandis que 0 l’ignore. |
device | str | None | Spécifie l'appareil utilisé pour l'exportation : CPU (device=cpu). |
Assure-toi d'utiliser une machine Linux x86 lors de l'exportation vers Edge TPU.
Pour plus de détails sur le processus d’exportation, consulte la page de la documentation Ultralytics consacrée à l’exportation.
Déployer les modèles YOLO26 TFLite Edge TPU exportés#
Après avoir exporté tes modèles Ultralytics YOLO26 au format TFLite Edge TPU, tu peux maintenant les déployer. La première étape recommandée pour exécuter un modèle TFLite Edge TPU consiste à utiliser la méthode YOLO("model_edgetpu.tflite"), comme indiqué dans l'extrait de code d'utilisation précédent.
Toutefois, pour obtenir des instructions détaillées sur le déploiement de tes modèles TFLite Edge TPU, consulte les ressources suivantes :
-
Coral Edge TPU sur un Raspberry Pi avec Ultralytics YOLO26 : découvre comment intégrer des Coral Edge TPU à un Raspberry Pi pour améliorer les capacités d'apprentissage automatique.
-
Exemples de code : accède à des exemples pratiques de déploiement TensorFlow Edge TPU pour démarrer tes projets.
-
Exécuter une inférence sur l'Edge TPU avec Python : découvre comment utiliser l'API Python TensorFlow Lite pour les applications Edge TPU, notamment les instructions de configuration et d'utilisation.
Résumé#
Dans ce guide, nous avons appris à exporter des modèles Ultralytics YOLO26 au format TFLite Edge TPU. En suivant les étapes ci-dessus, tu peux augmenter la vitesse et réduire la consommation d'énergie de tes applications de vision par ordinateur.
Pour plus de détails sur l'utilisation, visite le site Web officiel de Coral Edge TPU.
Pour plus d'informations sur les autres intégrations Ultralytics YOLO26, consulte également notre page du guide des intégrations. Tu y trouveras des ressources et des informations utiles.
FAQ#
L'exportation de modèles YOLO26 vers TFLite Edge TPU offre plusieurs avantages :
- Performances optimisées : obtiens de hautes performances pour les réseaux neuronaux avec une consommation d'énergie minimale.
- Latence réduite : traitement rapide des données en local, sans dépendre du cloud.
- Confidentialité renforcée : le traitement local préserve la confidentialité et la sécurité des données utilisateur.
Cela en fait une solution idéale pour les applications d'informatique en périphérie, où les appareils disposent de peu d'énergie et de ressources de calcul. En savoir plus sur les raisons d'exporter.
Oui, les modèles TensorFlow Lite Edge TPU peuvent être déployés directement sur des appareils mobiles et embarqués. Cette approche permet aux modèles de s'exécuter directement sur le matériel, offrant une inférence plus rapide et plus efficace. Pour voir des exemples d'intégration, consulte notre guide sur le déploiement de Coral Edge TPU sur Raspberry Pi.
Les cas d'utilisation courants des modèles TFLite Edge TPU comprennent :
- Caméras intelligentes : amélioration de l'analyse des images et des vidéos en temps réel.
- Appareils IoT : activation de la domotique et de l'automatisation industrielle.
- Santé : accélération de l'imagerie médicale et du diagnostic.
- Commerce de détail : amélioration de la gestion des stocks et de l'analyse du comportement des clients.
Ces applications bénéficient des hautes performances et de la faible consommation d'énergie des modèles TFLite Edge TPU. Découvre-en plus sur les scénarios d'utilisation.
Si tu rencontres des problèmes lors de l'exportation ou du déploiement de modèles TFLite Edge TPU, consulte notre guide des problèmes courants pour obtenir des conseils de dépannage. Ce guide couvre les problèmes courants et leurs solutions afin de t'aider à garantir un fonctionnement fluide. Pour obtenir une assistance supplémentaire, consulte notre Centre d'aide.
Pour exporter un modèle YOLO26 au format TFLite Edge TPU, tu peux suivre les étapes suivantes :
Pour obtenir tous les détails sur l'exportation de modèles vers d'autres formats, consulte notre guide sur l'exportation.