Skip to content

Comprendre comment exporter au format TF SavedModel Ă  partir de YOLO11

Le déploiement de modèles d'apprentissage automatique peut s'avérer difficile. Cependant, l'utilisation d'un format de modèle efficace et flexible peut vous faciliter la tâche. TF SavedModel est un cadre d'apprentissage automatique open-source utilisé par TensorFlow pour charger des modèles d'apprentissage automatique de manière cohérente. Il s'agit d'une sorte de valise pour les modèles TensorFlow , ce qui permet de les transporter et de les utiliser facilement sur différents appareils et systèmes.

Apprendre à exporter vers TF SavedModel des modèles peut vous aider à déployer facilement des modèles sur différentes plates-formes et dans différents environnements. Ultralytics YOLO11 peut vous aider à déployer facilement des modèles sur différentes plates-formes et dans différents environnements. Dans ce guide, nous verrons comment convertir vos modèles au format TF SavedModel , ce qui simplifiera le processus d'exécution d'inférences avec vos modèles sur différents appareils.

Pourquoi exporter vers TF SavedModel ?

Le format TensorFlow SavedModel fait partie de l'écosystème TensorFlow développé par Google comme indiqué ci-dessous. Il est conçu pour enregistrer et sérialiser les modèles TensorFlow de manière transparente. Il encapsule tous les détails des modèles tels que l'architecture, les poids et même les informations de compilation. Cela facilite le partage, le déploiement et la poursuite de la formation dans différents environnements.

TF SavedModel

Le site TF SavedModel présente un avantage clé : sa compatibilité. Il fonctionne bien avec TensorFlow Serving, TensorFlow Lite et TensorFlow.js. Cette compatibilité facilite le partage et le déploiement des modèles sur différentes plateformes, y compris les applications web et mobiles. Le format TF SavedModel est utile à la fois pour la recherche et la production. Il offre un moyen unifié de gérer vos modèles, garantissant qu'ils sont prêts pour n'importe quelle application.

Principales caractéristiques de TF SavedModels

Voici les principales caractéristiques qui font de TF SavedModel une excellente option pour les développeurs d'IA :

  • PortabilitĂ©: TF SavedModel fournit un format de sĂ©rialisation hermĂ©tique, rĂ©cupĂ©rable et neutre du point de vue du langage. Ils permettent aux systèmes et outils de niveau supĂ©rieur de produire, consommer et transformer les modèles TensorFlow . Les SavedModels peuvent ĂŞtre facilement partagĂ©s et dĂ©ployĂ©s sur diffĂ©rentes plates-formes et dans diffĂ©rents environnements.

  • FacilitĂ© de dĂ©ploiement: TF SavedModel regroupe le graphe de calcul, les paramètres entraĂ®nĂ©s et les mĂ©tadonnĂ©es nĂ©cessaires dans un seul paquet. Ils peuvent ĂŞtre facilement chargĂ©s et utilisĂ©s pour l'infĂ©rence sans nĂ©cessiter le code original qui a construit le modèle. Cela rend le dĂ©ploiement des modèles TensorFlow simple et efficace dans divers environnements de production.

  • Gestion des actifs: TF SavedModel prend en charge l'inclusion d'actifs externes tels que des vocabulaires, des enchâssements ou des tables de consultation. Ces ressources sont stockĂ©es avec la dĂ©finition du graphique et les variables, ce qui garantit qu'elles sont disponibles lorsque le modèle est chargĂ©. Cette fonctionnalitĂ© simplifie la gestion et la distribution des modèles qui s'appuient sur des ressources externes.

Options de déploiement avec TF SavedModel

Avant de nous plonger dans le processus d'exportation des modèles YOLO11 vers le format TF SavedModel , explorons quelques scénarios de déploiement typiques dans lesquels ce format est utilisé.

