Skip to content

Compréhension YOLOv8Options de déploiement de

Introduction

Vous avez parcouru un long chemin avec YOLOv8. Vous avez collecté des données avec diligence, les avez méticuleusement annotées et avez consacré des heures à la formation et à l’évaluation rigoureuse de votre personnalisé YOLOv8 modèle. Il est maintenant temps de mettre votre modèle au service de votre application, de votre cas d’utilisation ou de votre projet. Mais il y a une décision cruciale qui se présente à vous : comment exporter et déployer efficacement votre modèle.

Ce guide vous guide tout au long de YOLOv8et les facteurs essentiels Ă  prendre en compte pour choisir la bonne option pour votre projet.

Comment choisir la bonne option de déploiement pour ton modèle YOLOv8

Lorsqu'il est temps de déployer ton modèle YOLOv8 , le choix d'un format d'exportation approprié est très important. Comme indiqué dans la documentationUltralytics YOLOv8 Modes, la fonction model.export() permet de convertir ton modèle formé en une variété de formats adaptés à divers environnements et exigences de performance.

Le format idéal dépend du contexte opérationnel prévu pour ton modèle, en équilibrant la vitesse, les contraintes matérielles et la facilité d'intégration. Dans la section suivante, nous examinerons de plus près chaque option d'exportation, en comprenant quand choisir chacune d'entre elles.

YOLOv8Options de déploiement de

Passons en revue les différentes options de déploiement de YOLOv8 . Pour une présentation détaillée du processus d'exportation, visite la page de documentationUltralytics sur l'exportation.

PyTorch

PyTorch est une bibliothèque d'apprentissage automatique open-source largement utilisée pour les applications d'apprentissage profond et d'intelligence artificielle. Elle offre un haut niveau de flexibilité et de rapidité, ce qui en a fait l'une des préférées des chercheurs et des développeurs.

  • Benchmarks de performance: PyTorch est connu pour sa facilitĂ© d'utilisation et sa flexibilitĂ©, ce qui peut entraĂ®ner un lĂ©ger compromis en termes de performance brute par rapport Ă  d'autres frameworks qui sont plus spĂ©cialisĂ©s et optimisĂ©s.

  • CompatibilitĂ© et intĂ©gration: Offre une excellente compatibilitĂ© avec diverses bibliothèques de science des donnĂ©es et d'apprentissage automatique sur Python.

  • Soutien de la communautĂ© et Ă©cosystème: L'une des communautĂ©s les plus dynamiques, avec des ressources Ă©tendues pour l'apprentissage et le dĂ©pannage.

  • Études de cas: Couramment utilisĂ©s dans les prototypes de recherche, de nombreux articles acadĂ©miques font rĂ©fĂ©rence Ă  des modèles dĂ©ployĂ©s sur PyTorch.

  • Maintenance et mises Ă  jour: Mises Ă  jour rĂ©gulières avec dĂ©veloppement actif et soutien pour les nouvelles fonctionnalitĂ©s.

  • ConsidĂ©rations de sĂ©curitĂ©: Des correctifs rĂ©guliers pour les problèmes de sĂ©curitĂ©, mais la sĂ©curitĂ© dĂ©pend largement de l'environnement global dans lequel il est dĂ©ployĂ©.

  • AccĂ©lĂ©ration matĂ©rielle: Prend en charge CUDA pour l'accĂ©lĂ©ration de GPU , essentielle pour accĂ©lĂ©rer la formation et l'infĂ©rence des modèles.

TorchScript

