Zum Inhalt springen

Export in das TF.js-Modellformat aus einem YOLO11-Modellformat

Die Bereitstellung von Machine-Learning-Modellen direkt im Browser oder auf Node.js kann schwierig sein. Sie müssen sicherstellen, dass Ihr Modellformat für eine schnellere Leistung optimiert ist, damit das Modell zum Ausführen interaktiver Anwendungen lokal auf dem Gerät des Benutzers verwendet werden kann. Das TensorFlow.js- oder TF.js-Modellformat ist so konzipiert, dass es minimalen Strom verbraucht und gleichzeitig eine schnelle Leistung bietet.

Die Funktion „Export in das TF.js-Modellformat“ ermöglicht es Ihnen, Ihre Ultralytics YOLO11-Modelle für hochgeschwindigkeitsfähige und lokal ausgeführte Objekterkennung-Inferenz zu optimieren. In diesem Leitfaden führen wir Sie durch die Konvertierung Ihrer Modelle in das TF.js-Format, wodurch es Ihren Modellen erleichtert wird, auf verschiedenen lokalen Browsern und Node.js-Anwendungen eine gute Leistung zu erzielen.

Warum sollten Sie nach TF.js exportieren?

Das Exportieren Ihrer Modelle für maschinelles Lernen nach TensorFlow.js, das vom TensorFlow-Team als Teil des breiteren TensorFlow-Ökosystems entwickelt wurde, bietet zahlreiche Vorteile für die Bereitstellung von Anwendungen für maschinelles Lernen. Es trägt zur Verbesserung der Privatsphäre und Sicherheit der Benutzer bei, indem sensible Daten auf dem Gerät gespeichert werden. Das Bild unten zeigt die TensorFlow.js-Architektur und wie Modelle für maschinelles Lernen konvertiert und in Webbrowsern und Node.js bereitgestellt werden.

TF.js-Architektur

Das lokale Ausführen von Modellen reduziert auch die Latenz und bietet eine reaktionsschnellere Benutzererfahrung. TensorFlow.js bietet auch Offline-Funktionen, sodass Benutzer Ihre Anwendung auch ohne Internetverbindung nutzen können. TF.js ist für die effiziente Ausführung komplexer Modelle auf Geräten mit begrenzten Ressourcen konzipiert, da es auf Skalierbarkeit mit GPU-Beschleunigungsunterstützung ausgelegt ist.

Hauptmerkmale von TF.js

Hier sind die wichtigsten Funktionen, die TF.js zu einem leistungsstarken Werkzeug für Entwickler machen:

  • Cross-Platform-Unterstützung: TensorFlow.js kann sowohl in Browser- als auch in Node.js-Umgebungen verwendet werden und bietet Flexibilität bei der Bereitstellung auf verschiedenen Plattformen. Es ermöglicht Entwicklern, Anwendungen einfacher zu erstellen und bereitzustellen.

  • Unterstützung für mehrere Backends: TensorFlow.js unterstützt verschiedene Backends für Berechnungen, einschließlich CPU, WebGL für GPU-Beschleunigung, WebAssembly (WASM) für nahezu native Ausführungsgeschwindigkeit und WebGPU für fortschrittliche browserbasierte Machine-Learning-Funktionen.

  • Offline-Funktionen: Mit TensorFlow.js können Modelle im Browser ausgeführt werden, ohne dass eine Internetverbindung erforderlich ist, wodurch die Entwicklung von Anwendungen ermöglicht wird, die offline funktionsfähig sind.

Bereitstellungsoptionen mit TensorFlow.js

Bevor wir uns mit dem Exportieren von YOLO11-Modellen in das TF.js-Format befassen, untersuchen wir einige typische Einsatzszenarien, in denen dieses Format verwendet wird.

TF.js bietet eine Reihe von Optionen zur Bereitstellung Ihrer Modelle für maschinelles Lernen:

  • In-Browser ML-Anwendungen: Sie können Webanwendungen erstellen, die Machine-Learning-Modelle direkt im Browser ausführen. Die Notwendigkeit serverseitiger Berechnungen entfällt und die Serverlast wird reduziert.

  • Node.js Applications: TensorFlow.js unterstützt auch das Deployment in Node.js-Umgebungen und ermöglicht so die Entwicklung von serverseitigen Machine-Learning-Anwendungen. Es ist besonders nützlich für Anwendungen, die die Rechenleistung eines Servers oder den Zugriff auf serverseitige Daten benötigen.

  • Chrome-Erweiterungen: Ein interessantes Einsatzszenario ist die Erstellung von Chrome-Erweiterungen mit TensorFlow.js. Sie können beispielsweise eine Erweiterung entwickeln, die es Benutzern ermöglicht, mit der rechten Maustaste auf ein Bild innerhalb einer beliebigen Webseite zu klicken, um es mithilfe eines vortrainierten ML-Modells zu klassifizieren. TensorFlow.js kann in alltägliche Web-Browsing-Erlebnisse integriert werden, um sofortige Einblicke oder Erweiterungen auf der Grundlage von Machine Learning zu ermöglichen.

