Zum Inhalt springen

YOLO . PP-YOLOE+: Eine technische Vertiefung in die industrielle Objekterkennung

Im hart umkämpften Bereich der Echtzeit-Objekterkennung haben sich zwei Modelle als wichtige Meilensteine für industrielle Anwendungen herauskristallisiert: YOLO, entwickelt von der Alibaba Group, und PP-YOLOE+, der Flaggschiff-Detektor aus PaddlePaddle von Baidu. Beide Architekturen legen Wert auf ein ausgewogenes Verhältnis zwischen Inferenzgeschwindigkeit und Erkennungsgenauigkeit, erreichen diese Ziele jedoch durch sehr unterschiedliche technische Ansätze.

Dieser umfassende Leitfaden analysiert ihre architektonischen Innovationen, vergleicht ihre Leistungskennzahlen und stellt Ultralytics vor, ein Modell der nächsten Generation, das die Standards für Benutzerfreundlichkeit und Edge-Bereitstellung neu definiert.

DAMO-YOLO Übersicht

YOLO Distillation-Augmented MOdel) wurde eingeführt, um die Leistungsgrenzen durch automatisiertes Architekturdesign und fortschrittliche Trainingstechniken zu erweitern.

Autoren: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang und Xiuyu Sun
Organisation:Alibaba Group
Datum: 23. November 2022
Arxiv:YOLO
GitHub:YOLO

Architektonische Innovationen

YOLO vom traditionellen manuellen Design durch die Einbindung von Neural Architecture Search (NAS). Zu seinen Kernkomponenten gehören:

  • MAE-NAS-Backbone: Die Backbone-Struktur wird automatisch mithilfe der Method of Auxiliary Edges (MAE-NAS) ermittelt, um den Durchsatz unter bestimmten Latenzbeschränkungen zu maximieren.
  • RepGFPN: Ein Heavyneck-Design, das auf dem Generalized Feature Pyramid Network (GFPN) basiert. Es nutzt unterschiedliche Kanaldimensionen über verschiedene Skalierungsebenen hinweg, um die Merkmalsfusion zu optimieren, ohne die hohen Rechenkosten typischer BiFPNs zu verursachen.
  • ZeroHead: Ein schlanker Erkennungskopf, der die Komplexität der letzten Vorhersageschichten minimiert und so während der Inferenz wertvolle Millisekunden spart.
  • AlignedOTA: Eine verbesserte Strategie zur Zuweisung von Labels, die Probleme mit der Fehlausrichtung zwischen Klassifizierungs- und Regressionsaufgaben während des Trainings löst.

Stärken und Schwächen

Die größte Stärke vonYOLO sein latenzorientiertes Design. Durch die Verwendung von NAS holt es die maximale Genauigkeit aus einem bestimmten Rechenbudget heraus. Diese Komplexität kann jedoch ein zweischneidiges Schwert sein: Die NAS-basierte Architektur lässt sich im Vergleich zu manuell entworfenen Architekturen nur schwer für benutzerdefinierte Datensätze modifizieren oder feinabstimmen. Darüber hinaus erhöht die Abhängigkeit von Distillation (bei der ein großes Lehrer-Modell das Schüler-Modell anleitet) die Komplexität der Trainingspipeline.

PP-YOLOE+ Übersicht

PP-YOLOE+ ist die Weiterentwicklung von PP-YOLOE und bildet den Grundstein der PaddleDetection-Suite. Der Schwerpunkt liegt dabei auf der Vielseitigkeit der Cloud- und Edge-Bereitstellung.

Autoren: PaddlePaddle
Organisation:Baidu
Datum: 2. April 2022
Arxiv:PP-YOLOE-Artikel
GitHub:PaddlePaddle

Architektonische Innovationen