TorchScript S' étend PyTorchen permettant l’exportation de modèles à exécuter dans un environnement d’exécution C++. Cela le rend adapté aux environnements de production où Python n’est pas disponible.

  • Repères de performance: Peut offrir des performances amĂ©liorĂ©es par rapport au site natif PyTorch, en particulier dans les environnements de production.

  • CompatibilitĂ© et intĂ©gration: Conçu pour une transition transparente entre PyTorch et les environnements de production C++, bien que certaines fonctions avancĂ©es puissent ne pas ĂŞtre parfaitement transposĂ©es.

  • Soutien de la communautĂ© et Ă©cosystème: BĂ©nĂ©ficie de la grande communautĂ© de PyTorch mais a un champ d'action plus restreint de dĂ©veloppeurs spĂ©cialisĂ©s.

  • Études de cas: Largement utilisĂ© dans les environnements industriels oĂą les frais gĂ©nĂ©raux de performance de Python sont un goulot d'Ă©tranglement.

  • Maintenance et mises Ă  jour: Maintenu aux cĂ´tĂ©s de PyTorch avec des mises Ă  jour rĂ©gulières.

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: Offre une sĂ©curitĂ© amĂ©liorĂ©e en permettant l'exĂ©cution de modèles dans des environnements sans installation complète de Python .

  • AccĂ©lĂ©ration matĂ©rielle: HĂ©rite de la prise en charge de CUDA par PyTorch, garantissant une utilisation efficace de GPU .

ONNX

L'Open Neural Network Exchange (ONNX) est un format qui permet l'interopérabilité des modèles entre différents cadres, ce qui peut s'avérer essentiel lors du déploiement sur diverses plateformes.

  • Repères de performance: les modèles ONNX peuvent avoir des performances variables en fonction de la durĂ©e d'exĂ©cution spĂ©cifique sur laquelle ils sont dĂ©ployĂ©s.

  • CompatibilitĂ© et intĂ©gration: Grande interopĂ©rabilitĂ© sur plusieurs plateformes et matĂ©riels grâce Ă  sa nature agnostique.

  • Soutien de la communautĂ© et Ă©cosystème: Soutenu par de nombreuses organisations, ce qui conduit Ă  un large Ă©cosystème et Ă  une variĂ©tĂ© d'outils pour l'optimisation.

  • Études de cas: FrĂ©quemment utilisĂ© pour dĂ©placer des modèles entre diffĂ©rents cadres d'apprentissage automatique, ce qui dĂ©montre sa flexibilitĂ©.

  • Maintenance et mises Ă  jour: En tant que norme ouverte, ONNX est rĂ©gulièrement mis Ă  jour pour prendre en charge de nouvelles opĂ©rations et de nouveaux modèles.

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: Comme pour tout outil multiplateforme, il est essentiel d'assurer des pratiques sĂ©curisĂ©es dans le pipeline de conversion et de dĂ©ploiement.

  • AccĂ©lĂ©ration matĂ©rielle: Avec ONNX Runtime, les modèles peuvent tirer parti de diverses optimisations matĂ©rielles.

OpenVINO

OpenVINO est une boîte à outils Intel conçue pour faciliter le déploiement de modèles d'apprentissage profond sur le matériel Intel , en améliorant les performances et la vitesse.

  • Repères de performance: SpĂ©cifiquement optimisĂ© pour les CPU, GPU et VPU Intel , offrant des augmentations de performance significatives sur le matĂ©riel compatible.

  • CompatibilitĂ© et intĂ©gration: Fonctionne mieux au sein de l'Ă©cosystème Intel mais prend Ă©galement en charge une sĂ©rie d'autres plateformes.

  • Soutien de la communautĂ© et Ă©cosystème: Soutenu par Intel, avec une base d'utilisateurs solide, en particulier dans le domaine de la vision par ordinateur.

  • Études de cas: Souvent utilisĂ© dans les scĂ©narios IoT et d'informatique pĂ©riphĂ©rique oĂą le matĂ©riel Intel est rĂ©pandu.

  • Maintenance et mises Ă  jour: Intel met rĂ©gulièrement Ă  jour OpenVINO pour prendre en charge les derniers modèles de deep learning et le matĂ©riel Intel .

  • ConsidĂ©rations sur la sĂ©curitĂ©: Fournit des fonctions de sĂ©curitĂ© robustes adaptĂ©es au dĂ©ploiement dans des applications sensibles.

  • AccĂ©lĂ©ration matĂ©rielle: AdaptĂ© Ă  l'accĂ©lĂ©ration sur le matĂ©riel Intel , en tirant parti de jeux d'instructions et de fonctions matĂ©rielles dĂ©diĂ©s.

