YOLO Vision 2026:

Verstehe, wie man in das TF SavedModel-Format von YOLO26 exportiert#

Das Bereitstellen von machine learning-Modellen kann anspruchsvoll sein. Die Verwendung eines effizienten und flexiblen Modellformats kann dir die Arbeit jedoch erleichtern. TF SavedModel ist ein Open-Source-Framework für maschinelles Lernen, das von TensorFlow verwendet wird, um Modelle konsistent zu laden. Es funktioniert wie ein Koffer für TensorFlow-Modelle, wodurch sie einfach zu transportieren und auf verschiedenen Geräten und Systemen zu verwenden sind.

Wenn du lernst, wie man Ultralytics YOLO26-Modelle nach TF SavedModel exportiert, hilft dir das dabei, Modelle problemlos über verschiedene Plattformen und Umgebungen hinweg bereitzustellen. In dieser Anleitung gehen wir Schritt für Schritt durch, wie du deine Modelle in das TF SavedModel-Format konvertierst und so den Prozess der Inferenzausführung mit deinen Modellen auf verschiedenen Geräten vereinfachst.

Warum solltest du in das TF SavedModel-Format exportieren?#

Das TensorFlow SavedModel-Format ist Teil des TensorFlow-Ökosystems, das von Google entwickelt wurde, wie unten dargestellt. Es wurde entwickelt, um TensorFlow-Modelle nahtlos zu speichern und zu serialisieren. Es kapselt die vollständigen Details von Modellen wie die Architektur, Gewichte und sogar Kompilierungsinformationen. Dies macht es unkompliziert, Modelle in verschiedenen Umgebungen zu teilen, bereitzustellen und weiter zu trainieren.

TensorFlow SavedModel export format structure

Das TF SavedModel bietet einen entscheidenden Vorteil: seine Kompatibilität. Es funktioniert gut mit TensorFlow Serving, LiteRT (ehemals TensorFlow Lite) und TensorFlow.js. Diese Kompatibilität erleichtert das Teilen und Bereitstellen von Modellen auf verschiedenen Plattformen, einschließlich Web- und mobilen Anwendungen. Das TF SavedModel-Format ist sowohl für die Forschung als auch für die Produktion nützlich. Es bietet eine einheitliche Möglichkeit zur Verwaltung deiner Modelle und stellt sicher, da sie für jede Anwendung bereit sind.

Hauptmerkmale von TF SavedModels#

Hier sind die Hauptmerkmale, die TF SavedModel zu einer großartigen Option für KI-Entwickler machen:

  • Portabilität: TF SavedModel bietet ein sprachneutrales, wiederherstellbares und hermetisches Serialisierungsformat. Es ermöglicht Systemen und Tools auf höherer Ebene, TensorFlow-Modelle zu erstellen, zu konsumieren und umzuwandeln. SavedModels können einfach über verschiedene Plattformen und Umgebungen hinweg geteilt und bereitgestellt werden.

  • Einfache Bereitstellung: TF SavedModel bündelt den Rechengraphen, trainierte Parameter und notwendige Metadaten in einem einzigen Paket. Sie können problemlos geladen und für Inferenzen verwendet werden, ohne dass der ursprüngliche Code erforderlich ist, der das Modell erstellt hat. Dies macht die Bereitstellung von TensorFlow-Modellen unkompliziert und effizient in verschiedenen Produktionsumgebungen.

  • Asset-Verwaltung: TF SavedModel unterstützt die Einbindung externer Assets wie Vokabularien, embeddings oder Nachschlagetabellen. Diese Assets werden zusammen mit der Graphendefinition und den Variablen gespeichert, um sicherzustellen, da sie beim Laden des Modells verfügbar sind. Diese Funktion vereinfacht die Verwaltung und Verteilung von Modellen, die auf externe Ressourcen angewiesen sind.

Bereitstellungsoptionen mit TF SavedModel#

Bevor wir in den Prozess des Exports von YOLO26-Modellen in das TF SavedModel-Format eintauchen, lass uns einige typische Bereitstellungsszenarien erkunden, in denen dieses Format verwendet wird.

