Zum Inhalt springen

YOLO vs. YOLOv7: Ein detaillierter technischer Vergleich

Die Auswahl der optimalen Architektur für die Objekterkennung ist eine zentrale Entscheidung bei der Entwicklung von Computer Vision. Die Wahl erfordert oft ein Abwägen zwischen Inferenzlatenz und Erkennungsgenauigkeit bei gleichzeitiger Berücksichtigung der Hardwarebeschränkungen für den Einsatz. In diesem technischen Vergleich werden YOLO und YOLOv7 untersucht, zwei einflussreiche Modelle, die 2022 veröffentlicht wurden und die Grenzen der Echtzeiterkennung verschoben haben. Wir analysieren ihre architektonischen Innovationen, Benchmark-Leistungen und idealen Anwendungsszenarien, um Ihnen bei der Modellauswahl zu helfen.

YOLO: Neuronale Architektursuche für Randeffektivität

YOLO wurde von der Alibaba Group mit besonderem Augenmerk auf die Maximierung der Leistung für industrielle Anwendungen entwickelt. Es zeichnet sich dadurch aus, dass es eine neuronale Architektursuche (NAS) zur Automatisierung des Entwurfs seines Backbone einsetzt und so optimale Effizienz gewährleistet.

Architektonische Innovationen

YOLO führt mehrere innovative Technologien ein, die darauf abzielen, den Rechenaufwand zu verringern und gleichzeitig eine hohe Präzision zu gewährleisten:

  1. MAE-NAS-Backbone (GiraffeNet): Im Gegensatz zu herkömmlichen manuell entworfenen Backbones verwendet YOLO einen MAE-NAS-Ansatz (Method-Aware Efficiency). Daraus resultiert eine Backbone-Serie namens GiraffeNet, die einen hervorragenden Kompromiss zwischen Gleitkomma-Operationen (FLOPs) und Latenz unter verschiedenen Hardware-Einschränkungen bietet.
  2. Effizientes RepGFPN: Das Modell verfügt über ein verallgemeinertes Merkmalspyramidennetzwerk (GFPN), das durch Neuparametrisierung optimiert wurde. Dieses "RepGFPN" ermöglicht eine effiziente Merkmalsfusion in mehreren Maßstäben, die für die Erkennung von Objekten unterschiedlicher Größe unerlässlich ist, ohne dass die mit Standard-FPNs verbundenen hohen Rechenkosten anfallen.
  3. ZeroHead: Ein neuartiges "ZeroHead"-Design vereinfacht den Erkennungskopf erheblich. Durch die Entkopplung der Klassifizierungs- und Regressionsaufgaben und die Entfernung der komplexen spezifischen Schicht wird die Anzahl der Parameter des Kopfes während der Inferenz auf Null reduziert, wodurch Speicherplatz gespart und die Geschwindigkeit erhöht wird.
  4. AlignedOTA: Um die Trainingsstabilität und -genauigkeit zu verbessern, verwendet YOLO AlignedOTA, eine dynamische Label-Zuweisungsstrategie, die das Problem der Diskrepanz zwischen Klassifizierungssicherheit und Regressionsgenauigkeit löst.

Stärken und Anwendungsfälle

YOLO eignet sich hervorragend für Umgebungen, in denen die Latenz kritisch ist. Seine kleineren Varianten (Tiny/Small) sind besonders effektiv für Edge-KI-Einsätze.

  • Industrielle Automatisierung: Ideal für Hochgeschwindigkeitsfließbänder, bei denen Millisekunden zählen.
  • Mobile Anwendungen: Aufgrund der geringen Anzahl von Parametern eignet sich das Programm auch für Smartphones mit begrenzter Rechenleistung.

Erfahren Sie mehr über DAMO-YOLO

YOLOv7: Optimierung der Echtzeit-Genauigkeit