PP-YOLOE+ baut auf dem ankerfreien Paradigma auf und legt den Schwerpunkt auf Verfeinerung und Trainingsstabilität:

  • CSPRepResStage: Das Backbone nutzt eine skalierbare CSP-Struktur (Cross Stage Partial) mit reparametrisierbaren Restblöcken, was eine komplexe Merkmalsextraktion während des Trainings und vereinfachte Operationen während der Inferenz ermöglicht.
  • Task Alignment Learning (TAL): Ein dynamisches Schema zur Zuweisung von Labels, das die Ankerpunkte explizit mit den Ground-Truth-Objekten abgleicht, basierend sowohl auf der Klassifizierungspunktzahl als auch auf IoU Intersection over Union).
  • Effektives Squeeze-and-Excitation (ESE): Ein in das Backbone integrierter Aufmerksamkeitsmechanismus, der die Merkmalsdarstellung durch Neukalibrierung der kanalbezogenen Merkmalsreaktionen verbessert.

Stärken und Schwächen

PP-YOLOE+ zeichnet sich durch seine Integration in das Ökosystem aus. Als Teil des PaddlePaddle bietet es eine starke Unterstützung für verschiedene Bereitstellungsziele, darunter serverseitige GPUs und mobile Geräte. Seine Leistung bei PyTorch kann jedoch durch die Notwendigkeit beeinträchtigt werden, Modelle zu konvertieren oder an die spezifische Syntax des PaddlePaddle anzupassen, was für Entwickler, die an Standard-PyTorch-Workflows gewöhnt sind, zu Reibungsverlusten führen kann. PyTorch Pipelines gewöhnt sind.

Leistungsvergleich

Die folgende Tabelle zeigt die Leistungsunterschiede zwischen den beiden Modellen anhand des COCO .

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
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

Analyse

  • Kleine Modelle (Nano/Tiny):YOLO bietetYOLO eine höhere Genauigkeit (mAP) für die Tiny-Varianten und demonstriert damit die Effektivität seines NAS-optimierten Backbones in eingeschränkten Umgebungen. Allerdings ist PP-YOLOE+t in Bezug auf die Parameteranzahl deutlich kleiner (4,85 Mio. gegenüber 8,5 Mio.), was für Geräte mit extrem begrenzten Speicherkapazitäten vorteilhaft sein könnte.
  • Mittlere bis große Modelle: Mit zunehmender Modellgröße skaliert PP-YOLOE+ in Bezug auf die Genauigkeit tendenziell besser und übertrifftYOLO den Kategorien „Mittel“ und „Groß“ (z. B. 52,9 mAP 50,8 mAP „Groß“).
  • Inferenzgeschwindigkeit:YOLO eine überlegene LatenzYOLO TensorRT für die meisten Größen eine überragende Latenz auf und bestätigt damit seine „Latency-First”-Architektursuche. Umgekehrt zeigt PP-YOLOE+s eine überraschend effiziente Geschwindigkeit (2,62 ms) und ist damit ein starker Anwärter für bestimmte Echtzeitanwendungen.

Ultralytics von Ultralytics : YOLO26

WährendYOLO PP-YOLOE+ überzeugende Funktionen für bestimmte Nischen bieten, stellt Ultralytics den nächsten Evolutionsschritt in der Computer Vision dar und behebt die Einschränkungen beider Vorgänger durch radikale architektonische Veränderungen und Verbesserungen der Benutzerfreundlichkeit.

Erfahren Sie mehr über YOLO26

