Skip to content

Comment exporter au format PaddlePaddle des modèles YOLOv8 ?

Il peut être difficile de combler le fossé entre le développement et le déploiement de modèles de vision par ordinateur dans des scénarios du monde réel avec des conditions variables. PaddlePaddle facilite ce processus en mettant l'accent sur la flexibilité, la performance et sa capacité de traitement parallèle dans des environnements distribués. Cela signifie que tu peux utiliser tes modèles de vision par ordinateur YOLOv8 sur une grande variété d'appareils et de plates-formes, des smartphones aux serveurs basés sur le cloud.

La possibilité d'exporter vers le format de modèle PaddlePaddle te permet d'optimiser tes modèles pour les utiliser dans le cadre de , qui est connu pour faciliter les déploiements industriels. Ultralytics YOLOv8 pour une utilisation dans le cadre de PaddlePaddle . PaddlePaddle est connu pour faciliter les déploiements industriels et constitue un bon choix pour le déploiement d'applications de vision par ordinateur dans des environnements réels et dans divers domaines.

Pourquoi exporter vers PaddlePaddle?

PaddlePaddle Logo

Développé par Baidu, PaddlePaddle(PArallel Distributed Deep LEarning) est la première plateforme d'apprentissage profond à code source ouvert en Chine. Contrairement à certains cadres construits principalement pour la recherche, PaddlePaddle donne la priorité à la facilité d'utilisation et à l'intégration harmonieuse dans tous les secteurs d'activité.

Il offre des outils et des ressources similaires à des frameworks populaires comme TensorFlow et PyTorch, ce qui le rend accessible aux développeurs de tous niveaux d'expérience. De l'agriculture aux usines en passant par les entreprises de services, la grande communauté de développeurs de PaddlePaddle, qui compte plus de 4,77 millions de personnes, aide à créer et à déployer des applications d'IA.

En exportant tes modèles Ultralytics YOLOv8 au format PaddlePaddle , tu peux profiter des atouts de PaddlePaddleen matière d'optimisation des performances. PaddlePaddle donne la priorité à une exécution efficace des modèles et à une utilisation réduite de la mémoire. Par conséquent, tes modèles YOLOv8 peuvent potentiellement atteindre des performances encore meilleures et fournir des résultats de premier ordre dans des scénarios pratiques.

Caractéristiques principales des modèles PaddlePaddle

PaddlePaddle offrent une gamme de caractéristiques clés qui contribuent à leur flexibilité, à leur performance et à leur évolutivité dans divers scénarios de déploiement :

  • Graphique dynamique Ă  statique: PaddlePaddle prend en charge la compilation dynamique Ă  statique, oĂą les modèles peuvent ĂŞtre traduits en un graphique de calcul statique. Cela permet des optimisations qui rĂ©duisent les frais gĂ©nĂ©raux d'exĂ©cution et augmentent les performances d'infĂ©rence.

  • Fusion d'opĂ©rateurs: PaddlePaddle, comme TensorRT, utilise la fusion d'opĂ©rateurs pour rationaliser les calculs et rĂ©duire les frais gĂ©nĂ©raux. Le cadre minimise les transferts de mĂ©moire et les Ă©tapes de calcul en fusionnant les opĂ©rations compatibles, ce qui permet une infĂ©rence plus rapide.

  • Quantification: PaddlePaddle prend en charge les techniques de quantification, y compris la quantification post-entraĂ®nement et l'entraĂ®nement conscient de la quantification. Ces techniques permettent d'utiliser des reprĂ©sentations de donnĂ©es de moindre prĂ©cision, ce qui permet d'amĂ©liorer les performances et de rĂ©duire la taille du modèle.

Options de déploiement dans PaddlePaddle

Avant de plonger dans le code d'exportation des modèles YOLOv8 vers PaddlePaddle, examinons les différents scénarios de déploiement dans lesquels les modèles PaddlePaddle excellent.