TF SavedModel bietet eine Reihe von Optionen zur Bereitstellung deiner Machine-Learning-Modelle:

  • TensorFlow Serving: TensorFlow Serving ist ein flexibles, leistungsstarkes Bereitstellungssystem, das für Produktionsumgebungen entwickelt wurde. Es unterstützt TF SavedModels nativ, was es einfach macht, deine Modelle auf Cloud-Plattformen, On-Premises-Servern oder edge devices bereitzustellen und auszuführen.

  • Cloud-Plattformen: Große Cloud-Anbieter wie Google Cloud Platform (GCP), Amazon Web Services (AWS) und Microsoft Azure bieten Dienste zum Bereitstellen und Ausführen von TensorFlow-Modellen an, einschließlich TF SavedModels. Diese Dienste stellen eine skalierbare und verwaltete Infrastruktur bereit, mit der du deine Modelle unkompliziert bereitstellen und skalieren kannst.

  • Mobil- und eingebettete Geräte: LiteRT (ehemals TensorFlow Lite), eine leichtgewichtige Lösung zum Ausführen von Modellen für maschinelles Lernen auf Mobil-, Embedded- und IoT-Geräten, unterstützt die Konvertierung von TF SavedModels in das LiteRT-Format. Dadurch kannst du deine Modelle auf einer Vielzahl von Geräten bereitstellen, von Smartphones und Tablets bis hin zu Mikrocontrollern und Edge-Geräten.

  • TensorFlow Runtime: TensorFlow Runtime (tfrt) ist eine leistungsstarke Laufzeitumgebung zum Ausführen von TensorFlow-Graphen. Sie bietet APIs auf niedrigerer Ebene zum Laden und Ausführen von TF SavedModels in C++-Umgebungen. TensorFlow Runtime bietet eine bessere Leistung im Vergleich zur Standard-Laufzeit von TensorFlow. Sie eignet sich für Bereitstellungsszenarien, die eine Inferenz mit gering Latenz und eine enge Integration in bestehende C++-Codebasen erfordern.

Unterstützte Aufgaben#

Der TF SavedModel-Export unterstützt alle sieben Ultralytics-Aufgaben. Semantische Segmentierung und Tiefenschätzung sind nur mit YOLO26 verfügbar, der einzigen Familie, die diese Köpfe bereitstellt.

AufgabeYOLOv8YOLO11YOLO26
Detect
Segment
Semantic
Depth
Classify
Pose
OBB

Exportieren von YOLO26-Modellen in TF SavedModel#

Durch den Export von YOLO26-Modellen in das TF SavedModel-Format verbesserst du deren Anpassungsfähigkeit und die Leichtigkeit der Bereitstellung auf verschiedenen Plattformen.

Installation#

Um das erforderliche Paket zu installieren, führe Folgendes aus:

Installation
# Install the required package for YOLO26
pip install ultralytics

Detaillierte Anweisungen und bewährte Methoden zum Installationsprozess findest du in unserer Ultralytics-Installationsanleitung. Wenn während der Installation der erforderlichen Pakete für YOLO26 Schwierigkeiten auftreten, findest du in unserem Leitfaden zu häufigen Problemen Lösungen und Tipps.

Verwendung#

Alle Ultralytics YOLO26 models sind so konzipiert, dass sie den Export von Haus aus unterstützen, sodass du sie mühelos in deinen bevorzugten Bereitstellungsworkflow integrieren kannst. Du kannst the full list of supported export formats and configuration options einsehen, um das beste Setup für deine Anwendung auszuwählen.

Das TF SavedModel-Format unterstützt die Modi Export, Predict und Validate. Exportiere dein Modell und lade es anschließend, um Inferenzen auszuführen oder seine Genauigkeit zu validieren.

Exportieren
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo26n_saved_model'
Vorhersagen
from ultralytics import YOLO

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

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Validieren
from ultralytics import YOLO

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

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Export-Argumente#