Pour plus de détails sur le déploiement à l'aide de OpenVINO, voir la documentation sur l'intégration Ultralytics : Intel OpenVINO Exporter.

TensorRT

TensorRT est un optimiseur d'inférence d'apprentissage profond haute performance et un runtime de NVIDIA, idéal pour les applications nécessitant rapidité et efficacité.

  • Repères de performance: Offre des performances de premier ordre sur les GPU NVIDIA avec la prise en charge de l'infĂ©rence Ă  grande vitesse.

  • CompatibilitĂ© et intĂ©gration: Convient mieux au matĂ©riel NVIDIA , avec un soutien limitĂ© en dehors de cet environnement.

  • Soutien de la communautĂ© et Ă©cosystème: Un rĂ©seau de soutien solide grâce aux forums de dĂ©veloppeurs et Ă  la documentation de NVIDIA.

  • Études de cas: Largement adoptĂ© dans les industries nĂ©cessitant une infĂ©rence en temps rĂ©el sur les donnĂ©es vidĂ©o et les images.

  • Maintenance et mises Ă  jour: NVIDIA maintient TensorRT avec des mises Ă  jour frĂ©quentes pour amĂ©liorer les performances et prendre en charge les nouvelles architectures GPU .

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: Comme de nombreux produits NVIDIA , il met fortement l'accent sur la sĂ©curitĂ©, mais les spĂ©cificitĂ©s dĂ©pendent de l'environnement de dĂ©ploiement.

  • AccĂ©lĂ©ration matĂ©rielle: Conçue exclusivement pour les GPU NVIDIA , elle offre une optimisation et une accĂ©lĂ©ration profondes.

CoreML

CoreML est le cadre d'apprentissage automatique d'Apple, optimisé pour les performances sur appareil dans l'écosystème Apple, notamment iOS, macOS, watchOS et tvOS.

  • Repères de performance: OptimisĂ© pour les performances sur l'appareil sur le matĂ©riel Apple avec une utilisation minimale de la batterie.

  • CompatibilitĂ© et intĂ©gration: Exclusivement pour l'Ă©cosystème d'Apple, offrant un flux de travail rationalisĂ© pour les applications iOS et macOS.

  • Soutien de la communautĂ© et Ă©cosystème: Un soutien solide de la part d'Apple et une communautĂ© de dĂ©veloppeurs dĂ©vouĂ©s, avec une documentation et des outils complets.

  • Études de cas: Couramment utilisĂ© dans les applications qui nĂ©cessitent des capacitĂ©s d'apprentissage automatique sur l'appareil sur les produits Apple.

  • Maintenance et mises Ă  jour: RĂ©gulièrement mis Ă  jour par Apple pour prendre en charge les dernières avancĂ©es en matière d'apprentissage automatique et le matĂ©riel Apple.

  • ConsidĂ©rations sur la sĂ©curitĂ©: BĂ©nĂ©ficie de l'attention portĂ©e par Apple Ă  la confidentialitĂ© des utilisateurs et Ă  la sĂ©curitĂ© des donnĂ©es.

  • AccĂ©lĂ©ration matĂ©rielle: Tire pleinement parti du moteur neuronal d'Apple et de GPU pour accĂ©lĂ©rer les tâches d'apprentissage automatique.

TF SavedModel

TF SavedModel est TensorFlowpour enregistrer et servir des modèles d’apprentissage automatique, particulièrement adapté aux environnements de serveurs évolutifs.

  • Repères de performance: Offre des performances Ă©volutives dans les environnements de serveurs, en particulier lorsqu'il est utilisĂ© avec TensorFlow Serving.

  • CompatibilitĂ© et intĂ©gration: Large compatibilitĂ© Ă  travers l'Ă©cosystème de TensorFlow's, y compris les dĂ©ploiements de serveurs en nuage et d'entreprise.

  • Soutien de la communautĂ© et Ă©cosystème: Large soutien de la communautĂ© en raison de la popularitĂ© de TensorFlow, avec une vaste gamme d'outils pour le dĂ©ploiement et l'optimisation.

  • Études de cas: Largement utilisĂ© dans des environnements de production pour servir des modèles d'apprentissage profond Ă  l'Ă©chelle.

  • Maintenance et mises Ă  jour: Soutenu par Google et la communautĂ© TensorFlow , assurant des mises Ă  jour rĂ©gulières et de nouvelles fonctionnalitĂ©s.

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: Le dĂ©ploiement Ă  l'aide de TensorFlow Serving comprend des fonctions de sĂ©curitĂ© robustes pour les applications d'entreprise.

  • AccĂ©lĂ©ration matĂ©rielle: Prend en charge diverses accĂ©lĂ©rations matĂ©rielles par l'intermĂ©diaire des serveurs de TensorFlow.

