Link to this sectionVerstehe, wie man aus YOLO26 in das TF SavedModel-Format exportiert#
Die Bereitstellung von Machine Learning-Modellen kann eine Herausforderung 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 Machine-Learning-Modelle konsistent zu laden. Es ist wie ein Koffer für TensorFlow-Modelle, der sie leicht transportierbar macht und den Einsatz auf verschiedenen Geräten und Systemen ermöglicht.
Wenn du lernst, wie du Ultralytics YOLO26-Modelle in TF SavedModel exportierst, kannst du Modelle ganz einfach auf verschiedenen Plattformen und in unterschiedlichen Umgebungen bereitstellen. In diesem Leitfaden gehen wir durch, wie du deine Modelle in das TF SavedModel-Format konvertierst, um den Prozess der Durchführung von Inferenzen mit deinen Modellen auf verschiedenen Geräten zu vereinfachen.
Link to this sectionWarum solltest du in TF SavedModel exportieren?#
Das TensorFlow SavedModel-Format ist Teil des von Google entwickelten TensorFlow-Ökosystems, wie unten dargestellt. Es wurde entwickelt, um TensorFlow-Modelle nahtlos zu speichern und zu serialisieren. Es kapselt alle Details der Modelle wie die Architektur, Gewichte und sogar Kompilierungsinformationen. Dadurch ist es unkompliziert, Modelle in verschiedenen Umgebungen zu teilen, bereitzustellen und weiter zu trainieren.
TF SavedModel hat einen entscheidenden Vorteil: die Kompatibilität. Es funktioniert gut mit TensorFlow Serving, TensorFlow Lite und TensorFlow.js. Diese Kompatibilität macht es einfacher, Modelle plattformübergreifend zu teilen und bereitzustellen, einschließlich Web- und Mobilanwendungen. Das TF SavedModel-Format ist sowohl für die Forschung als auch für die Produktion nützlich. Es bietet eine einheitliche Möglichkeit, deine Modelle zu verwalten und sicherzustellen, dass sie für jede Anwendung bereit sind.
Link to this sectionHauptmerkmale 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 nutzen und zu transformieren. SavedModels können einfach geteilt und auf verschiedenen Plattformen und Umgebungen bereitgestellt werden.
-
Einfache Bereitstellung: TF SavedModel bündelt den Berechnungsgraphen, trainierte Parameter und notwendige Metadaten in einem einzigen Paket. Sie können einfach geladen und für Inferenzen verwendet werden, ohne den ursprünglichen Code, der das Modell erstellt hat, zu benötigen. Dies macht die Bereitstellung von TensorFlow-Modellen in verschiedenen Produktionsumgebungen unkompliziert und effizient.
-
Asset-Management: TF SavedModel unterstützt die Einbindung externer Assets wie Vokabulare, Embeddings oder Lookup-Tabellen. Diese Assets werden zusammen mit der Graphendefinition und den Variablen gespeichert, wodurch sichergestellt wird, dass sie verfügbar sind, wenn das Modell geladen wird. Diese Funktion vereinfacht die Verwaltung und Verteilung von Modellen, die auf externe Ressourcen angewiesen sind.
Link to this sectionBereitstellungsoptionen mit TF SavedModel#
Bevor wir uns mit dem Prozess des Exports von YOLO26-Modellen in das TF SavedModel-Format befassen, schauen wir uns einige typische Bereitstellungsszenarien an, in denen dieses Format verwendet wird.
TF SavedModel bietet eine Reihe von Möglichkeiten, um deine Machine-Learning-Modelle bereitzustellen:
-
TensorFlow Serving: TensorFlow Serving ist ein flexibles, leistungsstarkes Serving-System für Produktionsumgebungen. Es unterstützt nativ TF SavedModels, was es einfach macht, deine Modelle auf Cloud-Plattformen, lokalen Servern oder Edge-Geräten bereitzustellen und zu betreiben.
-
Cloud-Plattformen: Große Cloud-Anbieter wie Google Cloud Platform (GCP), Amazon Web Services (AWS) und Microsoft Azure bieten Dienste zur Bereitstellung und Ausführung von TensorFlow-Modellen, einschließlich TF SavedModels. Diese Dienste bieten eine skalierbare und verwaltete Infrastruktur, mit der du deine Modelle einfach bereitstellen und skalieren kannst.
-
Mobil- und eingebettete Geräte: TensorFlow Lite, eine leichtgewichtige Lösung zur Ausführung von Machine-Learning-Modellen auf Mobil-, eingebetteten und IoT-Geräten, unterstützt die Konvertierung von TF SavedModels in das TensorFlow Lite-Format. Dies ermöglicht es dir, deine Modelle auf einer Vielzahl von Geräten bereitzustellen, von Smartphones und Tablets bis hin zu Mikrocontrollern und Edge-Geräten.
-
TensorFlow Runtime: TensorFlow Runtime (
tfrt) ist eine hochperformante Laufzeitumgebung zur Ausführung 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-TensorFlow-Laufzeitumgebung. Sie eignet sich für Bereitstellungsszenarien, die Inferenzen mit geringer Latenz und eine enge Integration mit bestehenden C++-Codebasen erfordern.
Link to this sectionExportieren von YOLO26-Modellen in TF SavedModel#
Durch das Exportieren von YOLO26-Modellen in das TF SavedModel-Format verbesserst du deren Anpassungsfähigkeit und einfache Bereitstellung auf verschiedenen Plattformen.
Link to this sectionInstallation#
Um das erforderliche Paket zu installieren, führe aus:
# Install the required package for YOLO26
pip install ultralyticsFür detaillierte Anweisungen und Best Practices bezüglich des Installationsprozesses, schau dir unsere Ultralytics Installationsanleitung an. Falls du bei der Installation der erforderlichen Pakete für YOLO26 auf Schwierigkeiten stößt, konsultiere unseren Leitfaden für allgemeine Probleme für Lösungen und Tipps.
Link to this sectionVerwendung#
Alle Ultralytics YOLO26-Modelle sind so konzipiert, dass sie den Export direkt unterstützen, was die Integration in deinen bevorzugten Bereitstellungs-Workflow erleichtert. Du kannst die vollständige Liste der unterstützten Exportformate und Konfigurationsoptionen 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 dann das exportierte Modell, um Inferenzen auszuführen oder dessen Genauigkeit zu validieren.
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'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")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")Link to this sectionExport-Argumente#
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
format | str | 'saved_model' | Zielformat für das exportierte Modell, das die Kompatibilität mit verschiedenen Bereitstellungsumgebungen definiert. |
imgsz | int oder tuple | 640 | Desired image size for the model input. Can be an integer for square images or a tuple (height, width) for specific dimensions. |
keras | bool | False | Ermöglicht den Export in das Keras-Format und bietet Kompatibilität mit TensorFlow Serving und APIs. |
int8 | bool | False | Aktiviert die INT8-Quantisierung, die das Modell weiter komprimiert und die Inferenz mit minimalem Genauigkeitsverlust beschleunigt, vor allem für Edge-Geräte. |
nms | bool | False | Fügt Non-Maximum Suppression (NMS) hinzu, was für eine genaue und effiziente Detektionsnachbearbeitung unerlässlich ist. |
batch | int | 1 | Spezifiziert die Batch-Inferenzgröße für den Export oder die maximale Anzahl an Bildern, die das exportierte Modell gleichzeitig im predict-Modus verarbeitet. |
data | str | 'coco8.yaml' | Pfad zur Konfigurationsdatei des Datensatzes (Standard: coco8.yaml), der für die Quantisierung unerlässlich ist. |
fraction | float | 1.0 | Gibt den Bruchteil des Datensatzes an, der für die Kalibrierung der INT8-Quantisierung verwendet werden soll. Ermöglicht die Kalibrierung auf einer Teilmenge des vollständigen Datensatzes, was für Experimente oder bei begrenzten Ressourcen nützlich ist. Falls bei aktiviertem INT8 nicht spezifiziert, wird der gesamte Datensatz verwendet. |
device | str | None | Gibt 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 Export.
Link to this sectionBereitstellung exportierter YOLO26 TF SavedModel-Modelle#
Nachdem du dein YOLO26-Modell in das TF SavedModel-Format exportiert hast, ist der nächste Schritt die Bereitstellung. Der primäre und empfohlene erste Schritt zur Ausführung eines TF SavedModel-Modells ist die Verwendung der Methode YOLO("yolo26n_saved_model/"), wie zuvor im Code-Snippet gezeigt.
Für detaillierte Anweisungen zur Bereitstellung deiner TF SavedModel-Modelle wirf jedoch einen Blick auf die folgenden Ressourcen:
-
TensorFlow Serving: Hier findest du die Entwicklerdokumentation dazu, wie du deine TF SavedModel-Modelle mithilfe von TensorFlow Serving bereitstellst.
-
Ausführen eines TensorFlow SavedModel in Node.js: Ein TensorFlow-Blogbeitrag zum direkten Ausführen eines TensorFlow SavedModel in Node.js ohne Konvertierung.
-
Bereitstellung in der Cloud: Ein TensorFlow-Blogbeitrag zur Bereitstellung eines TensorFlow SavedModel-Modells auf der Cloud AI Platform.
Link to this sectionZusammenfassung#
In diesem Leitfaden haben wir untersucht, wie man Ultralytics YOLO26-Modelle in das TF SavedModel-Format exportiert. 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 offiziellen TF SavedModel-Dokumentation.
Für weitere Informationen zur Integration von Ultralytics YOLO26 mit anderen Plattformen und Frameworks, vergiss nicht, unsere Seite mit Integrationsleitfäden zu besuchen. Sie ist vollgepackt mit großartigen Ressourcen, die dir helfen, das Beste aus YOLO26 in deinen Projekten herauszuholen.
Link to this sectionFAQ#
Link to this sectionWie exportiere ich ein Ultralytics YOLO-Modell in das TensorFlow SavedModel-Format?#
Der Export eines Ultralytics YOLO-Modells in das TensorFlow SavedModel-Format ist unkompliziert. Du kannst entweder Python oder die CLI verwenden, um dies zu erreichen:
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 Details findest du in der Ultralytics Export-Dokumentation.
Link to this sectionWarum sollte ich das TensorFlow SavedModel-Format verwenden?#
Das TensorFlow SavedModel-Format bietet mehrere Vorteile für die Modellbereitstellung:
- Portabilität: Es bietet ein sprachneutrales Format, was das Teilen und Bereitstellen von Modellen in verschiedenen Umgebungen einfach macht.
- Kompatibilität: Lässt sich nahtlos in Tools wie TensorFlow Serving, TensorFlow Lite 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.
Für weitere Vorteile und Bereitstellungsoptionen sieh dir die Ultralytics YOLO Modellbereitstellungsoptionen an.
Link to this sectionWas sind die typischen Bereitstellungsszenarien für TF SavedModel?#
TF SavedModel kann in verschiedenen Umgebungen bereitgestellt werden, darunter:
- TensorFlow Serving: Ideal für Produktionsumgebungen, die skalierbares und leistungsstarkes Modell-Serving erfordern.
- Cloud-Plattformen: Unterstützt große Cloud-Dienste wie Google Cloud Platform (GCP), Amazon Web Services (AWS) und Microsoft Azure für eine skalierbare Modellbereitstellung.
- Mobil- und eingebettete Geräte: Die Verwendung von 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 Leitfäden zur Bereitstellung von TensorFlow-Modellen.
Link to this sectionWie kann ich die notwendigen Pakete installieren, um YOLO26-Modelle zu exportieren?#
Um YOLO26-Modelle zu exportieren, musst du das ultralytics-Paket installieren. Führe den folgenden Befehl in deinem Terminal aus:
pip install ultralyticsWeitere detaillierte Installationsanweisungen und bewährte Verfahren findest du in unserem Ultralytics Installationsleitfaden. Falls Probleme auftreten, konsultiere unseren Leitfaden zu allgemeinen Problemen.
Link to this sectionWas sind die Hauptmerkmale des TensorFlow SavedModel-Formats?#
Das TF SavedModel-Format ist für KI-Entwickler aufgrund der folgenden Merkmale vorteilhaft:
- Portabilität: Ermöglicht das mühelose Teilen und Bereitstellen in verschiedenen Umgebungen.
- Einfache Bereitstellung: Kapselt den Berechnungsgraphen, 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 diese beim Laden des Modells verfügbar sind.
Für weitere Details erkunde die offizielle TensorFlow-Dokumentation.