Exportieren von YOLO11-Modellen nach TensorFlow.js

Sie können die Modellkompatibilität und Bereitstellungsflexibilität erweitern, indem Sie YOLO11-Modelle in TF.js konvertieren.

Installation

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

Installation

# Install the required package for YOLO11
pip install ultralytics

Detaillierte Anweisungen und Best Practices zum Installationsprozess finden Sie in unserem Ultralytics Installationshandbuch. Wenn Sie bei der Installation der erforderlichen Pakete für YOLO11 auf Schwierigkeiten stoßen, konsultieren Sie unser Handbuch zu häufigen Problemen für Lösungen und Tipps.

Nutzung

Alle Ultralytics YOLO11 Modelle sind so konzipiert, dass sie den Export standardmäßig unterstützen, wodurch die Integration in Ihren bevorzugten Deployment-Workflow vereinfacht wird. Sie können die vollständige Liste der unterstützten Exportformate und Konfigurationsoptionen anzeigen, um das beste Setup für Ihre Anwendung auszuwählen.

Nutzung

from ultralytics import YOLO

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

# Export the model to TF.js format
model.export(format="tfjs")  # creates '/yolo11n_web_model'

# Load the exported TF.js model
tfjs_model = YOLO("./yolo11n_web_model")

# Run inference
results = tfjs_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF.js format
yolo export model=yolo11n.pt format=tfjs # creates '/yolo11n_web_model'

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

Export-Argumente

