YOLOv5 vs. YOLOX: Architektonische Veränderungen und Leistungsmetriken
Die Landschaft der Objekterkennung hat sich rasch weiterentwickelt, wobei verschiedene Architekturen um das optimale Gleichgewicht zwischen Inferenzgeschwindigkeit und Erkennungsgenauigkeit wetteifern. Zwei wichtige Meilensteine auf diesem Weg sind YOLOv5das von Ultralytics entwickelt wurde, und YOLOX, ein auf die Forschung ausgerichtetes Modell von Megvii. Beide Modelle entstammen zwar der "You Only Look Once"-Linie, unterscheiden sich jedoch erheblich in ihrer Architekturphilosophie - insbesondere in Bezug auf ankerbasierte und ankerfreie Erkennungsmechanismen.
In diesem Vergleich werden die technischen Spezifikationen, architektonischen Unterschiede und Leistungskennzahlen beider Modelle untersucht, um Entwicklern und Forschern die Wahl des richtigen Tools für ihre Computer-Vision-Projekte zu erleichtern.
Ultralytics YOLOv5: Der technische Standard
YOLOv5 wurde 2020 veröffentlicht und entwickelte sich schnell zum Industriestandard für die praktische Objekterkennung. Im Gegensatz zu seinen Vorgängern, die in erster Linie akademische Forschungsprojekte waren, wurde YOLOv5 mit dem Fokus auf Benutzerfreundlichkeit, einfache Bereitstellung und Leistung in der Praxis entwickelt. Es wurde ein optimierter PyTorch Arbeitsablauf eingeführt, der das Training und die Bereitstellung benutzerdefinierter Modelle für ein breiteres Publikum zugänglich machte.
- Autoren: Glenn Jocher
- Organisation:Ultralytics
- Datum: 2020-06-26
- GitHub:https://github.com/ultralytics/yolov5
- Dokumente:https://docs.ultralytics.com/models/yolov5/
YOLOv5 verwendet eine ankerbasierte Architektur, bei der vordefinierte Ankerboxen zur Vorhersage von Objektpositionen verwendet werden. Es enthält eine "AutoAnchor"-Funktion, die Ankerformen entwickelt, um sie vor dem Training an benutzerdefinierte Datensätze anzupassen und eine optimale Konvergenz zu gewährleisten. Das Modell verfügt über ein CSPNet-Backbone und einen PANet-Hals, die für eine schnelle Merkmalsextraktion und -aggregation optimiert sind. Seine Hauptstärke liegt in der außergewöhnlichen Inferenzgeschwindigkeit und dem geringen Speicherbedarf, wodurch es sich ideal für Edge-Computing und mobile Anwendungen eignet.
YOLOX: Der ankerfreie Kandidat
YOLOX, das 2021 von Megvii herausgebracht wurde, versucht die Grenzen der YOLO zu erweitern, indem es ein ankerloses Design anwendet. Dieser Ansatz macht vordefinierte Ankerboxen überflüssig und sagt stattdessen die Objektzentren und -größen direkt voraus. Damit sollte der Entwurfsprozess vereinfacht und die Verallgemeinerung über verschiedene Objektformen hinweg verbessert werden.
- Autoren: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li und Jian Sun
- Organisation:Megvii
- Datum: 2021-07-18
- Arxiv:https://arxiv.org/abs/2107.08430
- GitHub:https://github.com/Megvii-BaseDetection/YOLOX
- Dokumente:https://yolox.readthedocs.io/en/latest/
YOLOX führt eine entkoppelte Kopfarchitektur ein, die die Klassifizierungs- und Regressionsaufgaben in verschiedene Zweige aufteilt. Dadurch kann das Modell theoretisch unterschiedliche Merkmalsrepräsentationen lernen, um zu erkennen, was ein Objekt ist und wo es sich befindet. Darüber hinaus verwendet es eine fortschrittliche Strategie für die Label-Zuweisung, die als SimOTA (Simplified Optimal Transport Assignment) bekannt ist, um positive Proben während des Trainings dynamisch zuzuweisen. Diese Innovationen tragen zwar zu einer hohen Genauigkeit bei, sind aber oft mit einem erhöhten Rechenaufwand verbunden.
Suchen Sie die neueste Technologie?
YOLOv5 und YOLOX sind wichtige Schritte in der Geschichte der Computer Vision, aber das Feld entwickelt sich schnell. YOLO11, das neueste Modell von Ultralytics, bietet im Vergleich zu beiden eine höhere Genauigkeit und Geschwindigkeit und verfügt über eine verfeinerte Architektur, die Erkennung, Segmentierung, Posenschätzung und mehr unterstützt.
Performance-Analyse: Geschwindigkeit vs. Genauigkeit
Beim Vergleich von YOLOv5 und YOLOX geht es in der Regel um den Kompromiss zwischen Latenzzeit und absoluter Genauigkeit der Inferenz. YOLOv5 ist sorgfältig auf Geschwindigkeit optimiert, insbesondere auf Hardware-Beschleunigern mit TensorRT und ONNX Runtime. Wie die folgenden Daten zeigen, weisen YOLOv5 eine deutlich geringere Latenz (höhere Geschwindigkeit) bei gleicher Modellgröße auf.
| Modell | Größe (Pixel) | mAPval 50-95 | Geschwindigkeit CPU ONNX (ms) | Geschwindigkeit T4 TensorRT10 (ms) | Parameter (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
Wichtige Erkenntnisse
- Inferenzgeschwindigkeit: YOLOv5 hat einen entscheidenden Geschwindigkeitsvorteil. So erreicht YOLOv5n eine TensorRT von nur 1,12 ms und eignet sich damit hervorragend für High-FPS-Videoverarbeitung auf Edge Devices wie dem NVIDIA Jetson. Im Gegensatz dazu fehlen den kleinsten YOLOX-Modellen vergleichbare Benchmark-Daten für die CPU, und ihre GPU ist im Allgemeinen höher für ähnliche Genauigkeitsstufen.
- Genauigkeit (mAP): YOLOX erreicht tendenziell etwas höhere mAP Werte im COCO , insbesondere bei seinen größeren Varianten (YOLOX-x mit 51,1 gegenüber YOLOv5x mit 50,7). Dies wird auf das ankerlose Design und den entkoppelten Kopf zurückgeführt, der besser mit Objektvariationen umgehen kann. Dieser geringfügige Gewinn geht jedoch oft auf Kosten eines deutlich höheren Rechenaufwands (FLOPs).
- Effizienz: YOLOv5 benötigen im Allgemeinen weniger FLOPs für eine bestimmte Inferenzgeschwindigkeit. Das gekoppelte Kopfdesign von YOLOv5 ist hardwarefreundlicher und ermöglicht eine schnellere Ausführung sowohl auf CPUs als auch auf GPUs.
Architektonischer Deep Dive
Der grundlegende Unterschied liegt darin, wie die einzelnen Modelle das Erkennungsproblem angehen.
YOLOv5 (ankerbasiert): YOLOv5 verwendet einen vordefinierten Satz von Ankerboxen. Während des Trainings lernt das Modell, diese Boxen so anzupassen, dass sie zu den Objekten passen. Diese Methode beruht auf der Korrelation zwischen der Größe des Objekts und der Größe der Gitterzellen.
- Vorteile: Stabiles Training, bewährte Methodik, hervorragende Leistung bei Standarddatensätzen.
- Nachteile: Erfordert die Abstimmung von Hyperparametern für Anker auf exotischen Datensätzen (obwohl YOLOv5's AutoAnchor dies abmildert).
YOLOX (ankerfrei): YOLOX behandelt die Objekterkennung als ein Punktregressionsproblem. Es sagt den Abstand vom Zentrum der Gitterzelle zu den Objektgrenzen voraus.
- Vorteile: Geringere Anzahl von Entwurfsparametern (keine abzustimmenden Anker), Potenzial für eine bessere Verallgemeinerung bei unregelmäßigen Seitenverhältnissen.
- Nachteile: Die Konvergenz kann während des Trainings langsamer sein, und der entkoppelte Kopf fügt Schichten hinzu, die die Inferenzlatenz erhöhen.
Benutzererfahrung und Ökosystem
Eines der wichtigsten Merkmale von Ultralytics YOLOv5 ist sein robustes Ökosystem. Während YOLOX eine solide akademische Grundlage bietet, stellt YOLOv5 ein produktionsreifes Framework für Entwickler dar.
Benutzerfreundlichkeit
YOLOv5 ist bekannt für seine Einfachheit von Anfang bis Ende. Von der Datenanmerkung bis zum Modelltraining und der Bereitstellung rationalisiert das Ultralytics jeden Schritt. Das Modell kann mit wenigen Zeilen Code geladen werden, und es unterstützt den automatischen Export in Formate wie TFLite, CoreMLund ONNX.
import torch
# Load a pretrained YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s")
# Run inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")
# Print results
results.print()
Vielseitigkeit und Wartung
Bei Ultralytics geht es nicht nur um Erkennung. Der Rahmen unterstützt Bildklassifizierung und Instanzsegmentierung und bietet eine einheitliche API für mehrere Aufgaben. Diese Vielseitigkeit fehlt oft in forschungsspezifischen Repositories wie YOLOX, die sich hauptsächlich auf die Erkennung konzentrieren. Darüber hinaus gewährleistet die aktive Wartung durch Ultralytics die Kompatibilität mit den neuesten Versionen von PyTorch und CUDA, wodurch die "Codefäule" im Laufe der Zeit verringert wird.
Ideale Anwendungsfälle
Wählen Sie Ultralytics YOLOv5 , wenn:
- Sie benötigen Echtzeitleistung auf Edge-Geräten (Raspberry Pi, Mobiltelefone).
- Sie legen Wert auf eine einfache Bereitstellung und benötigen integrierte Unterstützung für den Export nach TensorRT, CoreML oder TFLite.
- Sie bevorzugen ein stabiles, gut dokumentiertes Framework mit aktiver Unterstützung durch die Community.
- Ihre Anwendung umfasst die Sicherheitsüberwachung oder die autonome Navigation, bei der eine geringe Latenzzeit entscheidend ist.
Wählen Sie YOLOX, wenn:
- Sie betreiben akademische Forschung speziell zu verankerungsfreien Architekturen.
- Für einen Wettbewerb oder einen Benchmark benötigen Sie das absolute Maximum an mAP , unabhängig von der Inferenzgeschwindigkeit.
- Sie haben einen speziellen Datensatz, bei dem verankerungsbasierte Methoden nachweislich versagt haben (z. B. bei extremen Seitenverhältnissen), und AutoAnchor hat das Problem nicht behoben.
Fazit
Sowohl YOLOv5 als auch YOLOX haben sich ihren Platz in der Geschichte der Computer Vision verdient. YOLOX demonstrierte die Realisierbarkeit verankerungsfreier Detektoren in der YOLO und bot eine solide Grundlage für die akademische Forschung. Für die überwiegende Mehrheit der praktischen Anwendungen ist es jedoch nicht geeignet, Ultralytics YOLOv5 aufgrund seiner unübertroffenen Geschwindigkeit, Effizienz und seines entwicklerfreundlichen Ökosystems weiterhin die beste Wahl.
Für alle, die heute neue Projekte beginnen, empfehlen wir dringend YOLO11. Es baut auf den Stärken von YOLOv5freundlichkeit und Geschwindigkeit - und integriert gleichzeitig moderne architektonische Fortschritte, die sowohl YOLOv5 als auch YOLOX an Genauigkeit und Vielseitigkeit übertreffen.
Andere Modellvergleiche
Untersuchen Sie, wie Ultralytics Modelle im Vergleich zu anderen Architekturen in diesem Bereich abschneiden: