Skip to content

Apprends à exporter au format TFLite Edge TPU à partir du modèle YOLOv8

Le déploiement de modèles de vision par ordinateur sur des appareils dont la puissance de calcul est limitée, tels que les systèmes mobiles ou embarqués, peut s'avérer délicat. L'utilisation d'un format de modèle optimisé pour des performances plus rapides 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 des performances rapides pour les réseaux neuronaux.

La fonction d'exportation au format TFLite Edge TPU te permet d'optimiser tes modèles pour les conférences à haute vitesse et à faible consommation d'énergie. Ultralytics YOLOv8 modèles pour l'inférence à haute vitesse et à faible consommation d'énergie. Dans ce guide, nous t'aiderons à convertir tes modèles au format TFLite Edge TPU , ce qui permettra à tes modèles de fonctionner plus facilement sur divers appareils mobiles et embarqués.

Pourquoi exporter vers TFLite Edge TPU?

L'exportation de modèles vers TensorFlow Edge TPU rend les tâches d'apprentissage automatique rapides et efficaces. Cette technologie convient aux applications dont la puissance, les ressources informatiques et la connectivité sont limitées. Le Edge TPU est un accélérateur matériel de Google. Il accélère les modèles TensorFlow Lite sur les appareils périphériques. L'image ci-dessous montre un exemple du processus impliqué.

TFLite Edge TPU

The Edge TPU fonctionne avec des modèles quantifiés. La quantification rend les modèles plus petits et plus rapides sans perdre beaucoup de précision. Elle est idéale pour les ressources limitées de l'edge computing, permettant aux applications de réagir rapidement en réduisant la latence et en permettant un traitement rapide des données au niveau local, sans dépendance vis-à-vis du cloud. Le traitement local permet également de préserver la confidentialité et la sécurité des données de l'utilisateur puisqu'elles ne sont pas envoyées à un serveur distant.

Caractéristiques principales de TFLite Edge TPU

Voici les principales caractéristiques qui font de TFLite Edge TPU un excellent choix de format de modèle pour les développeurs :

  • Performances optimisĂ©es sur les appareils Edge: Le TFLite Edge TPU permet d'obtenir des performances de rĂ©seau neuronal Ă  grande vitesse grâce Ă  la quantification, Ă  l'optimisation du modèle, Ă  l'accĂ©lĂ©ration matĂ©rielle et Ă  l'optimisation du compilateur. Son architecture minimaliste contribue Ă  sa taille rĂ©duite et Ă  sa rentabilitĂ©.

  • Haut dĂ©bit de calcul: TFLite Edge TPU combine une accĂ©lĂ©ration matĂ©rielle spĂ©cialisĂ©e et une exĂ©cution efficace pour atteindre un dĂ©bit de calcul Ă©levĂ©. Il est bien adaptĂ© au dĂ©ploiement de modèles d'apprentissage automatique avec des exigences strictes en matière de performances sur les appareils pĂ©riphĂ©riques.

  • Calculs matriciels efficaces: Le TensorFlow Edge TPU est optimisĂ© pour les opĂ©rations matricielles, qui sont cruciales pour les calculs des rĂ©seaux neuronaux. Cette efficacitĂ© est essentielle dans les modèles d'apprentissage automatique, en particulier ceux qui nĂ©cessitent des multiplications et des transformations matricielles nombreuses et complexes.

Options de déploiement avec TFLite Edge TPU

Avant de voir comment exporter les modèles YOLOv8 au format TFLite Edge TPU , nous allons comprendre où les modèles TFLite Edge TPU sont généralement utilisés.

TFLite Edge TPU propose différentes options de déploiement pour les modèles d'apprentissage automatique, notamment :

  • DĂ©ploiement sur les appareils: TensorFlow Les modèles Edge TPU peuvent ĂŞtre directement dĂ©ployĂ©s 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, ce qui Ă©limine le besoin de connectivitĂ© au nuage.

  • Informatique de pĂ©riphĂ©rie avec les TPU du nuage TensorFlow : Dans les scĂ©narios oĂą les appareils pĂ©riphĂ©riques ont des capacitĂ©s de traitement limitĂ©es, TensorFlow Edge TPUs peut dĂ©charger les tâches d'infĂ©rence sur des serveurs en nuage Ă©quipĂ©s de TPUs.

  • DĂ©ploiement hybride: Une approche hybride combine le dĂ©ploiement sur appareil et sur le cloud et offre une solution polyvalente et Ă©volutive pour le dĂ©ploiement de modèles d'apprentissage automatique. Les avantages comprennent le traitement sur appareil pour des rĂ©ponses rapides et le cloud computing pour des calculs plus complexes.

Exporter les modèles YOLOv8 vers TFLite Edge TPU

Tu peux étendre la compatibilité des modèles et la flexibilité du déploiement en convertissant les modèles YOLOv8 en TensorFlow Edge TPU.

Installation

Pour installer le paquetage requis, exécute :

Installation

# Install the required package for YOLOv8
pip install ultralytics

Pour des instructions détaillées et les meilleures pratiques liées au processus d'installation, consulte notre guide d'installationUltralytics . Pendant l'installation des paquets requis pour YOLOv8, si tu rencontres des difficultés, consulte notre guide des problèmes courants pour trouver des solutions et des conseils.

Utilisation

Avant de plonger dans les instructions d'utilisation, il est important de noter que si tous les modèlesUltralytics YOLOv8 sont disponibles pour l'exportation, tu peux t'assurer que le modèle que tu as choisi prend en charge la fonctionnalité d'exportation ici.

Utilisation

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolov8n_full_integer_quant_edgetpu.tflite’

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolov8n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to TFLite Edge TPU format
yolo export model=yolov8n.pt format=edgetpu  # creates 'yolov8n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolov8n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

Pour plus de détails sur les options d'exportation prises en charge, visite la page de documentationUltralytics sur les options de déploiement.

Déploiement des modèles exportés YOLOv8 TFLite Edge TPU

Après avoir exporté avec succès tes modèles Ultralytics YOLOv8 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 est d'utiliser la méthode YOLO("model_edgetpu.tflite"), comme indiqué dans l'extrait de code précédent.

Cependant, pour des instructions approfondies sur le déploiement de tes modèles TFLite Edge TPU , jette un coup d'œil aux ressources suivantes :

Résumé

Dans ce guide, nous avons appris à exporter les modèles Ultralytics YOLOv8 au format TFLite Edge TPU . En suivant les étapes mentionnées ci-dessus, tu peux augmenter la vitesse et la puissance de tes applications de vision par ordinateur.

Pour plus de détails sur l'utilisation, visite le site officiel de Edge TPU .

Aussi, pour plus d'informations sur d'autres intégrations de Ultralytics YOLOv8 , visite notre page de guide d'intégration. Tu y découvriras des ressources et des informations précieuses.



Créé le 2024-03-13, Mis à jour le 2024-05-18
Auteurs : glenn-jocher (1), Burhan-Q (1), abirami-vina (1)

Commentaires