YOLOv9: Ein Sprung nach vorn in der Objekterkennungstechnologie
YOLOv9 stellt einen bedeutenden Fortschritt in der Echtzeit-Objekterkennung dar und führt bahnbrechende Techniken wie Programmable Gradient Information (PGI) und das Generalized Efficient Layer Aggregation Network (GELAN) ein. Dieses Modell zeigt bemerkenswerte Verbesserungen in Bezug auf Effizienz, Genauigkeit und Anpassungsfähigkeit und setzt mit dem MS COCO-Datensatz neue Maßstäbe. Das YOLOv9-Projekt wird zwar von einem eigenen Open-Source-Team entwickelt, baut aber auf der robusten Codebasis auf, die von Ultralytics YOLOv5und zeigt den kollaborativen Geist der KI-Forschungsgemeinschaft.
Einführung in YOLOv9
Auf der Suche nach einer optimalen Objekterkennung in Echtzeit sticht YOLOv9 mit seinem innovativen Ansatz zur Überwindung von Informationsverlusten hervor, die bei tiefen neuronalen Netzen auftreten. Durch die Integration von PGI und der vielseitigen GELAN-Architektur verbessert YOLOv9 nicht nur die Lernfähigkeit des Modells, sondern sorgt auch dafür, dass wichtige Informationen während des gesamten Erkennungsprozesses erhalten bleiben, wodurch eine außergewöhnliche Genauigkeit und Leistung erreicht wird.
Die wichtigsten Innovationen von YOLOv9
Die Fortschritte von YOLOv9 sind tief verwurzelt in der Bewältigung der Herausforderungen, die der Informationsverlust in tiefen neuronalen Netzen mit sich bringt. Das Prinzip des Informationsengpasses und die innovative Verwendung von umkehrbaren Funktionen stehen im Mittelpunkt des Designs und sorgen dafür, dass YOLOv9 eine hohe Effizienz und Genauigkeit beibehält.
Prinzip des Informationsengpasses
Das Prinzip des Informationsengpasses offenbart eine grundlegende Herausforderung beim Deep Learning: Je mehr Daten die aufeinanderfolgenden Schichten eines Netzwerks durchlaufen, desto größer ist das Potenzial für Informationsverluste. Dieses Phänomen lässt sich mathematisch wie folgt darstellen:
wo I
bezeichnet die gegenseitige Information, und f
und g
Transformationsfunktionen mit Parametern darstellen theta
und phi
. YOLOv9 begegnet dieser Herausforderung, indem es programmierbare Gradienteninformationen (PGI) implementiert, die dazu beitragen, wichtige Daten über die Tiefe des Netzes hinweg zu erhalten, was eine zuverlässigere Gradientengenerierung und folglich eine bessere Modellkonvergenz und Leistung gewährleistet.
Umkehrbare Funktionen
Das Konzept der umkehrbaren Funktionen ist ein weiterer Eckpfeiler des Designs von YOLOv9. Eine Funktion gilt als umkehrbar, wenn sie ohne Informationsverlust invertiert werden kann, wie es durch ausgedrückt wird:
mit psi
und zeta
als Parameter für die reversible bzw. die inverse Funktion. Diese Eigenschaft ist für Deep-Learning-Architekturen von entscheidender Bedeutung, da sie es dem Netzwerk ermöglicht, einen vollständigen Informationsfluss aufrechtzuerhalten und dadurch genauere Aktualisierungen der Modellparameter zu ermöglichen. YOLOv9 integriert reversible Funktionen in seine Architektur, um das Risiko einer Informationsverschlechterung vor allem in den tieferen Schichten zu mindern und sicherzustellen, dass die für die Objekterkennung wichtigen Daten erhalten bleiben.
Auswirkungen auf Lightweight-Modelle
Die Vermeidung von Informationsverlusten ist besonders wichtig für leichtgewichtige Modelle, die oft unterparametrisiert sind und dazu neigen, während des Feedforward-Prozesses wichtige Informationen zu verlieren. Die Architektur von YOLOv9 stellt durch den Einsatz von PGI und reversiblen Funktionen sicher, dass auch bei einem abgespeckten Modell die wesentlichen Informationen, die für eine genaue Objekterkennung erforderlich sind, erhalten bleiben und effektiv genutzt werden.
Programmierbare Gradienteninformation (PGI)
PGI ist ein neuartiges Konzept, das in YOLOv9 eingeführt wurde, um das Problem des Informationsengpasses zu bekämpfen und sicherzustellen, dass wichtige Daten über tiefe Netzwerkschichten hinweg erhalten bleiben. Dies ermöglicht die Generierung zuverlässiger Gradienten, was genaue Modellaktualisierungen erleichtert und die Erkennungsleistung insgesamt verbessert.
Generalized Efficient Layer Aggregation Network (GELAN)
GELAN ist ein strategischer architektonischer Fortschritt, der es YOLOv9 ermöglicht, die Parameter besser zu nutzen und effizienter zu rechnen. Sein Design ermöglicht die flexible Integration verschiedener Rechenblöcke, wodurch YOLOv9 an eine Vielzahl von Anwendungen angepasst werden kann, ohne an Geschwindigkeit oder Genauigkeit einzubüßen.
Leistung im MS COCO-Datensatz
Die Leistung von YOLOv9 auf dem COCO-Datensatz verdeutlicht seine bedeutenden Fortschritte bei der Echtzeit-Objekterkennung und setzt neue Maßstäbe für verschiedene Modellgrößen. Tabelle 1 zeigt einen umfassenden Vergleich der modernsten Echtzeit-Objektdetektoren und verdeutlicht die überlegene Effizienz und Genauigkeit von YOLOv9.
Tabelle 1. Vergleich von Echtzeit-Objektdetektoren auf dem neuesten Stand der Technik
Wann werden andere Modellmaßstäbe verfügbar sein?
Trotz aller Metriken, die in der Tabelle unten für die verschiedenen Modellskalen angegeben sind, nur die Konfigurationen für YOLOv9c
und YOLOv9e
wurden veröffentlicht. Das Ultralytics Team wird zügig daran arbeiten, weitere Konfigurationen hinzuzufügen, sobald sie verfügbar sind.
Leistung
Modell | Größe (Pixel) |
mAPval 50-95 |
mAPval 50 |
params (M) |
FLOPs (B) |
---|---|---|---|---|---|
YOLOv9t | 640 | 38.3 | 53.1 | 2.0 | 7.7 |
YOLOv9s | 640 | 46.8 | 63.4 | 7.2 | 26.7 |
YOLOv9m | 640 | 51.4 | 68.1 | 20.1 | 76.8 |
YOLOv9c | 640 | 53.0 | 70.2 | 25.5 | 102.8 |
YOLOv9e | 640 | 55.6 | 72.8 | 58.1 | 192.5 |
Modell | Größe (Pixel) |
mAPbox 50-95 |
mAPmask 50-95 |
params (M) |
FLOPs (B) |
---|---|---|---|---|---|
YOLOv9c-seg | 640 | 52.4 | 42.2 | 27.9 | 159.4 |
YOLOv9e-seg | 640 | 55.1 | 44.3 | 60.5 | 248.4 |
YOLOv9s Iterationen, die von der kleinen t
Variante zur umfangreichen e
Modells zeigen nicht nur Verbesserungen bei der Genauigkeit (mAP-Metriken), sondern auch bei der Effizienz mit einer geringeren Anzahl von Parametern und Rechenaufwand (FLOPs). Diese Tabelle unterstreicht die Fähigkeit von YOLOv9, eine hohe Genauigkeit zu liefern und gleichzeitig den Rechenaufwand im Vergleich zu früheren Versionen und konkurrierenden Modellen beizubehalten oder zu reduzieren.
Im Vergleich dazu weist YOLOv9 bemerkenswerte Gewinne auf:
- Leichte Modelle: YOLOv9s übertrifft die YOLO MS-S in Bezug auf Parametereffizienz und Rechenlast und erreicht eine Verbesserung von 0,4∼0,6% in AP.
- Mittlere bis große Modelle: YOLOv9m und YOLOv9e zeigen bemerkenswerte Fortschritte bei der Abwägung zwischen Modellkomplexität und Erkennungsleistung und bieten eine erhebliche Reduzierung der Parameter und Berechnungen vor dem Hintergrund einer verbesserten Genauigkeit.
Vor allem das YOLOv9c-Modell zeigt, wie effektiv die Optimierungen der Architektur sind. Es arbeitet mit 42 % weniger Parametern und 21 % weniger Rechenaufwand als YOLOv7 AF und erreicht dennoch eine vergleichbare Genauigkeit, was die erheblichen Effizienzsteigerungen von YOLOv9 zeigt. Darüber hinaus setzt das Modell YOLOv9e einen neuen Standard für große Modelle, mit 15% weniger Parametern und 25% weniger Rechenaufwand als YOLOv8xund einer zusätzlichen Verbesserung der AP um 1,7 %.
Diese Ergebnisse zeigen die strategischen Fortschritte von YOLOv9 bei der Modellentwicklung und unterstreichen die verbesserte Effizienz, ohne die für die Echtzeit-Objekterkennung notwendige Präzision zu beeinträchtigen. Das Modell verschiebt nicht nur die Grenzen der Leistungskennzahlen, sondern unterstreicht auch die Bedeutung der Recheneffizienz, was es zu einer entscheidenden Entwicklung auf dem Gebiet der Computer Vision macht.
Fazit
YOLOv9 stellt eine entscheidende Entwicklung in der Echtzeit-Objekterkennung dar und bietet erhebliche Verbesserungen in Bezug auf Effizienz, Genauigkeit und Anpassungsfähigkeit. Durch die Bewältigung kritischer Herausforderungen mit innovativen Lösungen wie PGI und GELAN setzt YOLOv9 einen neuen Präzedenzfall für zukünftige Forschung und Anwendung in diesem Bereich. Während sich die KI-Gemeinschaft weiterentwickelt, ist YOLOv9 ein Beweis für die Kraft von Zusammenarbeit und Innovation, die den technologischen Fortschritt vorantreiben.
Verwendungsbeispiele
Dieses Beispiel zeigt einfache YOLOv9-Trainings- und Inferenzbeispiele. Die vollständige Dokumentation zu diesen und anderen Modi findest du auf den Seiten Predict, Train, Val und Export docs.
Beispiel
PyTorch vorgebildet *.pt
Modelle als auch die Konfiguration *.yaml
Dateien können an den YOLO()
Klasse, um eine Modellinstanz in python zu erstellen:
from ultralytics import YOLO
# Build a YOLOv9c model from scratch
model = YOLO('yolov9c.yaml')
# Build a YOLOv9c model from pretrained weight
model = YOLO('yolov9c.pt')
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data='coco8.yaml', epochs=100, imgsz=640)
# Run inference with the YOLOv9c model on the 'bus.jpg' image
results = model('path/to/bus.jpg')
CLI Befehle sind verfügbar, um die Modelle direkt auszuführen:
Unterstützte Aufgaben und Modi
Die YOLOv9-Serie bietet eine Reihe von Modellen, die jeweils für eine leistungsstarke Objekterkennung optimiert sind. Diese Modelle erfüllen unterschiedliche Anforderungen an die Rechenleistung und die Genauigkeit, was sie für eine Vielzahl von Anwendungen geeignet macht.
Modell | Dateinamen | Aufgaben | Inferenz | Validierung | Ausbildung | exportieren |
---|---|---|---|---|---|---|
YOLOv9 | yolov9c.pt yolov9e.pt |
Objekt-Erkennung | ✅ | ✅ | ✅ | ✅ |
YOLOv9-seg | yolov9c-seg.pt yolov9e-seg.pt |
Instanz-Segmentierung | ✅ | ✅ | ✅ | ✅ |
Diese Tabelle gibt einen detaillierten Überblick über die YOLOv9-Modellvarianten und hebt ihre Fähigkeiten bei der Objekterkennung sowie ihre Kompatibilität mit verschiedenen Betriebsmodi wie Inferenz, Validierung, Training und Export hervor. Diese umfassende Unterstützung stellt sicher, dass die Nutzer/innen die Fähigkeiten der YOLOv9-Modelle in einem breiten Spektrum von Objekterkennungsszenarien voll ausschöpfen können.
Hinweis
Die Ausbildung von YOLOv9-Modellen erfordert mehr Ressourcen und dauert länger als die Ausbildung eines gleich großen YOLOv8 Modells.
Zitate und Danksagungen
Wir möchten den YOLOv9-Autoren für ihre bedeutenden Beiträge im Bereich der Echtzeit-Objekterkennung danken:
Die ursprüngliche YOLOv9-Veröffentlichung ist auf arXiv zu finden. Die Autoren haben ihre Arbeit öffentlich zugänglich gemacht, und die Codebasis kann auf GitHub eingesehen werden. Wir schätzen ihre Bemühungen, das Feld voranzubringen und ihre Arbeit einer breiteren Gemeinschaft zugänglich zu machen.
Erstellt am 2024-02-26, Aktualisiert am 2024-04-17
Autoren: glenn-jocher (4), Burhan-Q (2), Laughing-q (1)