Argument Typ Standard Beschreibung
format str 'tfjs' Zielformat für das exportierte Modell, das die Kompatibilität mit verschiedenen Deployment-Umgebungen definiert.
imgsz int oder tuple 640 Gewünschte Bildgröße für die Modelleingabe. Kann eine ganze Zahl für quadratische Bilder oder ein Tupel (height, width) für bestimmte Abmessungen sein.
half bool False Aktiviert die FP16-Quantisierung (halbe Präzision), wodurch die Modellgröße reduziert und potenziell die Inferenz auf unterstützter Hardware beschleunigt wird.
int8 bool False Aktiviert die INT8-Quantisierung, wodurch das Modell weiter komprimiert und die Inferenz mit minimalem Genauigkeitsverlust beschleunigt wird, hauptsächlich für Edge-Geräte.
nms bool False Fügt Non-Maximum Suppression (NMS) hinzu, die für eine genaue und effiziente Nachbearbeitung der Erkennung unerlässlich ist.
batch int 1 Gibt die Batch-Inferenzgröße des Exportmodells oder die maximale Anzahl von Bildern an, die das exportierte Modell gleichzeitig verarbeitet predict Modus.
device str None Gibt das Gerät für den Export an: CPU (device=cpu), MPS für Apple Silicon (device=mps), oder Auto-Modus mit angegebener Auslastungsfraktion (

Weitere Informationen zum Exportprozess finden Sie auf der Ultralytics-Dokumentationsseite zum Exportieren.

Bereitstellung exportierter YOLO11 TensorFlow.js-Modelle

Nachdem Sie Ihr YOLO11-Modell in das TF.js-Format exportiert haben, besteht der nächste Schritt darin, es bereitzustellen. Der primäre und empfohlene erste Schritt zum Ausführen eines TF.js-Modells ist die Verwendung des YOLO("./yolo11n_web_model") Methode, wie zuvor im Code-Snippet zur Verwendung gezeigt.

Für detaillierte Anweisungen zur Bereitstellung Ihrer TF.js-Modelle sehen Sie sich die folgenden Ressourcen an:

Zusammenfassung

In dieser Anleitung haben wir gelernt, wie man Ultralytics YOLO11-Modelle in das TensorFlow.js-Format exportiert. Durch den Export nach TF.js erhalten Sie die Flexibilität, Ihre YOLO11-Modelle auf einer Vielzahl von Plattformen zu optimieren, bereitzustellen und zu skalieren.

Weitere Informationen zur Verwendung finden Sie in der offiziellen TensorFlow.js-Dokumentation.

Weitere Informationen zur Integration von Ultralytics YOLO11 mit anderen Plattformen und Frameworks finden Sie auf unserer Seite mit dem Integrationsleitfaden. Sie ist voll von großartigen Ressourcen, die Ihnen helfen, YOLO11 in Ihren Projekten optimal zu nutzen.

FAQ

Wie exportiere ich Ultralytics YOLO11-Modelle in das TensorFlow.js-Format?

Das Exportieren von Ultralytics YOLO11-Modellen in das TensorFlow.js-Format (TF.js) ist unkompliziert. Sie können die folgenden Schritte ausführen:

Nutzung

from ultralytics import YOLO

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

# Export the model to TF.js format
model.export(format="tfjs")  # creates '/yolo11n_web_model'

# Load the exported TF.js model
tfjs_model = YOLO("./yolo11n_web_model")

# Run inference
results = tfjs_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF.js format
yolo export model=yolo11n.pt format=tfjs # creates '/yolo11n_web_model'

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

Weitere Informationen zu den unterstützten Exportoptionen finden Sie auf der Ultralytics-Dokumentationsseite zu den Bereitstellungsoptionen.

Warum sollte ich meine YOLO11-Modelle nach TensorFlow.js exportieren?

Das Exportieren von YOLO11-Modellen nach TensorFlow.js bietet mehrere Vorteile, darunter:

  1. Lokale Ausführung: Modelle können direkt im Browser oder in Node.js ausgeführt werden, wodurch die Latenz reduziert und die Benutzerfreundlichkeit verbessert wird.
  2. Cross-Platform-Unterstützung: TF.js unterstützt mehrere Umgebungen und ermöglicht so Flexibilität bei der Bereitstellung.
  3. Offline-Funktionen: Ermöglicht es Anwendungen, ohne Internetverbindung zu funktionieren, wodurch Zuverlässigkeit und Datenschutz gewährleistet werden.
  4. GPU-Beschleunigung: Nutzt WebGL für die GPU-Beschleunigung und optimiert so die Leistung auf Geräten mit begrenzten Ressourcen.

Einen umfassenden Überblick finden Sie in unseren Integrationen mit TensorFlow.js.

Wie profitieren browserbasierte Anwendungen für maschinelles Lernen von TensorFlow.js?

TensorFlow.js wurde speziell für die effiziente Ausführung von ML-Modellen in Browsern und Node.js-Umgebungen entwickelt. Hier sind die Vorteile für browserbasierte Anwendungen:

  • Reduziert die Latenz: Führt Modelle für maschinelles Lernen lokal aus und liefert sofortige Ergebnisse, ohne auf serverseitige Berechnungen angewiesen zu sein.
  • Verbessert die Privatsphäre: Bewahrt sensible Daten auf dem Gerät des Benutzers und minimiert so Sicherheitsrisiken.
  • Ermöglicht Offline-Nutzung: Modelle können ohne Internetverbindung betrieben werden, wodurch eine konsistente Funktionalität gewährleistet wird.
  • Unterstützt mehrere Backends: Bietet Flexibilität mit Backends wie CPU, WebGL, WebAssembly (WASM) und WebGPU für unterschiedliche Rechenanforderungen.

Möchten Sie mehr über TF.js erfahren? Sehen Sie sich den offiziellen TensorFlow.js-Leitfaden an.

Was sind die wichtigsten Funktionen von TensorFlow.js für die Bereitstellung von YOLO11-Modellen?

Zu den Hauptmerkmalen von TensorFlow.js gehören:

  • Cross-Platform-Unterstützung: TF.js kann sowohl in Webbrowsern als auch in Node.js verwendet werden und bietet eine umfassende Flexibilität bei der Bereitstellung.
  • Multiple Backends: Unterstützt CPU, WebGL für GPU-Beschleunigung, WebAssembly (WASM) und WebGPU für fortgeschrittene Operationen.
  • Offline-Funktionen: Modelle können direkt im Browser ohne Internetverbindung ausgeführt werden, was sie ideal für die Entwicklung reaktionsschneller Webanwendungen macht.

Für Deployment-Szenarien und ausführlichere Informationen lesen Sie unseren Abschnitt über Deployment-Optionen mit TensorFlow.js.

Kann ich ein YOLO11-Modell auf serverseitigen Node.js-Anwendungen mit TensorFlow.js bereitstellen?

Ja, TensorFlow.js ermöglicht die Bereitstellung von YOLO11-Modellen in Node.js-Umgebungen. Dies ermöglicht serverseitige Machine-Learning-Anwendungen, die von der Rechenleistung eines Servers und dem Zugriff auf serverseitige Daten profitieren. Typische Anwendungsfälle sind die Echtzeit-Datenverarbeitung und Machine-Learning-Pipelines auf Backend-Servern.

Um mit der Node.js-Bereitstellung zu beginnen, lesen Sie den Run TensorFlow.js in Node.js Leitfaden von TensorFlow.



📅 Erstellt vor 1 Jahr ✏️ Aktualisiert vor 4 Monaten

Kommentare