TF GraphDef

TF GraphDef est un format TensorFlow qui représente le modèle sous forme de graphe, ce qui est avantageux pour les environnements où un graphe de calcul statique est nécessaire.

  • Repères de performance: Fournit des performances stables pour les graphes de calcul statiques, en mettant l'accent sur la cohĂ©rence et la fiabilitĂ©.

  • CompatibilitĂ© et intĂ©gration: S'intègre facilement Ă  l'infrastructure de TensorFlow mais est moins flexible que SavedModel.

  • Soutien de la communautĂ© et Ă©cosystème: Bon soutien de l'Ă©cosystème de TensorFlow, avec de nombreuses ressources disponibles pour optimiser les graphes statiques.

  • Études de cas: Utile dans les scĂ©narios oĂą un graphique statique est nĂ©cessaire, comme dans certains systèmes embarquĂ©s.

  • Maintenance et mises Ă  jour: Mises Ă  jour rĂ©gulières en mĂŞme temps que les mises Ă  jour de base de TensorFlow.

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: Garantit un dĂ©ploiement sĂ»r grâce aux pratiques de sĂ©curitĂ© Ă©tablies sur TensorFlow.

  • AccĂ©lĂ©ration matĂ©rielle: Peut utiliser les options d'accĂ©lĂ©ration matĂ©rielle de TensorFlow, bien qu'elles ne soient pas aussi flexibles que SavedModel.

TF Lite

TF Lite est TensorFlowpour l’apprentissage automatique des appareils mobiles et embarqués, fournissant une bibliothèque légère pour l’inférence sur l’appareil.

  • Repères de performance: Conçus pour la vitesse et l'efficacitĂ© sur les appareils mobiles et embarquĂ©s.

  • CompatibilitĂ© et intĂ©gration: Peut ĂŞtre utilisĂ© sur une large gamme d'appareils grâce Ă  sa lĂ©gèretĂ©.

  • Soutien de la communautĂ© et Ă©cosystème: Soutenu par Google, il dispose d'une communautĂ© solide et d'un nombre croissant de ressources pour les dĂ©veloppeurs.

  • Études de cas: Populaire dans les applications mobiles qui nĂ©cessitent une infĂ©rence sur l'appareil avec un encombrement minimal.

  • Maintenance et mises Ă  jour: RĂ©gulièrement mis Ă  jour pour inclure les dernières fonctionnalitĂ©s et optimisations pour les appareils mobiles.

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: Fournit un environnement sĂ©curisĂ© pour l'exĂ©cution des modèles sur les appareils des utilisateurs finaux.

  • AccĂ©lĂ©ration matĂ©rielle: Prend en charge une variĂ©tĂ© d'options d'accĂ©lĂ©ration matĂ©rielle, y compris GPU et DSP.

TF Bord TPU

