YOLO . YOLOv8: Architektonische Weiterentwicklung in der Objekterkennung
Das Streben nach Echtzeit-Objekterkennung hat zu bedeutenden Innovationen im Bereich des Designs neuronaler Netze geführt. Zwei herausragende Architekturen, die diese Landschaft geprägt haben, sindYOLO, entwickelt vom Forschungsteam von Alibaba, und YOLOv8, entwickelt von Ultralytics. Dieser Vergleich untersucht die technischen Unterschiede zwischen diesen Modellen und beleuchtet ihre Trainingsstrategien, architektonische Effizienz und Eignung für den Einsatz.
DAMO-YOLO
Autoren: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang und Xiuyu Sun
Organisation: Alibaba Group
Datum: 23.11.2022
Arxiv: https://arxiv.org/abs/2211.15444v2
GitHub: YOLO
YOLOv8
Autoren: Glenn Jocher, Ayush Chaurasia und Jing Qiu
Organisation: Ultralytics
Datum: 10.01.2023
GitHub: ultralytics
Dokumente: yolov8
Architekturphilosophien
Der wesentliche Unterschied zwischen diesen beiden Modellen liegt in ihrem Designursprung.YOLO stark auf automatisierte Suchstrategien, während YOLOv8 das manuelle Architekturdesign durch umfangreiche empirische Tests YOLOv8 .
YOLO: Neuronale Architektursuche (NAS)
YOLO einen technologiebasierten Ansatz namens MAE-NAS (Method-Automated Efficiency Neural Architecture Search)YOLO . Anstatt Blöcke manuell zu entwerfen, verwendeten die Autoren Neural Architecture Search, um unter bestimmten Latenzbedingungen ein effizientes Backbone zu finden.
Wesentliche Architekturkomponenten umfassen:
- MAE-NAS-Backbone: Eine Struktur, die automatisch optimiert wird, um die Erkennungsgenauigkeit mit der Inferenzgeschwindigkeit in Einklang zu bringen.
- Effizientes RepGFPN: Ein verallgemeinertes Feature Pyramid Network (FPN), das durch Neuparametrisierung die Merkmalsfusion verbessert, ohne die Inferenzkosten zu erhöhen.
- ZeroHead: Ein leichter Erkennungskopf, der entwickelt wurde, um die Rechenlast auf den letzten Ausgabeschichten zu reduzieren.
- AlignedOTA: Eine dynamische Strategie zur Zuweisung von Labels, die die Diskrepanz zwischen Klassifizierungs- und Regressionsaufgaben löst.
YOLOv8: Verfeinertes manuelles Design
YOLOv8 auf dem Erbe der YOLO YOLOv8 und führt das C2f-Modul (Cross-Stage Partial Bottleneck mit zwei Faltungen) ein. Dieses Modul wurde entwickelt, um die Gradientenflussinformationen zu verbessern, sodass das Netzwerk komplexere Merkmale lernen kann, während es gleichzeitig leichtgewichtig bleibt.
Wesentliche Architekturmerkmale umfassen:
- Ankerfreie Erkennung: YOLOv8 Ankerboxen und sagt die Objektmitten direkt voraus. Dies vereinfacht den NMS und reduziert die Anzahl der Hyperparameter, die Benutzer anpassen müssen.
- Entkoppelter Kopf: Er trennt die Klassifizierungs- und Regressionszweige voneinander, sodass beide effektiver konvergieren können.
- Mosaik-Augmentation: Eine fortschrittliche Trainingstechnik, bei der vier Bilder zu einem kombiniert werden, wodurch das Modell gezwungen wird, Kontext- und Skaleninvarianz zu lernen.
Leistungsmetriken
Die folgende Tabelle vergleicht die Leistung vonYOLO YOLOv8 des COCO . WährendYOLO mAP intensive Destillation mAP beeindruckenden mAP YOLO , bietet YOLOv8 überlegene Inferenzgeschwindigkeiten und eine geringere Komplexität bei der Bereitstellung.
| Modell | Größe (Pixel) | mAPval 50-95 | Geschwindigkeit CPU ONNX (ms) | Geschwindigkeit T4 TensorRT10 (ms) | Parameter (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
Trainingseffizienz und Komplexität
Ein entscheidender Unterschied für Entwickler ist die Trainingspipeline.YOLO eine ausgeklügelte Destillationsstrategie. Um Spitzenergebnisse zu erzielen, muss zunächst ein großes „Lehrer”-Modell trainiert werden, das die kleineren „Schüler”-Modelle anleitet. Dies führt zwar zu einer hohen Genauigkeit, verkompliziert jedoch den Trainingsablauf erheblich, erhöht den Bedarf GPU und verlängert die Trainingszeit.
Im Gegensatz dazu legen Ultralytics den Schwerpunkt auf Trainingseffizienz. YOLOv8 einen „Bag of Freebies”-Ansatz, bei dem architektonische Entscheidungen und Augmentierungsstrategien (wie MixUp Mosaic) für eine höhere Genauigkeit sorgen, ohne dass eine mehrstufige Destillationspipeline erforderlich ist. Dadurch lässt sich YOLOv8 auf handelsüblicher Hardware YOLOv8 schneller trainieren, was die Einstiegshürde für benutzerdefinierte Datensätze senkt.
Ressourceneffizienz
Ultralytics YOLO weisen im Vergleich zu komplexen Transformer-basierten Modellen oder Destillations-Pipelines in der Regel geringere Speicheranforderungen sowohl während des Trainings als auch während der Inferenz auf. Dies ermöglicht größere Batch-Größen und schnellere Experimente auf Standard-GPUs.
Der Vorteil des Ultralytics-Ökosystems
WährendYOLO neuartige akademische BeiträgeYOLO , bietet das Ultralytics einen deutlichen Vorteil für die Entwicklung realer Anwendungen.
Vielseitigkeit jenseits der Erkennung
YOLO in erster Linie für die Erkennung von Begrenzungsrahmen entwickelt. Das Ultralytics hingegen ist von Haus aus multitaskingfähig. Mit einer einzigen API können Entwickler folgende Aufgaben ausführen:
- Instanzsegmentierung für präzises Maskieren auf Pixelebene.
- Posenabschätzung für Skelettverfolgung.
- Orientierte Begrenzungsbox (OBB) für die Erkennung von Objekten aus der Luft und gedrehten Objekten.
- Bildklassifizierung für die Kategorisierung ganzer Bilder.
Benutzerfreundlichkeit und einfache Bereitstellung
Ultralytics eine optimierte Benutzererfahrung. Das Python ermöglicht Training, Validierung und Bereitstellung mit weniger als fünf Zeilen Code. Darüber hinaus ermöglichen die umfangreichen Exportoptionen eine nahtlose Konvertierung in ONNX, TensorRT, CoreML, TFLite und OpenVINO, sodass Modelle auf allen Plattformen bereitgestellt werden können, von Cloud-Servern bis hin zu Raspberry Pis.
Die Zukunft der visuellen KI: YOLO26
Für Entwickler, die auf der Suche nach dem absoluten Stand der Technik für 2026 sind, Ultralytics YOLO26. Aufbauend auf den Erfolgen von YOLOv8 YOLO11führt YOLO26 grundlegende Änderungen in der Architektur ein, um Geschwindigkeit und Stabilität zu verbessern.
End-to-End NMS-freies Design
Im Gegensatz zuYOLO YOLOv8, die eine Nachbearbeitung mit Non-Maximum Suppression (NMS) erfordern, um überlappende Boxen zu filtern, ist YOLO26 von Haus aus durchgängig. Dieser Durchbruch, der erstmals in YOLOv10, macht NMS überflüssig. Dies führt zu vereinfachten Bereitstellungspipelines und geringerer Latenz, insbesondere in Szenarien mit vielen erkannten Objekten.
Fortgeschrittene Optimierung und Verlustfunktionen
YOLO26 integriert den MuSGD-Optimierer, eine Mischung aus SGD Muon (inspiriert von den LLM-Trainingsinnovationen von Moonshot AI's Kimi K2). Dies bringt die Stabilität des Trainings großer Sprachmodelle in die Bildverarbeitung und führt zu einer schnelleren Konvergenz. Darüber hinaus verbessern die Entfernung von Distribution Focal Loss (DFL) und die Einführung von ProgLoss und STAL (Soft Task-Aligned Loss) die Leistung bei kleinen Objekten erheblich – eine häufige Herausforderung in der Robotik und im IoT.
Leistungsbalance
YOLO26 ist für Edge-Computing optimiert und bietet im Vergleich zu früheren Generationen CPU um bis zu 43 % schnellere CPU . Damit ist es die ideale Wahl für Anwendungen, die auf Geräten ohne dedizierte GPUs laufen, und übertrifft die Effizienz älterer NAS-basierter Ansätze.
Code-Beispiel: Ultralytics
Das folgende Beispiel zeigt, wie einfach Entwickler mit der Ultralytics zwischen Modellgenerationen wechseln können. Diese Flexibilität ermöglicht ein schnelles Benchmarking von YOLOv8 dem neueren YOLO26 anhand eines benutzerdefinierten Datensatzes.
from ultralytics import YOLO
# Load the models
model_v8 = YOLO("yolov8n.pt")
model_v26 = YOLO("yolo26n.pt") # Recommended for new projects
# Train YOLO26 on a custom dataset
# The MuSGD optimizer and ProgLoss are handled automatically
results = model_v26.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the NMS-free architecture
# No post-processing tuning required
prediction = model_v26("https://ultralytics.com/images/bus.jpg")
prediction[0].show()
Zusammenfassung
SowohlYOLO YOLOv8 bedeutende Meilensteine in der Bildverarbeitung YOLOv8 .YOLO die Leistungsfähigkeit der neuronalen Architektursuche und -destillation für die Erzielung hoher Genauigkeit. Für die meisten Entwickler, Forscher und Unternehmen gilt jedoch Ultralytics YOLOv8– und insbesondere das neuere YOLO26– eine überlegene Balance.
Die Kombination aus einem gut gepflegten Ökosystem, einfacher Bedienung, vielseitiger Aufgabenunterstützung und innovativen Funktionen wie NMS Erkennung macht Ultralytics ersten Wahl für skalierbare und zukunftssichere KI-Lösungen. Entwickler, die nach anderen leistungsstarken Optionen suchen, können auch Folgendes in Betracht ziehen RT-DETR für transformatorbasierte Genauigkeit oder YOLO11 für bewährte Robustheit in Betracht ziehen.