Overslaan naar inhoud

Begrijpen hoe te exporteren naar TF SavedModel vanuit YOLOv8

Het implementeren van machine-learning modellen kan een uitdaging zijn. Het gebruik van een efficiƫnt en flexibel modelformaat kan je werk echter gemakkelijker maken. TF SavedModel is een open-source machine-learning framework dat wordt gebruikt door TensorFlow om machine-learning modellen op een consistente manier te laden. Het is als een koffer voor TensorFlow modellen, waardoor ze gemakkelijk mee te nemen en te gebruiken zijn op verschillende apparaten en systemen.

Leren hoe je modellen kunt exporteren naar TF SavedModel Ultralytics YOLOv8 modellen kan je helpen om modellen eenvoudig te implementeren op verschillende platforms en in verschillende omgevingen. In deze gids laten we je zien hoe je modellen kunt converteren naar het TF SavedModel formaat, waardoor het eenvoudiger wordt om inferenties uit te voeren met je modellen op verschillende apparaten.

Waarom zou je exporteren naar TF SavedModel ?

Het TensorFlow SavedModel formaat is een onderdeel van het TensorFlow ecosysteem ontwikkeld door Google , zoals hieronder weergegeven. Het is ontworpen om TensorFlow modellen naadloos op te slaan en te serialiseren. Het bevat alle details van modellen, zoals de architectuur, gewichten en zelfs compilatie-informatie. Dit maakt het eenvoudig om modellen te delen, in te zetten en verder te trainen in verschillende omgevingen.

TF SavedModel

De TF SavedModel heeft een belangrijk voordeel: zijn compatibiliteit. Het werkt goed met TensorFlow Serving, TensorFlow Lite en TensorFlow.js. Deze compatibiliteit maakt het eenvoudiger om modellen te delen en in te zetten op verschillende platforms, waaronder web- en mobiele applicaties. Het formaat TF SavedModel is nuttig voor zowel onderzoek als productie. Het biedt een uniforme manier om je modellen te beheren, zodat ze klaar zijn voor elke toepassing.

Belangrijkste kenmerken van TF OpgeslagenModellen

Hier zijn de belangrijkste functies die TF SavedModel een geweldige optie maken voor AI-ontwikkelaars:

  • Draagbaarheid: TF SavedModel biedt een taalneutraal, herstelbaar, hermetisch serialisatieformaat. Hiermee kunnen systemen en gereedschappen op een hoger niveau TensorFlow modellen produceren, consumeren en transformeren. OpgeslagenModellen kunnen eenvoudig worden gedeeld en ingezet op verschillende platforms en omgevingen.

  • Eenvoudige implementatie: TF SavedModel bundelt de rekengrafiek, getrainde parameters en noodzakelijke metadata in een enkel pakket. Ze kunnen eenvoudig worden geladen en gebruikt voor inferentie zonder dat de oorspronkelijke code nodig is die het model heeft gebouwd. Dit maakt de inzet van TensorFlow modellen eenvoudig en efficiĆ«nt in verschillende productieomgevingen.

  • Asset Management: TF SavedModel ondersteunt het opnemen van externe assets zoals vocabulaires, embeddings of opzoektabellen. Deze middelen worden opgeslagen naast de grafiekdefinitie en variabelen, zodat ze beschikbaar zijn wanneer het model wordt geladen. Deze functie vereenvoudigt het beheer en de distributie van modellen die afhankelijk zijn van externe bronnen.

Inzetmogelijkheden met TF SavedModel

Voordat we ons verdiepen in het exporteren van YOLOv8 modellen naar het TF SavedModel formaat, zullen we eerst een aantal typische implementatiescenario's bekijken waarbij dit formaat wordt gebruikt.