YOLOv7, das kurz vor YOLO veröffentlicht wurde, setzte neue Maßstäbe für modernste Leistung im Bereich von 5 FPS bis 160 FPS. Es konzentrierte sich stark auf die Optimierung des Trainingsprozesses und des Gradientenflusses, um eine höhere Genauigkeit zu erreichen, ohne die Kosten für die Inferenz zu erhöhen.

Architektonische Innovationen

YOLOv7 führte "Bag-of-Freebies"-Methoden ein, die die Genauigkeit beim Training verbessern, ohne die Struktur des Inferenzmodells zu beeinträchtigen:

  1. E-ELAN (Extended Efficient Layer Aggregation Network): Diese Architektur steuert die kürzesten und längsten Gradientenpfade und ermöglicht es dem Netz, mehr verschiedene Merkmale zu lernen. Sie verbessert die Lernfähigkeit der "Kardinalität", ohne den ursprünglichen Zustand des Gradientenpfads zu zerstören.
  2. Modellskalierung für konkatenationsbasierte Modelle: YOLOv7 schlägt eine zusammengesetzte Skalierungsmethode vor, die Tiefe und Breite gleichzeitig für verkettungsbasierte Architekturen skaliert und so eine optimale Nutzung der Parameter gewährleistet.
  3. Trainierbare Bag-of-Freebies: Es werden Techniken wie die geplante Neuparametrisierung und die Überwachung von Hilfsköpfen (von grob nach fein) eingesetzt. Diese verbessern die Robustheit und Genauigkeit des Modells während des Trainings, werden aber während der Inferenz zusammengeführt oder verworfen, wodurch das Modell schnell bleibt.

Stärken und Anwendungsfälle

YOLOv7 ist ein Kraftpaket für die allgemeine Objekterkennung und bietet eine hervorragende mittlere Präzision (mAP ) bei Standarddatensätzen wie MS COCO.

  • Smart City-Überwachung: Seine hohe Genauigkeit macht ihn zu einer zuverlässigen Lösung für die Erkennung von Fußgängern und Fahrzeugen in komplexen städtischen Umgebungen.
  • Autonome Systeme: Geeignet für Robotik und Drohnen, die eine zuverlässige Erkennung über größere Entfernungen erfordern und bei denen eine höhere Auflösung von Vorteil ist.

Erfahren Sie mehr über YOLOv7

Leistungsvergleich

In der folgenden Tabelle wird die Leistung von YOLO und YOLOv7 gegenübergestellt. Während YOLO im Verhältnis zu seiner Größe häufig eine geringere Latenz (höhere Geschwindigkeit) erreicht, genießt YOLOv7 im Allgemeinen einen guten Ruf in Bezug auf die Genauigkeit, insbesondere in seinen größeren Konfigurationen.

ModellGröße
(Pixel)
mAPval
50-95
Geschwindigkeit
CPU ONNX
(ms)
Geschwindigkeit
T4 TensorRT10
(ms)
Parameter
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Die Daten zeigen, dass YOLO für stark eingeschränkte Umgebungen eine sehr leichtgewichtige Lösung bietet (8,5 Millionen Parameter für die kleine Version). Allerdings, YOLOv7 mit seiner X-Variante eine Genauigkeit von 53,1 % mAP, wenn auch mit höheren Rechenkosten.

Kompromisse bei der Architektur

Während das NAS-basierte Backbone von YOLO speziell für die Latenz optimiert ist, konzentriert sich das manuelle Architekturdesign von YOLOv7 auf die Effizienz des Gradientenflusses. Benutzer sollten beide auf ihrer spezifischen Hardware testen, da theoretische FLOPs nicht immer perfekt mit der realen Inferenzgeschwindigkeit korrelieren.

Der Ultralytics : Warum aufrüsten?