TF SavedModel offre une série d'options pour déployer vos modèles d'apprentissage automatique :

  • TensorFlow Serving : TensorFlow Serving est un système de service flexible et performant conçu pour les environnements de production. Il prend nativement en charge TF SavedModels, ce qui facilite le dĂ©ploiement et le service de vos modèles sur des plates-formes cloud, des serveurs sur site ou des pĂ©riphĂ©riques.

  • Plateformes en nuage : Les principaux fournisseurs de services en nuage tels que Google Cloud Platform (GCP), Amazon Web Services (AWS) et Microsoft Azure proposent des services pour le dĂ©ploiement et l'exĂ©cution de modèles TensorFlow , y compris TF SavedModels. Ces services fournissent une infrastructure Ă©volutive et gĂ©rĂ©e, qui vous permet de dĂ©ployer et d'adapter facilement vos modèles.

  • Appareils mobiles et embarquĂ©s : TensorFlow Lite, une solution lĂ©gère pour l'exĂ©cution de modèles d'apprentissage automatique sur des appareils mobiles, embarquĂ©s et IoT, prend en charge la conversion de TF SavedModels au format TensorFlow Lite. Cela vous permet de dĂ©ployer vos modèles sur une large gamme d'appareils, des smartphones et tablettes aux microcontrĂ´leurs et appareils pĂ©riphĂ©riques.

  • TensorFlow DurĂ©e d'exĂ©cution : TensorFlow Temps d'exĂ©cution (tfrt) est un moteur d'exĂ©cution très performant pour l'exĂ©cution de TensorFlow graphiques. Il fournit des API de niveau infĂ©rieur pour le chargement et l'exĂ©cution de TF SavedModels dans des environnements C++. TensorFlow Le runtime offre de meilleures performances que le runtime standard TensorFlow . Il convient aux scĂ©narios de dĂ©ploiement qui nĂ©cessitent une infĂ©rence Ă  faible latence et une intĂ©gration Ă©troite avec les bases de code C++ existantes.

Exportation des modèles YOLO11 vers TF SavedModel

En exportant les modèles YOLO11 au format TF SavedModel , vous améliorez leur adaptabilité et leur facilité de déploiement sur différentes plateformes.

Installation

Pour installer le paquetage requis, exécutez :

Installation

# Install the required package for YOLO11
pip install ultralytics

Pour des instructions détaillées et les meilleures pratiques liées au processus d'installation, consultez notre guide d'installationUltralytics . Lors de l'installation des paquets requis pour YOLO11, si vous rencontrez des difficultés, consultez notre guide des problèmes courants pour obtenir 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 YOLO11 sont disponibles pour l'exportation, vous pouvez vous assurer que le modèle que vous sélectionnez prend en charge la fonctionnalité d'exportation ici.

Utilisation

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo11n_saved_model'

# Load the exported TF SavedModel model
tf_savedmodel_model = YOLO("./yolo11n_saved_model")

# Run inference
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF SavedModel format
yolo export model=yolo11n.pt format=saved_model  # creates '/yolo11n_saved_model'

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

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

Déploiement des modèles exportés YOLO11 TF SavedModel

Maintenant que vous avez exporté votre modèle YOLO11 au format TF SavedModel , l'étape suivante consiste à le déployer. La première étape recommandée pour exécuter un modèle TF GraphDef consiste à utiliser la méthode YOLO("yolo11n_saved_model/"), comme indiqué précédemment dans l'extrait de code d'utilisation.

Toutefois, pour obtenir des instructions détaillées sur le déploiement de vos modèles TF SavedModel , consultez les ressources suivantes :

  • TensorFlow Servir: Voici la documentation destinĂ©e aux dĂ©veloppeurs qui explique comment dĂ©ployer vos modèles TF SavedModel Ă  l'aide de TensorFlow Serving.

  • ExĂ©cuter un TensorFlow SavedModel en Node.js: Un article de blog TensorFlow sur l'exĂ©cution d'un TensorFlow SavedModel dans Node.js directement sans conversion.

  • DĂ©ploiement dans le nuage: Un article du blog TensorFlow sur le dĂ©ploiement d'un modèle TensorFlow SavedModel sur la Cloud AI Platform.

Résumé

Dans ce guide, nous avons exploré comment exporter les modèles Ultralytics YOLO11 vers le format TF SavedModel . En exportant vers TF SavedModel , vous gagnez en souplesse pour optimiser, déployer et mettre à l'échelle vos modèles YOLO11 sur un large éventail de plates-formes.

Pour plus de détails sur l'utilisation, consultez la documentation officielle deTF SavedModel .