Warum YOLO26 die bessere Wahl ist

  1. End-to-End-Design NMS: Im Gegensatz zu PP-YOLOE+ und herkömmlichen YOLO , die eine Non-Maximum Suppression (NMS) zum Filtern überlappender Boxen erfordern, ist YOLO26 von Haus aus End-to-End. Dadurch wird ein großer Engpass bei der Bereitstellung beseitigt, die Latenzschwankungen reduziert und der Exportprozess in Formate wie ONNX und CoreML vereinfacht.
  2. Unübertroffene CPU : YOLO26 wurde speziell für Edge-Computing optimiert und bietet im Vergleich zu früheren Generationen CPU um bis zu 43 % schnellere CPU . Dies ist entscheidend für Anwendungen, die auf Raspberry Pi, Mobiltelefonen oder Standard-Cloud-Instanzen ausgeführt werden, auf denen keine GPUs verfügbar sind.
  3. Fortgeschrittene Trainingsstabilität: YOLO26 enthält den MuSGD Optimizer, eine Mischung aus SGD Muon (inspiriert durch LLM-Training), der eine schnellere Konvergenz und stabilere Trainingsläufe gewährleistet, selbst bei komplexen benutzerdefinierten Datensätzen.
  4. Vereinfachte Architektur: Durch die Entfernung des Distribution Focal Loss (DFL) wird die Modellstruktur vereinfacht, wodurch die Kompatibilität mit Edge-Geräten und Beschleunigern mit geringem Stromverbrauch verbessert wird, die mit komplexen Verlustfunktionen zu kämpfen haben.
  5. Ganzheitliches Ökosystem: Mit der Ultralytics erhalten Benutzer Zugriff auf eine nahtlose Pipeline für Datenmanagement, Cloud-Schulungen und Bereitstellung mit einem Klick.

Vielseitigkeit jenseits der Erkennung

Im Gegensatz zuYOLO sich in erster Linie auf die Erkennung konzentriert, unterstützt YOLO26 nativ ein umfassendes Spektrum an Aufgaben, darunter Instanzsegmentierung, Posenschätzung, OBB (Oriented Bounding Box) und Klassifizierung.

Benutzerfreundlichkeit

Eines der charakteristischen Merkmale der Ultralytics ist die Entwicklererfahrung. WährendYOLO PP-YOLOE+ möglicherweise komplexe Konfigurationsdateien oder frameworkspezifisches Wissen erfordern, lässt sich YOLO26 mit nur wenigen Zeilen Code implementieren.

from ultralytics import YOLO

# Load the latest YOLO26 nano model
model = YOLO("yolo26n.pt")

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

# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")

# Export to ONNX for deployment
model.export(format="onnx")

Anwendungsfälle in der Praxis

  • Smart Retail: Nutzen Sie die Geschwindigkeit von YOLO26, um den Lagerbestand in Echtzeit zu überwachen, ohne teure GPU zu benötigen.
  • Landwirtschaft: Nutzen Sie die Funktionen ProgLoss + STAL für eine verbesserte Erkennung kleiner Objekte, die für die Erkennung von Schädlingen oder das Zählen von Ernteerträgen in Drohnenbildern unerlässlich sind.
  • Fertigung: Setzen Sie NMS Modelle für die Hochgeschwindigkeits-Qualitätskontrolle in Fertigungsstraßen ein, in denen eine konstante Latenzzeit unverzichtbar ist.

Fazit

Die Wahl des richtigen Modells hängt von Ihren spezifischen Anforderungen ab. YOLO ist eine ausgezeichnete Wahl für die Forschung im Bereich NAS-Architekturen und Szenarien, bei denen bestimmte TensorRT im Vordergrund stehen. PP-YOLOE+ ist eine robuste Option für diejenigen, die tief in das Baidu-Ökosystem integriert sind und eine hohe Genauigkeit auf Server-Hardware benötigen.

Für die überwiegende Mehrheit der Entwickler und Unternehmen, die nach einer zukunftssicheren, benutzerfreundlichen und äußerst vielseitigen Lösung suchen, ist Ultralytics jedoch die erste Wahl. Sein End-to-End-Design, CPU überragende CPU und die Unterstützung durch eine lebendige Open-Source-Community machen es zur definitiven Wahl für moderne Computer-Vision-Anwendungen.

Für Nutzer, die an anderen hochmodernen Optionen interessiert sind, empfehlen wir YOLO11 oder das auf Transformatoren basierende RT-DETR in der Ultralytics .


Kommentare