ArgumentTypStandardBeschreibung
formatstr'saved_model'Zielformat für das exportierte Modell, das die Kompatibilität mit verschiedenen Bereitstellungsumgebungen definiert.
imgszint oder tuple640Gewünschte Bildgröße für die Modelleingabe. Kann eine Ganzzahl für quadratische Bilder oder ein Tupel (height, width) für bestimmte Abmessungen sein.
kerasboolFalseErmöglicht den Export in das Keras-Format und bietet Kompatibilität mit TensorFlow Serving und APIs.
quantizeint oder strNoneQuantisierungsgenauigkeit: 8 (INT8/PTQ; benötigt Kalibrierung data/fraction) oder 32/nicht gesetzt (FP32). FP16 wird für den SavedModel-Export nicht unterstützt. Ersetzt das veraltete int8-Flag.
opsetintNoneGibt die ONNX opset-Version für den zwischengeschalteten ONNX-Graph an. Falls nicht festgelegt, wird die neueste unterstützte Version verwendet.
nmsboolFalseFügt Non-Maximum Suppression (NMS) hinzu, was für eine genaue und effiziente Detektions-Nachbearbeitung unerlässlich ist.
batchint1Legt die Batch-Inferenzgröße des exportierten Modells fest oder die maximale Anzahl an Bildern, die das exportierte Modell im Modus predict gleichzeitig verarbeitet.
datastrNonePfad zum dataset-YAML, das für die Quantisierung unerlässlich ist; für die Klassifizierung wird stattdessen ein Dataset-Verzeichnis oder ein integrierter Dataset-Name verwendet. Wenn dies bei quantize=8 weggelassen wird, wählt Ultralytics das Standard-Kalibrierungs-Dataset für die Modellaufgabe aus.
fractionfloat1.0Gibt den Teil des Datensatzes an, der für die INT8-Quantisierungskalibrierung verwendet werden soll. Ermöglicht die Kalibrierung auf einer Teilmenge des vollständigen Datensatzes, nützlich für Experimente oder bei begrenzten Ressourcen. Wenn bei aktivierter INT8-Quantisierung nicht spezifiziert, wird der vollständige Datensatz verwendet.
devicestrNoneGibt das Gerät für den Export an: CPU (device=cpu), MPS für Apple Silicon (device=mps).

Weitere Details zum Exportprozess findest du auf der Ultralytics-Dokumentationsseite zum Exportieren.

Bereitstellung exportierter YOLO26 TF SavedModel-Modelle#

Jetzt, da du dein YOLO26-Modell in das TF SavedModel-Format exportiert hast, besteht der nächste Schritt darin, es bereitzustellen. Der primäre und empfohlene erste Schritt zum Ausführen eines TF SavedModel-Modells besteht darin, die Methode YOLO("yolo26n_saved_model/") zu verwenden, wie zuvor im Nutzungscodeausschnitt gezeigt.

Für detaillierte Anweisungen zur Bereitstellung deiner TF SavedModel-Modelle schau dir jedoch die folgenden Ressourcen an:

  • TensorFlow Serving: Hier ist die Entwicklerdokumentation zur Bereitstellung deiner TF SavedModel-Modelle mit TensorFlow Serving.

  • Run a TensorFlow SavedModel in Node.js: Ein TensorFlow-Blogbeitrag zum direkten Ausführen eines TensorFlow SavedModel in Node.js ohne Konvertierung.

  • Deploying on Cloud: Ein TensorFlow-Blogbeitrag zur Bereitstellung eines TensorFlow SavedModel-Modells auf der Cloud AI Platform.

Zusammenfassung#

In diesem Leitfaden haben wir untersucht, wie Ultralytics YOLO26-Modelle in das TF SavedModel-Format exportiert werden. Durch den Export in TF SavedModel erhältst du die Flexibilität, deine YOLO26-Modelle auf einer Vielzahl von Plattformen zu optimieren, bereitzustellen und zu skalieren.

Weitere Details zur Verwendung findest du in der TF SavedModel official documentation.