TF Edge TPU est conçu pour un calcul rapide et efficace sur le matériel Edge TPU de Google's, parfait pour les appareils IoT nécessitant un traitement en temps réel.

  • Repères de performance: SpĂ©cifiquement optimisĂ© pour des calculs rapides et efficaces sur le matĂ©riel Google's Edge TPU .

  • CompatibilitĂ© et intĂ©gration: Fonctionne exclusivement avec les modèles TensorFlow Lite sur les appareils Edge TPU .

  • Soutien de la communautĂ© et Ă©cosystème: Soutien croissant grâce aux ressources fournies par Google et les dĂ©veloppeurs tiers.

  • Études de cas: UtilisĂ© dans les appareils IoT et les applications qui nĂ©cessitent un traitement en temps rĂ©el avec une faible latence.

  • Maintenance et mises Ă  jour: AmĂ©lioration continue pour tirer parti des capacitĂ©s des nouvelles versions du matĂ©riel Edge TPU .

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: S'intègre Ă  la sĂ©curitĂ© robuste de Google's pour les appareils IoT et de pĂ©riphĂ©rie.

  • AccĂ©lĂ©ration matĂ©rielle: Conçu sur mesure pour tirer le meilleur parti des dispositifs Google Coral.

TF.js

TensorFlow.js (TF.js) est une bibliothèque qui apporte des capacités d'apprentissage automatique directement dans le navigateur, offrant ainsi un nouveau champ de possibilités aux développeurs web et aux utilisateurs. Elle permet d'intégrer des modèles d'apprentissage automatique dans les applications web sans avoir besoin d'une infrastructure dorsale.

  • Repères de performance: Permet l'apprentissage automatique directement dans le navigateur avec des performances raisonnables, en fonction de l'appareil client.

  • CompatibilitĂ© et intĂ©gration: Grande compatibilitĂ© avec les technologies web, permettant une intĂ©gration facile dans les applications web.

  • Soutien de la communautĂ© et Ă©cosystème: Soutien d'une communautĂ© de dĂ©veloppeurs web et Node.js, avec une variĂ©tĂ© d'outils pour dĂ©ployer des modèles ML dans les navigateurs.

  • Études de cas: IdĂ©al pour les applications web interactives qui bĂ©nĂ©ficient de l'apprentissage automatique cĂ´tĂ© client sans avoir besoin de traitement cĂ´tĂ© serveur.

  • Maintenance et mises Ă  jour: Maintenu par l'Ă©quipe de TensorFlow avec les contributions de la communautĂ© open-source.

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: S'exĂ©cute dans le contexte sĂ©curisĂ© du navigateur, en utilisant le modèle de sĂ©curitĂ© de la plateforme web.

  • AccĂ©lĂ©ration matĂ©rielle: Les performances peuvent ĂŞtre amĂ©liorĂ©es grâce Ă  des API basĂ©es sur le Web qui accèdent Ă  l'accĂ©lĂ©ration matĂ©rielle comme WebGL.

PaddlePaddle

PaddlePaddle est un cadre d'apprentissage profond open-source développé par Baidu. Il est conçu pour être à la fois efficace pour les chercheurs et facile à utiliser pour les développeurs. Il est particulièrement populaire en Chine et offre un support spécialisé pour le traitement de la langue chinoise.

  • Repères de performance: Offre des performances compĂ©titives en mettant l'accent sur la facilitĂ© d'utilisation et l'Ă©volutivitĂ©.

  • CompatibilitĂ© et intĂ©gration: Bien intĂ©grĂ© dans l'Ă©cosystème de Baidu et prend en charge un large Ă©ventail d'applications.

  • Soutien de la communautĂ© et Ă©cosystème: Bien que la communautĂ© soit plus petite Ă  l'Ă©chelle mondiale, elle se dĂ©veloppe rapidement, en particulier en Chine.

  • Études de cas: Couramment utilisĂ© sur les marchĂ©s chinois et par les dĂ©veloppeurs qui cherchent des alternatives aux autres frameworks majeurs.

  • Maintenance et mises Ă  jour: RĂ©gulièrement mis Ă  jour en mettant l'accent sur la desserte des applications et des services d'IA en langue chinoise.

  • ConsidĂ©rations sur la sĂ©curitĂ©: Met l'accent sur la confidentialitĂ© et la sĂ©curitĂ© des donnĂ©es, en respectant les normes chinoises en matière de gouvernance des donnĂ©es.

  • AccĂ©lĂ©ration matĂ©rielle: Prend en charge diverses accĂ©lĂ©rations matĂ©rielles, y compris les puces Kunlun de Baidu.

NCNN