PaddlePaddle propose une gamme d'options, chacune offrant un équilibre distinct entre la facilité d'utilisation, la flexibilité et la performance :

  • Paddle Serving: Ce cadre simplifie le dĂ©ploiement des modèles PaddlePaddle sous forme d'API RESTful très performantes. Paddle Serving est idĂ©al pour les environnements de production, car il offre des fonctionnalitĂ©s telles que le versionnement des modèles, les tests A/B en ligne et l'Ă©volutivitĂ© pour traiter de gros volumes de demandes.

  • API d'infĂ©rence Paddle: L'API d'infĂ©rence Paddle te donne un contrĂ´le de bas niveau sur l'exĂ©cution du modèle. Cette option est bien adaptĂ©e aux scĂ©narios dans lesquels tu dois intĂ©grer Ă©troitement le modèle dans une application personnalisĂ©e ou optimiser les performances pour un matĂ©riel spĂ©cifique.

  • Paddle Lite: Paddle Lite est conçu pour ĂŞtre dĂ©ployĂ© sur des appareils mobiles et embarquĂ©s oĂą les ressources sont limitĂ©es. Il optimise les modèles pour qu'ils soient plus petits et que l'infĂ©rence soit plus rapide sur les CPU ARM, les GPU et d'autres matĂ©riels spĂ©cialisĂ©s.

  • Paddle.js : Paddle.js te permet de dĂ©ployer les modèles PaddlePaddle directement dans les navigateurs Web. Paddle.js peut soit charger un modèle prĂ©-entraĂ®nĂ©, soit transformer un modèle provenant de paddle-hub Ă  l'aide d'outils de transformation de modèles fournis par Paddle.js. Il peut fonctionner dans les navigateurs qui prennent en charge WebGL/WebGPU/WebAssembly.

Exporter vers PaddlePaddle: Conversion de ton modèle YOLOv8

La conversion des modèles YOLOv8 au format PaddlePaddle peut améliorer la souplesse d'exécution et optimiser les performances pour divers scénarios de déploiement.

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 PaddlePaddle format
model.export(format="paddle")  # creates '/yolov8n_paddle_model'

# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolov8n_paddle_model")

# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to PaddlePaddle format
yolo export model=yolov8n.pt format=paddle  # creates '/yolov8n_paddle_model'

# Run inference with the exported model
yolo predict model='./yolov8n_paddle_model' 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 PaddlePaddle

Après avoir exporté avec succès tes modèles Ultralytics YOLOv8 au format PaddlePaddle , tu peux maintenant les déployer. La première étape recommandée pour exécuter un modèle PaddlePaddle est d'utiliser la méthode YOLO("./model_paddle_model"), comme indiqué dans l'extrait de code d'utilisation précédent.

Cependant, pour obtenir des instructions détaillées sur le déploiement de tes modèles PaddlePaddle dans divers autres contextes, jette un coup d'œil aux ressources suivantes :

  • Servir la pagaie: Apprends Ă  dĂ©ployer tes modèles PaddlePaddle en tant que services performants Ă  l'aide de Paddle Serving.

  • Paddle Lite: Explore comment optimiser et dĂ©ployer des modèles sur des appareils mobiles et embarquĂ©s Ă  l'aide de Paddle Lite.

  • Pagaie.js: DĂ©couvre comment exĂ©cuter les modèles PaddlePaddle dans les navigateurs web pour l'IA cĂ´tĂ© client Ă  l'aide de Paddle.js.

Résumé

Dans ce guide, nous avons exploré le processus d'exportation des modèles Ultralytics YOLOv8 vers le format PaddlePaddle . En suivant ces étapes, tu pourras tirer parti des atouts de PaddlePaddle dans divers scénarios de déploiement, en optimisant tes modèles pour différents environnements matériels et logiciels.

Pour plus de détails sur l'utilisation, consulte la documentation officielle dePaddlePaddle .

Tu veux explorer d'autres façons d'intégrer tes modèles Ultralytics YOLOv8 ? Notre page de guide d'intégration explore diverses options, en t'équipant de ressources et d'informations précieuses.



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

Commentaires