Während sowohl YOLO als auch YOLOv7 bedeutende Errungenschaften in der Geschichte der Computer Vision darstellen, entwickelt sich das Feld schnell weiter. Für Entwickler, die die robustesten, vielseitigsten und benutzerfreundlichsten Lösungen suchen, Ultralytics YOLO11 und YOLOv8 die empfohlene Wahl.

Ultralytics sind nicht nur als Forschungsartefakte, sondern als umfassende Produktionswerkzeuge konzipiert. Sie befassen sich mit den Problemen der "letzten Meile" beim KI-Einsatz - Nutzbarkeit, Integration und Wartung.

Die wichtigsten Vorteile der Ultralytics

  • Benutzerfreundlichkeit: Mit einer vereinheitlichten Python und CLI können Sie ein hochmodernes Modell in wenigen Zeilen Code trainieren. Es besteht keine Notwendigkeit, komplexe Konfigurationsdateien manuell anzupassen oder mit Abhängigkeiten zu kämpfen.
  • Gut gepflegtes Ökosystem: Ultralytics bietet ein florierendes Ökosystem mit häufigen Aktualisierungen, in dem Fehler schnell identifiziert und behoben werden. Der Support ist durch eine umfangreiche Dokumentation und aktive Community-Kanäle leicht zugänglich.
  • Leistungsbilanz: Modelle wie YOLO11 verwenden fortschrittliche verankerungsfreie Detektionsköpfe und optimierte Backbones, um im Vergleich zu YOLOv7 und YOLO ein besseres Verhältnis zwischen Genauigkeit und Geschwindigkeit zu erreichen.
  • Vielseitigkeit: Im Gegensatz zu älteren Modellen, die sich oft auf die Erkennung beschränken, unterstützt Ultralytics YOLO die Segmentierung von Instanzen, die Schätzung von Posen, die orientierte Objekterkennung (OBB) und die Klassifizierung von Anfang an.
  • Trainingseffizienz: Vorgefertigte Gewichte und optimierte Datenlader sorgen für eine schnellere Konvergenz und sparen GPU und Energie.
from ultralytics import YOLO

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

# Train on COCO8 dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

Erfahren Sie mehr über YOLO11

Fazit

YOLO und YOLOv7 haben jeweils unterschiedliche Vorzüge. YOLO ist ein guter Kandidat für Projekte, bei denen die Geschwindigkeit der Edge-Inferenz die wichtigste Einschränkung ist, da es NAS nutzt, um Millisekunden einzusparen. YOLOv7 bleibt eine solide Wahl für Forscher, die eine hochpräzise Erkennung mit einer bewährten Architektur suchen.

Für die meisten kommerziellen und Forschungsanwendungen werden heute jedoch die Ultralytics YOLO Ökosystem eine überlegene Erfahrung. Durch die Kombination modernster Leistung mit unübertroffener Benutzerfreundlichkeit und Vielseitigkeit ermöglichen Ultralytics es Entwicklern, sich auf die Schaffung von Werten zu konzentrieren, anstatt Code zu debuggen. Unabhängig davon, ob Sie die Software auf einem Cloud-Server oder einem Edge-Gerät wie dem NVIDIA Jetson bereitstellen, bietet Ultralytics den effizientesten Weg zur Produktion.

Andere Modelle

Wenn Sie sich mit Architekturen zur Objekterkennung befassen, könnten Sie auch an diesen Modellen interessiert sein:

  • Ultralytics YOLOv8: Ein äußerst vielseitiges Modell, das Erkennungs-, Segmentierungs- und Posenaufgaben unterstützt.
  • Ultralytics YOLO11: Die neueste Entwicklung der YOLO , die sich durch höchste Effizienz auszeichnet.
  • RT-DETR: Ein Echtzeit-Detektor auf Transformatorbasis, der NMS vermeidet.
  • YOLOv9: Verfügt über programmierbare Gradienteninformationen (PGI) für verbessertes Lernen.
  • YOLOv10: Konzentriert sich auf NMS End-to-End-Training für geringere Latenzzeiten.

Kommentare