NCNN est un cadre d'inférence de réseau neuronal très performant optimisé pour la plateforme mobile. Il se distingue par sa légèreté et son efficacité, ce qui le rend particulièrement adapté aux appareils mobiles et embarqués où les ressources sont limitées.

  • Repères de performance: hautement optimisĂ© pour les plateformes mobiles, offrant une infĂ©rence efficace sur les appareils basĂ©s sur ARM.

  • CompatibilitĂ© et intĂ©gration: Convient aux applications sur les tĂ©lĂ©phones mobiles et les systèmes embarquĂ©s avec l'architecture ARM.

  • Soutien de la communautĂ© et Ă©cosystème: Soutenu par une communautĂ© niche mais active qui se concentre sur les applications ML mobiles et embarquĂ©es.

  • Études de cas: PrivilĂ©giĂ© pour les applications mobiles oĂą l'efficacitĂ© et la vitesse sont essentielles sur Android et d'autres systèmes basĂ©s sur ARM.

  • Maintenance et mises Ă  jour: AmĂ©lioration continue pour maintenir des performances Ă©levĂ©es sur une gamme d'appareils ARM.

  • ConsidĂ©rations relatives Ă  la sĂ©curitĂ©: L'accent est mis sur l'exĂ©cution locale sur l'appareil, ce qui permet de tirer parti de la sĂ©curitĂ© inhĂ©rente au traitement sur l'appareil.

  • AccĂ©lĂ©ration matĂ©rielle: AdaptĂ© aux processeurs ARM et aux GPU, avec des optimisations spĂ©cifiques pour ces architectures.

Analyse comparative des options de déploiement de YOLOv8

Le tableau suivant donne un aperçu des différentes options de déploiement disponibles pour les modèles YOLOv8 , et t'aide à évaluer celle qui peut le mieux répondre aux besoins de ton projet en fonction de plusieurs critères essentiels. Pour un examen approfondi du format de chaque option de déploiement, tu peux consulter la page de documentation deUltralytics sur les formats d'exportation.

Option de déploiement Critères de performance Compatibilité et intégration Soutien communautaire et écosystème Études de cas Maintenance et mises à jour Considérations sur la sécurité Accélération matérielle
PyTorch Bonne flexibilité ; peut compromettre la performance brute Excellent avec les bibliothèques Python Ressources et communauté étendues Recherche et prototypes Développement régulier et actif Dépend de l'environnement de déploiement CUDA Prise en charge de l'accélération GPU
TorchScript Meilleur pour la production que PyTorch Transition en douceur de PyTorch à C++ Spécialisé mais plus étroit que PyTorch Industrie où Python est un goulot d'étranglement Mises à jour régulières avec PyTorch Une sécurité améliorée sans être complète Python Hérite du support CUDA de PyTorch
ONNX Variable en fonction de la durée d'exécution Haut dans les différents cadres de travail Vaste écosystème, soutenu par de nombreuses organisations Flexibilité à travers les cadres de ML Mises à jour régulières pour les nouvelles opérations Assurer des pratiques de conversion et de déploiement sécurisées. Diverses optimisations matérielles
OpenVINO Optimisé pour le matériel Intel Meilleur dans l'écosystème Intel Solide dans le domaine de la vision par ordinateur IoT et edge avec le matériel Intel Mises à jour régulières pour le matériel Intel Caractéristiques robustes pour les applications sensibles Conçu pour le matériel Intel
TensorRT Top-tier sur NVIDIA GPUs Le meilleur pour le matériel NVIDIA Un réseau solide grâce à NVIDIA Inférence vidéo et image en temps réel Mises à jour fréquentes pour les nouveaux GPU L'accent mis sur la sécurité Conçu pour les GPU NVIDIA
CoreML Optimisé pour le matériel Apple sur l'appareil Exclusif à l'écosystème Apple Soutien solide d'Apple et des développeurs ML on-device sur les produits Apple Mises à jour régulières d'Apple Priorité à la protection de la vie privée et à la sécurité Moteur neuronal Apple et GPU
TF SavedModel Évolutif dans les environnements de serveurs Large compatibilité dans l'écosystème TensorFlow Un soutien important grâce à la popularité de TensorFlow Servir des modèles à l'échelle Mises à jour régulières par Google et la communauté Fonctionnalités robustes pour l'entreprise Diverses accélérations matérielles
TF GraphDef Stable pour les graphes de calcul statiques S'intègre bien à l'infrastructure TensorFlow Ressources pour l'optimisation des graphes statiques Scénarios nécessitant des graphes statiques Mises à jour en même temps que TensorFlow core Pratiques de sécurité établies TensorFlow TensorFlow options d'accélération
TF Lite Vitesse et efficacité sur mobile/embedded Large gamme d'appareils pris en charge Communauté solide, Google soutenue Applications mobiles avec une empreinte minimale Dernières fonctionnalités pour les mobiles Environnement sécurisé sur les appareils des utilisateurs finaux GPU et DSP entre autres
TF Bord TPU Optimisé pour le matériel Google's Edge TPU Exclusif aux appareils Edge TPU Se développer grâce à Google et aux ressources tierces Appareils IoT nécessitant un traitement en temps réel. Améliorations pour le nouveau matériel Edge TPU GoogleLa sécurité robuste de l'IdO Conçu sur mesure pour Google Coral
TF.js Performances raisonnables dans le navigateur Haut niveau en technologies web Prise en charge des développeurs web et Node.js Applications web interactives TensorFlow contributions de l'équipe et de la communauté Modèle de sécurité de la plate-forme Web Amélioré avec WebGL et d'autres API
PaddlePaddle Compétitif, facile à utiliser et évolutif L'écosystème Baidu, un large support d'applications Croissance rapide, surtout en Chine Marché chinois et traitement de la langue Focus sur les applications chinoises de l'IA Met l'accent sur la confidentialité et la sécurité des données Y compris les puces Kunlun de Baidu
NCNN Optimisé pour les appareils mobiles basés sur la technologie ARM Systèmes ARM mobiles et embarqués Niche mais communauté ML mobile/embedded active Android et l'efficacité des systèmes ARM Maintenance haute performance sur ARM Avantages de la sécurité sur l'appareil Optimisations des processeurs ARM et des GPU

Cette analyse comparative te donne un aperçu de haut niveau. Pour le déploiement, il est essentiel de prendre en compte les exigences et les contraintes spécifiques de ton projet, et de consulter la documentation détaillée et les ressources disponibles pour chaque option.

Communauté et soutien

Lorsque tu commences à utiliser le site YOLOv8, le fait de pouvoir compter sur une communauté et un soutien utiles peut avoir un impact considérable. Voici comment entrer en contact avec d'autres personnes qui partagent tes intérêts et obtenir l'aide dont tu as besoin.

Engage-toi auprès de la communauté élargie

  • Discussions sur GitHub : Le dĂ©pĂ´t YOLOv8 sur GitHub possède une section "Discussions" oĂą tu peux poser des questions, signaler des problèmes et suggĂ©rer des amĂ©liorations.

  • Ultralytics Serveur Discord : Ultralytics dispose d'un serveur Discord oĂą tu peux interagir avec d'autres utilisateurs et dĂ©veloppeurs.

Documentation et ressources officielles

  • Ultralytics YOLOv8 Docs : La documentation officielle fournit une vue d'ensemble de YOLOv8, ainsi que des guides sur l'installation, l'utilisation et le dĂ©pannage.

Ces ressources t'aideront à relever les défis et à rester au courant des dernières tendances et des meilleures pratiques de la communauté YOLOv8 .

Conclusion

Dans ce guide, nous avons exploré les différentes options de déploiement pour YOLOv8. Nous avons également abordé les facteurs importants à prendre en compte pour faire ton choix. Ces options te permettent de personnaliser ton modèle en fonction de divers environnements et exigences de performance, ce qui le rend adapté aux applications du monde réel.

N'oublie pas que la communauté YOLOv8 et Ultralytics est une source d'aide précieuse. Connecte-toi avec d'autres développeurs et experts pour apprendre des astuces et des solutions uniques que tu ne trouveras peut-être pas dans la documentation habituelle. Continue à chercher des connaissances, à explorer de nouvelles idées et à partager tes expériences.

