Link to this sectionOptimierung von YOLO26-Inferenz mit der DeepSparse Engine von Neural Magic#
Beim Bereitstellen von Objekterkennungs-Modellen wie Ultralytics YOLO26 auf verschiedenen Hardware-Plattformen können einzigartige Herausforderungen wie die Optimierung auftreten. Hier setzt die Integration von YOLO26 mit der DeepSparse Engine von Neural Magic an. Sie verändert die Art und Weise, wie YOLO26-Modelle ausgeführt werden, und ermöglicht GPU-ähnliche Leistung direkt auf CPUs.
Diese Anleitung zeigt dir, wie du YOLO26 mit DeepSparse von Neural Magic bereitstellst, wie du Inferenzen ausführst und wie du die Leistung benchmarkst, um eine optimale Performance sicherzustellen.
Neural Magic wurde im Januar 2025 von Red Hat übernommen und stellt die Community-Versionen ihrer Bibliotheken deepsparse, sparseml, sparsezoo und sparsify ein. Weitere Informationen findest du in der Mitteilung in der Readme-Datei im sparsify GitHub-Repository.
Link to this sectionDeepSparse von Neural Magic#
DeepSparse von Neural Magic ist eine Inferenz-Laufzeitumgebung, die darauf ausgelegt ist, die Ausführung neuronaler Netze auf CPUs zu optimieren. Sie wendet fortschrittliche Techniken wie Sparsity, Pruning und Quantisierung an, um den Rechenaufwand drastisch zu reduzieren und gleichzeitig die Genauigkeit beizubehalten. DeepSparse bietet eine agile Lösung für eine effiziente und skalierbare neuronale Netzwerk-Ausführung auf verschiedenen Geräten.
Link to this sectionVorteile der Integration von DeepSparse von Neural Magic mit YOLO26#
Bevor wir uns ansehen, wie du YOLO26 mit DeepSparse bereitstellst, lass uns die Vorteile von DeepSparse verstehen. Zu den wichtigsten Vorteilen gehören:
- Verbesserte Inferenzgeschwindigkeit: Erreicht bis zu 525 FPS (auf YOLO11n) und beschleunigt die YOLO-Inferenzkapazitäten im Vergleich zu herkömmlichen Methoden erheblich.
- Optimierte Modelleffizienz: Nutzt Pruning und Quantisierung, um die Effizienz von YOLO26 zu verbessern, die Modellgröße und den Rechenaufwand zu reduzieren und gleichzeitig die Genauigkeit zu wahren.
-
Hohe Leistung auf Standard-CPUs: Liefert GPU-ähnliche Leistung auf CPUs und bietet eine zugänglichere und kostengünstigere Option für verschiedene Anwendungen.
-
Optimierte Integration und Bereitstellung: Bietet benutzerfreundliche Tools für eine einfache Integration von YOLO26 in Anwendungen, einschließlich Funktionen zur Bild- und Videoannotation.
-
Unterstützung für verschiedene Modelltypen: Kompatibel mit sowohl Standard- als auch Sparsity-optimierten YOLO26-Modellen, was die Flexibilität bei der Bereitstellung erhöht.
-
Kostengünstige und skalierbare Lösung: Reduziert die Betriebskosten und bietet eine skalierbare Bereitstellung fortschrittlicher Objekterkennungsmodelle.
Link to this sectionWie funktioniert die DeepSparse-Technologie von Neural Magic?#
Die DeepSparse-Technologie von Neural Magic ist von der Effizienz des menschlichen Gehirns bei der Berechnung neuronaler Netze inspiriert. Sie übernimmt zwei Schlüsselprinzipien des Gehirns wie folgt:
-
Sparsity: Der Prozess der Sparsifizierung beinhaltet das Entfernen redundanter Informationen aus Deep Learning-Netzwerken, was zu kleineren und schnelleren Modellen führt, ohne die Genauigkeit zu beeinträchtigen. Diese Technik reduziert die Größe und den Rechenbedarf des Netzwerks erheblich.
-
Lokalität der Referenz: DeepSparse verwendet eine einzigartige Ausführungsmethode, bei der das Netzwerk in Tensor-Spalten unterteilt wird. Diese Spalten werden tiefenorientiert ausgeführt und passen vollständig in den CPU-Cache. Dieser Ansatz ahmt die Effizienz des Gehirns nach, minimiert die Datenbewegung und maximiert die Ausnutzung des CPU-Caches.
Link to this sectionErstellen einer Sparse-Version von YOLO26, trainiert auf einem benutzerdefinierten Datensatz#
SparseZoo, ein Open-Source-Modell-Repository von Neural Magic, bietet eine Sammlung von vor-sparsifizierten YOLO26-Modell-Checkpoints. Mit SparseML, das nahtlos in Ultralytics integriert ist, können Benutzer diese Sparse-Checkpoints mühelos auf ihren spezifischen Datensätzen über eine einfache Befehlszeilenschnittstelle feinabstimmen.
Schau dir die Neural Magic SparseML YOLO26 Dokumentation für weitere Details an.
Link to this sectionVerwendung: Bereitstellung von YOLO26 mit DeepSparse#
Die Bereitstellung von YOLO26 mit der DeepSparse-Technologie von Neural Magic umfasst einige einfache Schritte. Bevor du mit den Anwendungshinweisen beginnst, schau dir unbedingt die Reihe der von Ultralytics angebotenen YOLO26-Modelle an. Dies hilft dir bei der Auswahl des am besten geeigneten Modells für deine Projektanforderungen. Hier ist, wie du starten kannst.
Link to this sectionSchritt 1: Installation#
Um die erforderlichen Pakete zu installieren, führe aus:
# Install the required packages
pip install deepsparse[yolov8]Link to this sectionSchritt 2: Exportieren von YOLO26 in das ONNX-Format#
Die DeepSparse Engine benötigt YOLO26-Modelle im ONNX-Format. Das Exportieren deines Modells in dieses Format ist für die Kompatibilität mit DeepSparse unerlässlich. Verwende den folgenden Befehl, um YOLO26-Modelle zu exportieren:
# Export YOLO26 model to ONNX format
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13Dieser Befehl speichert das yolo26n.onnx-Modell auf deiner Festplatte.
Link to this sectionSchritt 3: Bereitstellung und Ausführung von Inferenzen#
Mit deinem YOLO26-Modell im ONNX-Format kannst du Inferenzen mit DeepSparse bereitstellen und ausführen. Dies lässt sich einfach mit deren intuitiver Python API erledigen:
from deepsparse import Pipeline
# Specify the path to your YOLO26 ONNX model
model_path = "path/to/yolo26n.onnx"
# Set up the DeepSparse Pipeline
yolo_pipeline = Pipeline.create(task="yolov8", model_path=model_path)
# Run the model on your images
images = ["path/to/image.jpg"]
pipeline_outputs = yolo_pipeline(images=images)Link to this sectionSchritt 4: Benchmarking der Leistung#
Es ist wichtig zu prüfen, ob dein YOLO26-Modell optimal auf DeepSparse läuft. Du kannst die Leistung deines Modells benchmarken, um Durchsatz und Latenz zu analysieren:
# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"Link to this sectionSchritt 5: Zusätzliche Funktionen#
DeepSparse bietet zusätzliche Funktionen für die praktische Integration von YOLO26 in Anwendungen, wie z. B. Bildannotation und Datensatzevaluierung.
# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolo26n.onnx"
# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolo26n.onnx"Die Ausführung des annotate-Befehls verarbeitet dein angegebenes Bild, erkennt Objekte und speichert das annotierte Bild mit Begrenzungsrahmen und Klassifizierungen. Das annotierte Bild wird in einem Ordner namens annotation-results gespeichert. Dies hilft dabei, eine visuelle Darstellung der Erkennungsfähigkeiten des Modells zu erhalten.
Nach dem Ausführen des eval-Befehls erhältst du detaillierte Ausgabemetriken wie Präzision, Recall und mAP (mean Average Precision). Dies bietet einen umfassenden Überblick über die Leistung deines Modells auf dem Datensatz und ist besonders nützlich für die Feinabstimmung und Optimierung deiner YOLO26-Modelle für spezifische Anwendungsfälle, um eine hohe Genauigkeit und Effizienz sicherzustellen.
Link to this sectionZusammenfassung#
Dieser Leitfaden untersuchte die Integration von Ultralytics YOLO26 mit der DeepSparse Engine von Neural Magic. Es wurde hervorgehoben, wie diese Integration die Leistung von YOLO26 auf CPU-Plattformen verbessert und GPU-ähnliche Effizienz sowie fortschrittliche Sparsity-Techniken für neuronale Netze bietet.
Für detailliertere Informationen und fortgeschrittene Nutzung besuche die DeepSparse-Dokumentation von Neural Magic. Du kannst auch den YOLO26-Integrationsleitfaden erkunden und eine Walkthrough-Session auf YouTube ansehen.
Für ein breiteres Verständnis verschiedener YOLO26-Integrationen besuche zudem die Seite des Ultralytics-Integrationsleitfadens, auf der du eine Reihe weiterer spannender Integrationsmöglichkeiten entdecken kannst.
Link to this sectionFAQ#
Link to this sectionWas ist die DeepSparse Engine von Neural Magic und wie optimiert sie die YOLO26-Leistung?#
Die DeepSparse Engine von Neural Magic ist eine Inferenz-Laufzeitumgebung, die darauf ausgelegt ist, die Ausführung neuronaler Netze auf CPUs durch fortschrittliche Techniken wie Sparsity, Pruning und Quantisierung zu optimieren. Durch die Integration von DeepSparse mit YOLO26 kannst du GPU-ähnliche Leistung auf Standard-CPUs erzielen, was die Inferenzgeschwindigkeit, Modelleffizienz und Gesamtleistung bei gleichbleibender Genauigkeit deutlich verbessert. Weitere Details findest du im Abschnitt DeepSparse von Neural Magic.
Link to this sectionWie kann ich die benötigten Pakete installieren, um YOLO26 mit DeepSparse von Neural Magic bereitzustellen?#
Die Installation der erforderlichen Pakete für die Bereitstellung von YOLO26 mit DeepSparse von Neural Magic ist unkompliziert. Du kannst sie einfach über die CLI installieren. Hier ist der Befehl, den du ausführen musst:
pip install deepsparse[yolov8]Sobald die Installation abgeschlossen ist, folge den Schritten im Abschnitt Installation, um deine Umgebung einzurichten und DeepSparse mit YOLO26 zu verwenden.
Link to this sectionWie konvertiere ich YOLO26-Modelle in das ONNX-Format für die Verwendung mit DeepSparse?#
Um YOLO26-Modelle in das ONNX-Format zu konvertieren, das für die Kompatibilität mit DeepSparse erforderlich ist, kannst du den folgenden CLI-Befehl verwenden:
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13Dieser Befehl exportiert dein YOLO26-Modell (yolo26n.pt) in ein Format (yolo26n.onnx), das von der DeepSparse Engine genutzt werden kann. Weitere Informationen zum Modellexport findest du im Abschnitt Modellexport.
Link to this sectionWie benche ich die YOLO26-Leistung auf der DeepSparse Engine?#
Das Benchmarking der YOLO26-Leistung auf DeepSparse hilft dir, Durchsatz und Latenz zu analysieren, um sicherzustellen, dass dein Modell optimiert ist. Du kannst den folgenden CLI-Befehl verwenden, um einen Benchmark durchzuführen:
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"Dieser Befehl liefert dir wichtige Leistungsmetriken. Weitere Details findest du im Abschnitt Benchmarking der Leistung.
Link to this sectionWarum sollte ich DeepSparse von Neural Magic mit YOLO26 für Objekterkennungsaufgaben verwenden?#
Die Integration von DeepSparse von Neural Magic mit YOLO26 bietet mehrere Vorteile:
- Verbesserte Inferenzgeschwindigkeit: Erreicht bis zu 525 FPS (auf YOLO11n), was die Optimierungsmöglichkeiten von DeepSparse demonstriert.
- Optimierte Modelleffizienz: Verwendet Sparsity-, Pruning- und Quantisierungstechniken, um die Modellgröße und den Rechenbedarf bei gleichbleibender Genauigkeit zu reduzieren.
- Hohe Leistung auf Standard-CPUs: Bietet GPU-ähnliche Leistung auf kostengünstiger CPU-Hardware.
- Optimierte Integration: Benutzerfreundliche Tools für eine einfache Bereitstellung und Integration.
- Flexibilität: Unterstützt sowohl Standard- als auch Sparsity-optimierte YOLO26-Modelle.
- Kosteneffizient: Senkt die Betriebskosten durch effiziente Ressourcennutzung.
Für einen tieferen Einblick in diese Vorteile besuche den Abschnitt Vorteile der Integration von DeepSparse von Neural Magic mit YOLO26.