Pour plus d'informations sur l'intégration de Ultralytics YOLO11 avec d'autres plateformes et frameworks, n'oubliez pas de consulter notre page de guide d'intégration. Elle regorge d'excellentes ressources pour vous aider à tirer le meilleur parti de YOLO11 dans vos projets.

FAQ

Comment exporter un modèle Ultralytics YOLO au format TensorFlow SavedModel ?

L'exportation d'un modèle Ultralytics YOLO vers le format TensorFlow SavedModel est simple. Pour ce faire, vous pouvez utiliser Python ou CLI :

Exportation de YOLO11 vers TF SavedModel

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo11n_saved_model'

# Load the exported TF SavedModel for inference
tf_savedmodel_model = YOLO("./yolo11n_saved_model")
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")
# Export the YOLO11 model to TF SavedModel format
yolo export model=yolo11n.pt format=saved_model  # creates '/yolo11n_saved_model'

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

Pour plus de détails, consultez la documentation deUltralytics Export.

Pourquoi utiliser le format TensorFlow SavedModel ?

Le format TensorFlow SavedModel offre plusieurs avantages pour le déploiement des modèles:

  • PortabilitĂ© : Il fournit un format neutre sur le plan linguistique, ce qui facilite le partage et le dĂ©ploiement des modèles dans diffĂ©rents environnements.
  • CompatibilitĂ© : S'intègre parfaitement Ă  des outils tels que TensorFlow Serving, TensorFlow Lite et TensorFlow.js, qui sont essentiels pour dĂ©ployer des modèles sur diverses plates-formes, y compris des applications web et mobiles.
  • Encapsulation complète : Encapsule l'architecture du modèle, les poids et les informations de compilation, ce qui permet un partage direct et la poursuite de la formation.

Pour plus d'avantages et d'options de déploiement, consultez les options de déploiement du modèleUltralytics YOLO .

Quels sont les scénarios de déploiement typiques pour TF SavedModel ?

TF SavedModel peut être déployé dans divers environnements, notamment

  • TensorFlow Service : IdĂ©al pour les environnements de production nĂ©cessitant un service de modèle Ă©volutif et performant.
  • Plates-formes en nuage : Prend en charge les principaux services en nuage tels que Google Cloud Platform (GCP), Amazon Web Services (AWS) et Microsoft Azure pour le dĂ©ploiement de modèles Ă©volutifs.
  • Appareils mobiles et embarquĂ©s : L'utilisation de TensorFlow Lite pour convertir TF SavedModels permet un dĂ©ploiement sur des appareils mobiles, des appareils IoT et des microcontrĂ´leurs.
  • TensorFlow ExĂ©cution : Pour les environnements C++ nĂ©cessitant une infĂ©rence Ă  faible latence avec de meilleures performances.

Pour des options de déploiement détaillées, consultez les guides officiels sur le déploiement des modèles TensorFlow .

Comment puis-je installer les paquets nécessaires à l'exportation des modèles YOLO11 ?

Pour exporter les modèles YOLO11 , vous devez installer le logiciel ultralytics paquet. Exécutez la commande suivante dans votre terminal :

pip install ultralytics

Pour des instructions d'installation plus détaillées et les meilleures pratiques, consultez notre guide d'installationUltralytics . Si vous rencontrez des problèmes, consultez notre guide des problèmes courants.

Quelles sont les principales caractéristiques du format TensorFlow SavedModel ?

TF SavedModel est bénéfique pour les développeurs d'IA en raison des caractéristiques suivantes :

  • PortabilitĂ© : Permet le partage et le dĂ©ploiement dans diffĂ©rents environnements sans effort.
  • FacilitĂ© de dĂ©ploiement : Encapsule le graphe de calcul, les paramètres d'apprentissage et les mĂ©tadonnĂ©es dans un seul paquet, ce qui simplifie le chargement et l'infĂ©rence.
  • Gestion des actifs : Prend en charge les actifs externes tels que les vocabulaires, en veillant Ă  ce qu'ils soient disponibles lors du chargement du modèle.

Pour plus de détails, consultez la documentation officielle de TensorFlow .

📅C réé il y a 10 mois ✏️ Mis à jour il y a 19 jours

Commentaires