TF SavedModel biedt een reeks opties om je machine learning modellen in te zetten:

  • TensorFlow Serveren: TensorFlow Serving is een flexibel, krachtig serveersysteem dat is ontworpen voor productieomgevingen. Het ondersteunt TF SavedModels, waardoor het eenvoudig is om je modellen in te zetten en te serveren op cloudplatforms, servers op locatie of randapparaten.

  • Cloud Platforms: Major cloud providers like Google Cloud Platform (GCP), Amazon Web Services (AWS), and Microsoft Azure offer services for deploying and running TensorFlow models, including TF SavedModels. These services provide scalable and managed infrastructure, allowing you to deploy and scale your models easily.

  • Mobiele en embedded apparaten: TensorFlow Lite, een lichtgewicht oplossing voor het uitvoeren van machine learning modellen op mobiele, embedded en IoT apparaten, ondersteunt het converteren van TF SavedModels naar het TensorFlow Lite formaat. Hierdoor kun je je modellen inzetten op een breed scala aan apparaten, van smartphones en tablets tot microcontrollers en randapparaten.

  • TensorFlow Runtime: TensorFlow Runtime (tfrt) is een high-performance runtime voor het uitvoeren van TensorFlow Grafieken. Het biedt API's op een lager niveau voor laden en uitvoeren TF SavedModels in C++-omgevingen. TensorFlow Runtime biedt betere prestaties in vergelijking met de standaard TensorFlow Runtime. Het is geschikt voor implementatiescenario's die inferentie met lage latentie en nauwe integratie met bestaande C++-codebases vereisen.

YOLOv8 modellen exporteren naar TF SavedModel

Door YOLOv8 modellen te exporteren naar het TF SavedModel formaat, verbeter je de aanpasbaarheid en het gemak waarmee ze op verschillende platforms kunnen worden ingezet.

Installatie

Voer het volgende uit om het vereiste pakket te installeren:

Installatie

# Install the required package for YOLOv8
pip install ultralytics

Bekijk voor gedetailleerde instructies en best practices met betrekking tot het installatieproces onze Ultralytics Installatiegids. Als je tijdens de installatie van de vereiste pakketten voor YOLOv8 problemen tegenkomt, raadpleeg dan onze gids Veelgestelde problemen voor oplossingen en tips.

Gebruik

Voordat je in de gebruiksinstructies duikt, is het belangrijk om op te merken dat alle Ultralytics YOLOv8 modellen beschikbaar zijn voor exporteren, maar dat je hier kunt controleren of het model dat je kiest de exportfunctionaliteit ondersteunt.

Gebruik

from ultralytics import YOLO

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

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

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

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

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

Ga voor meer informatie over ondersteunde exportopties naar de Ultralytics documentatiepagina over implementatieopties.

Geƫxporteerde YOLOv8 TF SavedModel modellen inzetten

Nu je je YOLOv8 model hebt geƫxporteerd naar het TF SavedModel formaat, is de volgende stap om het uit te rollen. De primaire en aanbevolen eerste stap voor het uitvoeren van een TF GraphDef model is het gebruik van de YOLO("./yolov8n_saved_model") methode, zoals eerder getoond in het voorbeeld van de gebruikscode.

Voor uitgebreide instructies over het implementeren van je TF SavedModel modellen, kun je een kijkje nemen in de volgende bronnen:

  • TensorFlow Ik bedien: Hier is de documentatie voor ontwikkelaars over hoe je je TF SavedModel modellen kunt implementeren met TensorFlow Serving.

  • Een TensorFlow SavedModel uitvoeren in Node.js: Een TensorFlow blogpost over het direct uitvoeren van een TensorFlow SavedModel in Node.js zonder conversie.

  • Uitrollen op Cloud: Een TensorFlow blogpost over het implementeren van een TensorFlow SavedModel model op het Cloud AI Platform.

Samenvatting

In deze handleiding hebben we onderzocht hoe je Ultralytics YOLOv8 modellen kunt exporteren naar het TF SavedModel formaat. Door te exporteren naar TF SavedModel krijg je de flexibiliteit om je YOLOv8 modellen te optimaliseren, in te zetten en te schalen op een groot aantal platforms.

