Vertiefung der Leistungsmetriken#
Einleitung#
Leistungsmetriken sind wichtige Werkzeuge zur Bewertung der Genauigkeit und Effizienz von Objekterkennungsmodellen. Sie zeigen, wie effektiv ein Modell Objekte in Bildern erkennen und lokalisieren kann. Außerdem helfen sie dabei, den Umgang des Modells mit falsch positiven und falsch negativen Ergebnissen zu verstehen. Diese Erkenntnisse sind entscheidend, um die Leistung des Modells zu bewerten und zu verbessern. In diesem Leitfaden untersuchen wir verschiedene mit YOLO26 verbundene Leistungsmetriken, ihre Bedeutung und ihre Interpretation.
Metriken für die Objekterkennung#
Beginnen wir mit einigen Metriken, die nicht nur für YOLO26 wichtig sind, sondern sich allgemein auf verschiedene Objekterkennungsmodelle anwenden lassen.
-
Intersection over Union (IoU): IoU misst die Überlappung zwischen einer vorhergesagten Bounding Box und einer Ground-Truth-Bounding-Box. Sie spielt eine grundlegende Rolle bei der Bewertung der Genauigkeit der Objektlokalisierung.
-
Average Precision (AP): AP berechnet die Fläche unter der Precision-Recall-Kurve und liefert einen einzelnen Wert, der die Precision- und Recall-Leistung des Modells zusammenfasst.
-
Mean Average Precision (mAP): mAP erweitert das Konzept von AP, indem der Durchschnitt der AP-Werte über mehrere Objektklassen berechnet wird. Dies ist bei der Objekterkennung mit mehreren Klassen nützlich, um eine umfassende Bewertung der Modellleistung zu ermöglichen.
-
Precision und Recall: Precision gibt den Anteil der echt positiven Ergebnisse an allen positiven Vorhersagen an und bewertet die Fähigkeit des Modells, falsch positive Ergebnisse zu vermeiden. Recall berechnet dagegen den Anteil der echt positiven Ergebnisse an allen tatsächlich positiven Ergebnissen und misst die Fähigkeit des Modells, alle Instanzen einer Klasse zu erkennen.
-
F1 Score: Der F1 Score ist das harmonische Mittel aus Precision und Recall. Er ermöglicht eine ausgewogene Bewertung der Modellleistung unter Berücksichtigung sowohl falsch positiver als auch falsch negativer Ergebnisse.
So berechnest du Metriken für ein YOLO26-Modell#
Nun können wir den Validierungsmodus von YOLO26 untersuchen, mit dem sich die oben besprochenen Bewertungsmetriken berechnen lassen.
Die Verwendung des Validierungsmodus ist einfach. Sobald du ein trainiertes Modell hast, kannst du die Funktion model.val() aufrufen. Diese Funktion verarbeitet anschließend den Validierungsdatensatz und gibt verschiedene Leistungsmetriken zurück. Doch was bedeuten diese Metriken, und wie solltest du sie interpretieren?
Interpretation der Ausgabe#
Sehen wir uns die Ausgabe der Funktion model.val() im Detail an und verstehen wir jeden Abschnitt der Ausgabe.
Klassenbezogene Metriken#
Ein Abschnitt der Ausgabe enthält die klassenweise Aufschlüsselung der Leistungsmetriken. Diese detaillierten Informationen sind nützlich, wenn du verstehen möchtest, wie gut das Modell für jede einzelne Klasse funktioniert, insbesondere bei Datensätzen mit einer vielfältigen Auswahl an Objektkategorien. Für jede Klasse im Datensatz werden folgende Informationen bereitgestellt:
-
Class: Bezeichnet den Namen der Objektklasse, etwa „person“, „car“ oder „dog“.
-
Images: Diese Metrik gibt die Anzahl der Bilder im Validierungsdatensatz an, die die Objektklasse enthalten.
-
Instances: Gibt an, wie oft die Klasse in allen Bildern des Validierungsdatensatzes vorkommt.
-
Box(P, R, mAP50, mAP50-95): Diese Metrik liefert Erkenntnisse über die Leistung des Modells bei der Objekterkennung:
-
P (Precision): Die Genauigkeit der erkannten Objekte und damit die Anzahl der korrekten Erkennungen.
-
R (Recall): Die Fähigkeit des Modells, alle Objektinstanzen in den Bildern zu erkennen.
-
mAP50: Mean Average Precision, berechnet bei einem Intersection-over-Union-Schwellenwert (IoU) von 0.50. Diese Metrik misst die Genauigkeit des Modells und berücksichtigt dabei nur die „einfachen“ Erkennungen.
-
mAP50-95: Der Durchschnitt der Mean Average Precision, berechnet bei variierenden IoU-Schwellenwerten von 0.50 bis 0.95. Diese Metrik bietet einen umfassenden Überblick über die Modellleistung bei unterschiedlichen Schwierigkeitsgraden der Erkennung.
-
Geschwindigkeitsmetriken#
Die Inferenzgeschwindigkeit kann genauso entscheidend sein wie die Genauigkeit, insbesondere bei der Objekterkennung in Echtzeit. Dieser Abschnitt schlüsselt die für die verschiedenen Phasen der Validierung benötigte Zeit auf – von der Vorverarbeitung bis zur Nachverarbeitung.
Bewertung der COCO-Metriken#
Für Benutzer, die auf dem COCO-Datensatz validieren, werden mithilfe des COCO-Bewertungsskripts zusätzliche Metriken berechnet. Diese Metriken liefern Erkenntnisse über Precision und Recall bei unterschiedlichen IoU-Schwellenwerten und für Objekte verschiedener Größen.
Visuelle Ausgaben#
Die Funktion model.val() erzeugt neben numerischen Metriken auch visuelle Ausgaben, die ein intuitiveres Verständnis der Modellleistung ermöglichen. Hier ist eine Übersicht der visuellen Ausgaben, die du erwarten kannst:
-
F1-Score-Kurve (
BoxF1_curve.png): Diese Kurve stellt den F1 Score über verschiedene Schwellenwerte hinweg dar. Ihre Interpretation kann Aufschluss über das Gleichgewicht zwischen falsch positiven und falsch negativen Ergebnissen bei unterschiedlichen Schwellenwerten geben. -
Precision-Recall-Kurve (
BoxPR_curve.png): Diese Kurve ist eine wichtige Visualisierung für jedes Klassifikationsproblem und zeigt die Zielkonflikte zwischen Precision und Recall bei verschiedenen Schwellenwerten. Sie ist besonders relevant bei unausgewogenen Klassen. -
Precision-Kurve (
BoxP_curve.png): Eine grafische Darstellung der Precision-Werte bei unterschiedlichen Schwellenwerten. Diese Kurve hilft dir zu verstehen, wie sich Precision bei einer Änderung des Schwellenwerts verändert. -
Recall-Kurve (
BoxR_curve.png): Diese Grafik zeigt entsprechend, wie sich die Recall-Werte über verschiedene Schwellenwerte hinweg verändern. -
Konfusionsmatrix (
confusion_matrix.png): Die Konfusionsmatrix bietet eine detaillierte Übersicht der Ergebnisse und zeigt für jede Klasse die Anzahl der echt positiven, echt negativen, falsch positiven und falsch negativen Ergebnisse. -
Normalisierte Konfusionsmatrix (
confusion_matrix_normalized.png): Diese Visualisierung ist eine normalisierte Version der Konfusionsmatrix. Sie stellt die Daten als Anteile statt als absolute Häufigkeiten dar. Dadurch lassen sich die Leistungen über verschiedene Klassen hinweg einfacher vergleichen. -
Labels der Validierungs-Batches (
val_batchX_labels.jpg): Diese Bilder zeigen die Ground-Truth-Labels für einzelne Batches aus dem Validierungsdatensatz. Sie vermitteln anschaulich, welche Objekte gemäß dem Datensatz vorhanden sind und wo sie sich befinden. -
Vorhersagen der Validierungs-Batches (
val_batchX_pred.jpg): Im Gegensatz zu den Labelbildern zeigen diese Visualisierungen die vom YOLO26-Modell für die jeweiligen Batches erstellten Vorhersagen. Durch den Vergleich mit den Labelbildern kannst du einfach visuell beurteilen, wie gut das Modell Objekte erkennt und klassifiziert.
Für die Aufgaben Erkennung, Segmentierung und Posenschätzung werden die Kurvendiagramme mit dem jeweiligen Metriktyp präfixiert: Bei der Erkennung werden Box*-Kurven, bei der Segmentierung sowohl Box*- als auch Mask*-Kurven und bei der Posenschätzung sowohl Box*- als auch Pose*-Kurven geschrieben.
Speichern der Ergebnisse#
Zur späteren Verwendung werden die Ergebnisse in einem Verzeichnis gespeichert, das normalerweise runs/detect/val heißt.
Die richtigen Metriken auswählen#
Welche Metriken sich zur Bewertung eignen, hängt oft von der jeweiligen Anwendung ab.
-
mAP: Geeignet für eine umfassende Bewertung der Modellleistung.
-
IoU: Unverzichtbar, wenn eine präzise Objektlokalisierung entscheidend ist.
-
Precision: Wichtig, wenn die Minimierung falscher Erkennungen Priorität hat.
-
Recall: Entscheidend, wenn jede Objektinstanz erkannt werden soll.
-
F1 Score: Nützlich, wenn ein Gleichgewicht zwischen Precision und Recall erforderlich ist.
Bei Echtzeitanwendungen sind Geschwindigkeitsmetriken wie FPS (Frames pro Sekunde) und Latenz entscheidend, um rechtzeitige Ergebnisse sicherzustellen.
Interpretation der Ergebnisse#
Es ist wichtig, die Metriken zu verstehen. Hier erfährst du, worauf einige häufig beobachtete niedrige Werte hindeuten können:
-
Niedrige mAP: Das Modell benötigt möglicherweise allgemeine Verbesserungen.
-
Niedrige IoU: Das Modell hat möglicherweise Schwierigkeiten, Objekte präzise zu lokalisieren. Andere Methoden für Bounding Boxes könnten helfen.
-
Niedrige Precision: Das Modell erkennt möglicherweise zu viele nicht vorhandene Objekte. Eine Anpassung der Konfidenzschwellenwerte könnte dies reduzieren.
-
Niedriger Recall: Das Modell übersieht möglicherweise tatsächlich vorhandene Objekte. Eine Verbesserung der Merkmalsextraktion oder die Verwendung weiterer Daten könnte helfen.
-
Unausgeglichener F1 Score: Zwischen Precision und Recall besteht ein Ungleichgewicht.
-
Klassenspezifische AP: Niedrige Werte können Klassen hervorheben, mit denen das Modell Schwierigkeiten hat.
Fallstudien#
Beispiele aus der Praxis können verdeutlichen, wie diese Metriken tatsächlich funktionieren.
Fall 1#
-
Situation: mAP und F1 Score sind suboptimal, während Recall gut, Precision jedoch nicht gut ist.
-
Interpretation und Maßnahme: Es gibt möglicherweise zu viele falsche Erkennungen. Eine Verschärfung der Konfidenzschwellenwerte könnte diese reduzieren, allerdings könnte dadurch auch der Recall leicht sinken.
Fall 2#
-
Situation: mAP und Recall sind akzeptabel, aber die IoU ist unzureichend.
-
Interpretation und Maßnahme: Das Modell erkennt Objekte gut, lokalisiert sie aber möglicherweise nicht präzise. Eine Verbesserung der Vorhersagen für Bounding Boxes könnte helfen.
Fall 3#
-
Situation: Einige Klassen haben trotz einer ordentlichen Gesamt-mAP eine deutlich niedrigere AP als andere.
-
Interpretation und Maßnahme: Diese Klassen sind für das Modell möglicherweise schwieriger. Mehr Daten für diese Klassen oder eine Anpassung der Klassengewichte während des Trainings könnten hilfreich sein.
Vernetzen und zusammenarbeiten#
Der Austausch mit einer Community aus Interessierten und Experten kann deine Arbeit mit YOLO26 voranbringen. Hier findest du Möglichkeiten zum Lernen, zur Fehlerbehebung und zur Vernetzung.
Mit der breiteren Community austauschen#
-
GitHub-Issues: Das Ultralytics-Repository auf GitHub hat einen Issues-Tab, über den du Fragen stellen, Bugs melden und neue Funktionen vorschlagen kannst. Die Community und die Maintainer sind hier aktiv, und der Issues-Tab ist ein hervorragender Ort, um Hilfe bei spezifischen Problemen zu erhalten.
-
Ultralytics Discord-Server: Ultralytics hat einen Discord-Server, auf dem du dich mit anderen Benutzern und den Entwicklern austauschen kannst.
Offizielle Dokumentation und Ressourcen#
- Ultralytics-YOLO26-Dokumentation: Die offizielle Dokumentation bietet einen umfassenden Überblick über YOLO26 sowie Anleitungen zur Installation, Verwendung und Fehlerbehebung.
Diese Ressourcen helfen dir nicht nur bei der Bewältigung von Herausforderungen, sondern halten dich auch über die neuesten Trends und Best Practices in der YOLO26-Community auf dem Laufenden.
Fazit#
In diesem Leitfaden haben wir die wichtigsten Leistungsmetriken für YOLO26 eingehend betrachtet. Diese Metriken sind entscheidend, um zu verstehen, wie gut ein Modell funktioniert, und für alle, die ihre Modelle optimieren möchten. Sie liefern die notwendigen Erkenntnisse für Verbesserungen und stellen sicher, dass das Modell in realen Situationen effektiv arbeitet.
Denke daran: Die YOLO26- und Ultralytics-Community ist eine unschätzbare Ressource. Der Austausch mit anderen Entwicklern und Experten kann dir Einblicke und Lösungen eröffnen, die du in der Standarddokumentation nicht findest. Halte beim Einstieg in die Objekterkennung deine Lernfreude aufrecht, experimentiere mit neuen Strategien und teile deine Erkenntnisse. So trägst du zum gemeinsamen Wissen der Community bei und unterstützt ihr Wachstum.
FAQ#
Mean Average Precision (mAP) ist für die Bewertung von YOLO26-Modellen entscheidend, da diese Metrik Precision und Recall über mehrere Klassen hinweg in einem einzelnen Wert zusammenfasst. mAP@0.50 misst die Precision bei einem IoU-Schwellenwert von 0.50 und konzentriert sich auf die Fähigkeit des Modells, Objekte korrekt zu erkennen. mAP@0.50:0.95 bildet den Durchschnitt der Precision über eine Reihe von IoU-Schwellenwerten und ermöglicht dadurch eine umfassende Bewertung der Erkennungsleistung. Hohe mAP-Werte zeigen, dass das Modell Precision und Recall effektiv ausbalanciert – entscheidend für Anwendungen wie autonomes Fahren und Überwachungssysteme, bei denen sowohl eine genaue Erkennung als auch möglichst wenige Fehlalarme wichtig sind.
Intersection over Union (IoU) misst die Überlappung zwischen den vorhergesagten Bounding Boxes und den Ground-Truth-Bounding-Boxes. IoU-Werte reichen von 0 bis 1, wobei höhere Werte eine bessere Lokalisierungsgenauigkeit anzeigen. Eine IoU von 1.0 bedeutet eine perfekte Übereinstimmung. Typischerweise wird ein IoU-Schwellenwert von 0.50 verwendet, um echt positive Ergebnisse in Metriken wie mAP zu definieren. Niedrige IoU-Werte deuten darauf hin, dass das Modell Schwierigkeiten mit einer präzisen Objektlokalisierung hat. Dies lässt sich möglicherweise durch eine Verbesserung der Regression der Bounding Boxes oder eine höhere Annotationsgenauigkeit in deinem Trainingsdatensatz verbessern.
Der F1 Score ist für die Bewertung von YOLO26-Modellen wichtig, da er das harmonische Mittel aus Precision und Recall bildet und dabei sowohl falsch positive als auch falsch negative Ergebnisse ausbalanciert. Er ist besonders wertvoll bei unausgewogenen Datensätzen oder Anwendungen, bei denen Precision oder Recall allein nicht ausreichen. Ein hoher F1 Score zeigt, dass das Modell Objekte effektiv erkennt und gleichzeitig sowohl übersehene Erkennungen als auch Fehlalarme minimiert. Dadurch eignet es sich für kritische Anwendungen wie Sicherheitssysteme und medizinische Bildgebung.
Ultralytics YOLO26 bietet mehrere Vorteile für die Objekterkennung in Echtzeit:
- Geschwindigkeit und Effizienz: Für schnelle Inferenz optimiert und damit für Anwendungen mit geringer Latenz geeignet.
- Hohe Genauigkeit: Ein fortschrittlicher Algorithmus sorgt für hohe mAP- und IoU-Werte und bringt Precision und Recall ins Gleichgewicht.
- Flexibilität: Unterstützt verschiedene Aufgaben, darunter Objekterkennung, Instanzsegmentierung, semantische Segmentierung und Klassifizierung.
- Einfache Bedienung: Benutzerfreundliche Oberflächen, umfassende Dokumentation und nahtlose Integration mit Tools wie der Ultralytics Platform (Schnellstart für die Platform).
Dadurch eignet sich YOLO26 ideal für vielfältige Anwendungen – von autonomen Fahrzeugen bis hin zu Lösungen für intelligente Städte.
Validierungsmetriken von YOLO26 wie Precision, Recall, mAP und IoU helfen bei der Diagnose und Verbesserung der Modellleistung, indem sie Erkenntnisse zu verschiedenen Aspekten der Erkennung liefern:
- Precision: Hilft dabei, falsch positive Ergebnisse zu erkennen und zu minimieren.
- Recall: Stellt sicher, dass alle relevanten Objekte erkannt werden.
- mAP: Bietet eine Gesamtübersicht der Leistung und unterstützt allgemeine Verbesserungen.
- IoU: Hilft bei der Feinabstimmung der Genauigkeit der Objektlokalisierung.
Durch die Analyse dieser Metriken lassen sich konkrete Schwächen gezielt angehen, etwa durch die Anpassung von Konfidenzschwellenwerten zur Verbesserung der Precision oder durch das Sammeln vielfältigerer Daten zur Steigerung des Recalls. Ausführliche Erklärungen dieser Metriken und ihrer Interpretation findest du unter Metriken für die Objekterkennung. Außerdem kannst du Hyperparameter-Tuning einsetzen, um dein Modell zu optimieren.