Weitere Informationen zur Integration von Ultralytics YOLO26 mit anderen Plattformen und Frameworks findest du in unserem integration guide page. Die Seite ist vollgepackt mit großartigen Ressourcen, die dir helfen, das Beste aus YOLO26 in deinen Projekten herauszuholen.

FAQ#

Wie exportiere ich ein Ultralytics YOLO-Modell in das TensorFlow SavedModel-Format?#

Das Exportieren eines Ultralytics YOLO-Modells in das TensorFlow SavedModel-Format ist unkompliziert. Du kannst dazu entweder Python oder die CLI verwenden:

Exportieren von YOLO26 in TF SavedModel
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

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

# Load the exported TF SavedModel for inference
tf_savedmodel_model = YOLO("./yolo26n_saved_model")
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")

Weitere Einzelheiten findest du in der Ultralytics Export documentation.

Warum sollte ich das TensorFlow SavedModel-Format verwenden?#

Das TensorFlow SavedModel-Format bietet mehrere Vorteile für die model deployment:

  • Portabilität: Es bietet ein sprachneutrales Format, was es einfach macht, Modelle in verschiedenen Umgebungen zu teilen und bereitzustellen.
  • Kompatibilität: Lässt sich nahtlos in Tools wie TensorFlow Serving, LiteRT und TensorFlow.js integrieren, die für die Bereitstellung von Modellen auf verschiedenen Plattformen, einschließlich Web- und Mobilanwendungen, unerlässlich sind.
  • Vollständige Kapselung: Kodiert die Modellarchitektur, Gewichte und Kompilierungsinformationen, was ein unkompliziertes Teilen und Fortsetzen des Trainings ermöglicht.

Weitere Vorteile und Bereitstellungsoptionen findest du unter Ultralytics YOLO model deployment options.

Was sind typische Bereitstellungsszenarien für TF SavedModel?#

TF SavedModel kann in verschiedenen Umgebungen bereitgestellt werden, darunter:

  • TensorFlow Serving: Ideal für Produktionsumgebungen, die skalierbare und leistungsstarke Modellbereitstellung erfordern.
  • Cloud-Plattformen: Unterstützt große Cloud-Dienste wie Google Cloud Platform (GCP), Amazon Web Services (AWS) und Microsoft Azure für skalierbare Modellbereitstellung.
  • Mobil- und eingebettete Geräte: Die Verwendung von LiteRT (ehemals TensorFlow Lite) zur Konvertierung von TF SavedModels ermöglicht die Bereitstellung auf Mobilgeräten, IoT-Geräten und Mikrocontrollern.
  • TensorFlow Runtime: Für C++-Umgebungen, die Inferenzen mit geringer Latenz und besserer Leistung benötigen.

Detaillierte Bereitstellungsoptionen findest du in den offiziellen Anleitungen zum Thema deploying TensorFlow models.

Wie kann ich die notwendigen Pakete installieren, um YOLO26-Modelle zu exportieren?#

Um YOLO26-Modelle zu exportieren, musst du das Paket ultralytics installieren. Führe den folgenden Befehl in deinem Terminal aus:

pip install ultralytics

Detailliertere Installationsanweisungen und Best Practices findest du in unserem Ultralytics Installation guide. Wenn du auf Probleme stößt, schaue in unserem Common Issues guide nach.

Was sind die Hauptmerkmale des TensorFlow SavedModel-Formats?#

Das TF SavedModel-Format ist für KI-Entwickler aufgrund der folgenden Funktionen von Vorteil:

  • Portabilität: Ermöglicht das mühelose Teilen und Bereitstellen in verschiedenen Umgebungen.
  • Einfache Bereitstellung: Kapselt den Rechengraphen, trainierte Parameter und Metadaten in einem einzigen Paket, was das Laden und die Inferenz vereinfacht.
  • Asset-Management: Unterstützt externe Assets wie Vokabulare und stellt sicher, dass sie beim Laden des Modells verfügbar sind.

Weitere Details findest du in der official TensorFlow documentation.

Kommentare