Ga voor meer informatie over het gebruik naar de officiƫle documentatie opTF SavedModel .

Vergeet voor meer informatie over het integreren van Ultralytics YOLOv8 met andere platforms en frameworks niet om onze integratiegids pagina te bekijken. Het staat vol met geweldige bronnen om je te helpen het meeste uit YOLOv8 te halen in je projecten.

FAQ

Hoe exporteer ik een Ultralytics YOLO model naar TensorFlow SavedModel formaat?

Het exporteren van een Ultralytics YOLO model naar het TensorFlow SavedModel formaat is eenvoudig. Je kunt hiervoor Python of CLI gebruiken:

YOLOv8 exporteren naar TF SavedModel

from ultralytics import YOLO

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

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

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

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

Raadpleeg de documentatieUltralytics Export voor meer informatie.

Waarom zou ik het TensorFlow SavedModel formaat gebruiken?

Het formaat TensorFlow SavedModel biedt verschillende voordelen voor het implementeren van modellen:

  • Draagbaarheid: Het biedt een taalneutrale indeling, waardoor het eenvoudig is om modellen te delen en in te zetten in verschillende omgevingen.
  • Compatibiliteit: Integreert naadloos met tools als TensorFlow Serving, TensorFlow Lite en TensorFlow.js, die essentieel zijn voor het implementeren van modellen op verschillende platforms, waaronder web- en mobiele applicaties.
  • Volledige inkapseling: Codering van de modelarchitectuur, gewichten en compilatie-informatie, waardoor het eenvoudig gedeeld kan worden en de training kan worden voortgezet.

Bekijk voor meer voordelen en inzetmogelijkheden de inzetopties van het Ultralytics YOLO model.

Wat zijn de typische implementatiescenario's voor TF SavedModel ?

TF SavedModel kan worden ingezet in verschillende omgevingen, waaronder:

  • TensorFlow Serveren: Ideaal voor productieomgevingen die schaalbare en krachtige modelserving vereisen.
  • Cloud Platforms: Supports major cloud services like Google Cloud Platform (GCP), Amazon Web Services (AWS), and Microsoft Azure for scalable model deployment.
  • Mobiele en ingebedde apparaten: Door TensorFlow Lite te gebruiken om TF SavedModels te converteren, kunnen ze worden ingezet op mobiele apparaten, IoT-apparaten en microcontrollers.
  • TensorFlow Runtime: Voor C++ omgevingen die inference met lage latentie en betere prestaties nodig hebben.

Ga voor gedetailleerde implementatieopties naar de officiƫle gidsen over het implementeren van TensorFlow modellen.

Hoe kan ik de benodigde pakketten installeren om YOLOv8 modellen te exporteren?

Om YOLOv8 modellen te exporteren, moet je de ultralytics pakket. Voer het volgende commando uit in je terminal:

pip install ultralytics

Raadpleeg voor meer gedetailleerde installatie-instructies en best practices onze Ultralytics Installatiegids. Als je problemen tegenkomt, raadpleeg dan onze gids Veelgestelde problemen.

Wat zijn de belangrijkste kenmerken van het formaat TensorFlow SavedModel ?

TF SavedModel formaat is gunstig voor AI-ontwikkelaars vanwege de volgende eigenschappen:

  • Draagbaarheid: Maakt moeiteloos delen en inzetten in verschillende omgevingen mogelijk.
  • Eenvoudige implementatie: Kapselt de computationele grafiek, getrainde parameters en metadata in een enkel pakket in, wat het laden en inferentie vereenvoudigt.
  • Beheer van bedrijfsmiddelen: Ondersteunt externe middelen zoals vocabulaires, zodat ze beschikbaar zijn wanneer het model wordt geladen.

Raadpleeg voor meer informatie de officiƫle TensorFlow documentatie.



Aangemaakt 2024-03-23, Bijgewerkt 2024-07-05
Auteurs: glenn-jocher (5), Burhan-Q (1), abirami-vina (1)

Reacties