Bon déploiement !

FAQ

Quelles sont les options de déploiement disponibles pour YOLOv8 sur les différentes plates-formes matérielles ?

Ultralytics YOLOv8 prend en charge différents formats de déploiement, chacun étant conçu pour des environnements et des plates-formes matérielles spécifiques. Les principaux formats sont les suivants :

  • PyTorch pour la recherche et le prototypage, avec une excellente intĂ©gration sur Python .
  • TorchScript pour les environnements de production oĂą Python n'est pas disponible.
  • ONNX pour une compatibilitĂ© multiplateforme et une accĂ©lĂ©ration matĂ©rielle.
  • OpenVINO pour optimiser les performances sur le matĂ©riel Intel .
  • TensorRT pour une infĂ©rence rapide sur les GPU NVIDIA .

Chaque format présente des avantages uniques. Pour une présentation détaillée, consulte notre documentation sur les processus d'exportation.

Comment améliorer la vitesse d'inférence de mon modèle YOLOv8 sur Intel CPU ?

Pour améliorer la vitesse d'inférence sur les unités centrales Intel , tu peux déployer ton modèle YOLOv8 à l'aide de la boîte à outils OpenVINO de Intel. OpenVINO permet d'augmenter considérablement les performances en optimisant les modèles pour exploiter efficacement le matériel Intel .

  1. Convertis ton modèle YOLOv8 au format OpenVINO à l'aide de la fonction model.export() fonction.
  2. Suis le guide de configuration détaillé dans la documentationIntel OpenVINO Export.

Pour en savoir plus, consulte notre article de blog.

Puis-je déployer les modèles YOLOv8 sur des appareils mobiles ?

Oui, les modèles YOLOv8 peuvent être déployés sur des appareils mobiles en utilisant TensorFlow Lite (TF Lite) pour les plateformes Android et iOS . TF Lite est conçu pour les appareils mobiles et embarqués, et permet une inférence efficace sur l'appareil.

Exemple

# Export command for TFLite format
model.export(format="tflite")
# CLI command for TFLite export
yolo export --format tflite

Pour plus de détails sur le déploiement des modèles sur mobile, consulte notre guide d'intégrationTF Lite.

Quels facteurs dois-je prendre en compte lorsque je choisis un format de déploiement pour mon modèle YOLOv8 ?

Lorsque tu choisis un format de déploiement pour YOLOv8, tiens compte des facteurs suivants :

  • Performance: Certains formats comme TensorRT offrent des vitesses exceptionnelles sur les GPU NVIDIA , tandis que OpenVINO est optimisĂ© pour le matĂ©riel Intel .
  • CompatibilitĂ©: ONNX offre une large compatibilitĂ© entre les diffĂ©rentes plateformes.
  • FacilitĂ© d'intĂ©gration: Les formats tels que CoreML ou TF Lite sont adaptĂ©s Ă  des Ă©cosystèmes spĂ©cifiques tels que iOS et Android, respectivement.
  • Soutien de la communautĂ©: Les formats tels que PyTorch et TensorFlow disposent de ressources et d'un soutien communautaires Ă©tendus.

Pour une analyse comparative, reporte-toi Ă  notre documentation sur les formats d'exportation.

Comment puis-je déployer les modèles YOLOv8 dans une application Web ?

Pour déployer les modèles YOLOv8 dans une application web, tu peux utiliser TensorFlow.js (TF.js), qui permet d'exécuter des modèles d'apprentissage automatique directement dans le navigateur. Cette approche élimine le besoin d'une infrastructure dorsale et offre des performances en temps réel.

  1. Exporte le modèle YOLOv8 vers le format TF.js.
  2. Intègre le modèle exporté dans ton application web.

Pour obtenir des instructions étape par étape, reporte-toi à notre guide sur l'intégration deTensorFlow.js.



Créé le 2023-11-12, Mis à jour le 2024-07-05
Auteurs : glenn-jocher (10), abirami-vina (1)

Commentaires