Einblicke in die Modellevaluierung und Feinabstimmung
Einführung
Sobald Sie Ihr Computer-Vision-Modell trainiert haben, ist es wichtig, es zu bewerten und zu verfeinern, damit es optimal funktioniert. Es reicht nicht aus, nur Ihr Modell zu trainieren. Sie müssen sicherstellen, dass Ihr Modell genau und effizient ist und das Ziel Ihres Computer-Vision-Projekts erfüllt. Durch die Bewertung und Feinabstimmung Ihres Modells können Sie Schwächen identifizieren, seine Genauigkeit verbessern und die Gesamtleistung steigern.
Ansehen: Einblicke in die Modellevaluierung und Feinabstimmung | Tipps zur Verbesserung der mittleren durchschnittlichen Präzision
In diesem Leitfaden teilen wir Einblicke in die Modellevaluierung und das Fine-Tuning, um diesen Schritt eines Computer-Vision-Projekts zugänglicher zu machen. Wir erörtern, wie man Bewertungsmetriken versteht und Fine-Tuning-Techniken implementiert, und vermitteln Ihnen das Wissen, um die Fähigkeiten Ihres Modells zu verbessern.
Bewertung der Modellleistung anhand von Metriken
Die Bewertung der Leistungsfähigkeit eines Modells hilft uns zu verstehen, wie effektiv es arbeitet. Verschiedene Metriken werden verwendet, um die Leistung zu messen. Diese Leistungsmetriken liefern klare, numerische Erkenntnisse, die Verbesserungen steuern können, um sicherzustellen, dass das Modell seine beabsichtigten Ziele erreicht. Werfen wir einen genaueren Blick auf einige Schlüsselmetriken.
Konfidenzwert
Der Konfidenzwert gibt die Sicherheit des Modells an, dass ein erkanntes Objekt zu einer bestimmten Klasse gehört. Er reicht von 0 bis 1, wobei höhere Werte eine größere Sicherheit bedeuten. Der Konfidenzwert hilft beim Filtern von Vorhersagen; nur Erkennungen mit Konfidenzwerten oberhalb eines bestimmten Schwellenwerts werden als gültig betrachtet.
Kurzer Tipp: Wenn Sie bei der Durchführung von Inferenz keine Vorhersagen sehen und alles andere überprüft haben, versuchen Sie, den Konfidenzwert zu senken. Manchmal ist der Schwellenwert zu hoch, wodurch das Modell gültige Vorhersagen ignoriert. Durch das Senken des Wertes kann das Modell mehr Möglichkeiten berücksichtigen. Dies entspricht möglicherweise nicht Ihren Projektzielen, aber es ist eine gute Möglichkeit, um zu sehen, was das Modell leisten kann, und um zu entscheiden, wie Sie es feinabstimmen können.
Intersection over Union (Schnittmenge über Vereinigung)
Intersection over Union (IoU) ist eine Metrik in der Objekterkennung, die misst, wie gut die vorhergesagte Bounding Box mit der Ground-Truth-Bounding-Box übereinstimmt. IoU-Werte reichen von 0 bis 1, wobei 1 für eine perfekte Übereinstimmung steht. IoU ist wichtig, weil es misst, wie genau die vorhergesagten Grenzen mit den tatsächlichen Objektgrenzen übereinstimmen.

Mittlere durchschnittliche Präzision
Mean Average Precision (mAP) ist eine Möglichkeit, die Leistung eines Objekterkennungsmodells zu messen. Es betrachtet die Präzision der Erkennung jeder Objektklasse, mittelt diese Werte und gibt eine Gesamtzahl an, die zeigt, wie genau das Modell Objekte identifizieren und classify kann.
Konzentrieren wir uns auf zwei spezifische mAP-Metriken:
- mAP@.5: Misst die durchschnittliche Präzision bei einem einzelnen IoU-Schwellenwert (Intersection over Union) von 0,5. Diese Metrik prüft, ob das Modell Objekte mit einer geringeren Genauigkeitsanforderung korrekt finden kann. Sie konzentriert sich darauf, ob sich das Objekt ungefähr an der richtigen Stelle befindet, ohne dass eine perfekte Platzierung erforderlich ist. Sie hilft zu erkennen, ob das Modell im Allgemeinen gut darin ist, Objekte zu erkennen.
- mAP@.5:.95: Mittelt die mAP-Werte, die bei mehreren IoU-Schwellenwerten von 0,5 bis 0,95 in Schritten von 0,05 berechnet werden. Diese Metrik ist detaillierter und strenger. Sie vermittelt ein vollständigeres Bild davon, wie genau das Modell Objekte bei unterschiedlichen Strengegraden finden kann, und ist besonders nützlich für Anwendungen, die eine präzise Objektdetektion erfordern.
Weitere mAP-Metriken umfassen mAP@0.75, das einen strengeren IoU-Schwellenwert von 0.75 verwendet, und mAP@small, medium und large, die die Präzision über Objekte unterschiedlicher Größen bewerten.

Bewertung der YOLO26-Modellleistung
Bezüglich YOLO26 können Sie den Validierungsmodus verwenden, um das Modell zu evaluieren. Werfen Sie auch einen Blick auf unseren Leitfaden, der detailliert auf die YOLO26-Leistungsmetriken und deren Interpretation eingeht.
Häufige Fragen aus der Community
Bei der Evaluierung Ihres YOLO26-Modells können einige Schwierigkeiten auftreten. Basierend auf häufigen Fragen aus der Community finden Sie hier einige Tipps, um das Beste aus Ihrem YOLO26-Modell herauszuholen:
Umgang mit variablen Bildgrößen
Die Evaluierung Ihres YOLO26-Modells mit Bildern unterschiedlicher Größen kann Ihnen helfen, dessen Leistung auf verschiedenen Datensätzen zu verstehen. Durch die Verwendung des rect=true Validierungsparameters passt YOLO26 den Stride des Netzwerks für jeden Batch basierend auf den Bildgrößen an, wodurch das Modell rechteckige Bilder verarbeiten kann, ohne sie auf eine einzige Größe zu zwingen.
Die imgsz Der Validierungsparameter legt die maximale Dimension für die Bildgrößenänderung fest, die standardmäßig 640 beträgt. Sie können dies basierend auf den maximalen Abmessungen Ihres Datensatzes und dem verfügbaren GPU-Speicher anpassen. Selbst mit imgsz gesetzt, rect=true lässt das Modell unterschiedliche Bildgrößen effektiv verwalten, indem es den Stride dynamisch anpasst.
Zugriff auf YOLO26-Metriken
Wenn Sie ein tieferes Verständnis der Leistung Ihres YOLO26-Modells erlangen möchten, können Sie spezifische Evaluierungsmetriken einfach mit wenigen Zeilen Python-Code abrufen. Der untenstehende Code-Snippet ermöglicht es Ihnen, Ihr Modell zu laden, eine Evaluierung durchzuführen und verschiedene Metriken auszugeben, die zeigen, wie gut Ihr Modell abschneidet.
Nutzung
from ultralytics import YOLO
# Load the model
model = YOLO("yolo26n.pt")
# Run the evaluation
results = model.val(data="coco8.yaml")
# Print specific metrics
print("Class indices with average precision:", results.ap_class_index)
print("Average precision for all classes:", results.box.all_ap)
print("Average precision:", results.box.ap)
print("Average precision at IoU=0.50:", results.box.ap50)
print("Class indices for average precision:", results.box.ap_class_index)
print("Class-specific results:", results.box.class_result)
print("F1 score:", results.box.f1)
print("F1 score curve:", results.box.f1_curve)
print("Overall fitness score:", results.box.fitness)
print("Mean average precision:", results.box.map)
print("Mean average precision at IoU=0.50:", results.box.map50)
print("Mean average precision at IoU=0.75:", results.box.map75)
print("Mean average precision for different IoU thresholds:", results.box.maps)
print("Mean results for different metrics:", results.box.mean_results)
print("Mean precision:", results.box.mp)
print("Mean recall:", results.box.mr)
print("Precision:", results.box.p)
print("Precision curve:", results.box.p_curve)
print("Precision values:", results.box.prec_values)
print("Specific precision metrics:", results.box.px)
print("Recall:", results.box.r)
print("Recall curve:", results.box.r_curve)
Das Ergebnisobjekt enthält auch Geschwindigkeitsmetriken wie Vorverarbeitungszeit, Inferenzzeit, Verlust und Nachverarbeitungszeit. Durch die Analyse dieser Metriken können Sie Ihr YOLO26-Modell für eine bessere Leistung feinabstimmen und optimieren, wodurch es für Ihren spezifischen Anwendungsfall effektiver wird.
Wie funktioniert die Feinabstimmung?
Fine-Tuning beinhaltet die Übernahme eines vortrainierten Modells und die Anpassung seiner Parameter, um die Leistung bei einer bestimmten Aufgabe oder einem bestimmten Datensatz zu verbessern. Dieser Prozess, auch als Modell-Retraining bekannt, ermöglicht es dem Modell, die spezifischen Daten, denen es in realen Anwendungen begegnen wird, besser zu verstehen und Vorhersagen zu treffen. Sie können Ihr Modell basierend auf Ihrer Modellevaluierung neu trainieren, um optimale Ergebnisse zu erzielen.
Tipps zur Feinabstimmung Ihres Modells
Die Feinabstimmung eines Modells bedeutet, mehreren wichtigen Parametern und Techniken besondere Aufmerksamkeit zu schenken, um eine optimale Leistung zu erzielen. Hier sind einige wichtige Tipps, die Sie durch den Prozess führen.
Beginnen mit einer höheren Lernrate
Normalerweise beginnt die Lernrate während der ersten Epochen des Trainings niedrig und steigt allmählich an, um den Trainingsprozess zu stabilisieren. Da Ihr Modell jedoch bereits einige Merkmale aus dem vorherigen Datensatz gelernt hat, kann es vorteilhafter sein, sofort mit einer höheren Lernrate zu beginnen.
Bei der Evaluierung Ihres YOLO26-Modells können Sie den warmup_epochs Validierungsparameter auf warmup_epochs=0 um zu verhindern, dass die Lernrate zu niedrig beginnt. Durch die Befolgung dieses Prozesses wird das Training mit den bereitgestellten Gewichten fortgesetzt und an die Nuancen Ihrer neuen Daten angepasst.
Bildkachelung für kleine Objekte
Bild-Tiling kann die detect-Genauigkeit für kleine Objekte verbessern. Durch die Aufteilung größerer Bilder in kleinere Segmente, wie z.B. das Aufteilen von 1280x1280 Bildern in mehrere 640x640 Segmente, behalten Sie die ursprüngliche Auflösung bei, und das Modell kann aus hochauflösenden Fragmenten lernen. Bei der Verwendung von YOLO26 stellen Sie sicher, dass Sie Ihre Labels für diese neuen Segmente korrekt anpassen.
Austausch mit der Community
Der Austausch von Ideen und Fragen mit anderen Computer Vision-Enthusiasten kann kreative Lösungen für Probleme in Ihren Projekten anregen. Hier sind einige ausgezeichnete Möglichkeiten zum Lernen, zur Fehlerbehebung und zur Vernetzung.
Hilfe und Unterstützung finden
- GitHub Issues: Erkunden Sie das YOLO26 GitHub-Repository und nutzen Sie den Issues-Tab, um Fragen zu stellen, Fehler zu melden und Funktionen vorzuschlagen. Die Community und die Betreuer stehen Ihnen bei allen Problemen zur Seite.
- Ultralytics Discord Server: Treten Sie dem Ultralytics Discord Server bei, um sich mit anderen Nutzern und Entwicklern zu vernetzen, Unterstützung zu erhalten, Wissen auszutauschen und Ideen zu sammeln.
Offizielle Dokumentation
- Ultralytics YOLO26 Dokumentation: Sehen Sie sich die offizielle YOLO26-Dokumentation an, um umfassende Anleitungen und wertvolle Einblicke in verschiedene Computer-Vision-Aufgaben und -Projekte zu erhalten.
Abschließende Gedanken
Die Bewertung und Feinabstimmung Ihres Computer-Vision-Modells sind wichtige Schritte für eine erfolgreiche Modellbereitstellung. Diese Schritte tragen dazu bei, dass Ihr Modell genau, effizient und für Ihre Gesamtanwendung geeignet ist. Der Schlüssel zum Training des bestmöglichen Modells liegt in kontinuierlichem Experimentieren und Lernen. Zögern Sie nicht, Parameter anzupassen, neue Techniken auszuprobieren und verschiedene Datensätze zu erkunden. Experimentieren Sie weiter und verschieben Sie die Grenzen des Möglichen!
FAQ
Welche Schlüsselmetriken gibt es zur Bewertung der YOLO26-Modellleistung?
Zur Bewertung der YOLO26-Modellleistung gehören wichtige Metriken wie Confidence Score, Intersection over Union (IoU) und Mean Average Precision (mAP). Der Confidence Score misst die Sicherheit des Modells für jede detect-Objektklasse. IoU bewertet, wie gut das vorhergesagte Bounding Box mit der Ground Truth überlappt. Mean Average Precision (mAP) aggregiert Präzisionswerte über alle Klassen hinweg, wobei mAP@.5 und mAP@.5:.95 zwei gängige Typen für variierende IoU-Schwellenwerte sind. Erfahren Sie mehr über diese Metriken in unserem YOLO26-Leistungsmetriken-Leitfaden.
Wie kann ich ein vortrainiertes YOLO26-Modell für meinen spezifischen Datensatz feinabstimmen?
Die Feinabstimmung eines vortrainierten YOLO26-Modells beinhaltet die Anpassung seiner Parameter, um die Leistung bei einer bestimmten Aufgabe oder einem Datensatz zu verbessern. Beginnen Sie mit der Evaluierung Ihres Modells anhand von Metriken und legen Sie dann eine höhere anfängliche Lernrate fest, indem Sie den warmup_epochs Parameter auf 0 setzen, um eine sofortige Stabilität zu gewährleisten. Verwenden Sie Parameter wie rect=true , um unterschiedlich große Bilder effektiv zu verarbeiten. Weitere detaillierte Anleitungen finden Sie in unserem Abschnitt über Feinabstimmung von YOLO26-Modellen.
Wie gehe ich mit variablen Bildgrößen um, wenn ich mein YOLO26-Modell evaluiere?
Um variable Bildgrößen während der Auswertung zu verarbeiten, verwenden Sie den rect=true Parameter in YOLO26, der den Stride des Netzwerks für jeden Batch basierend auf den Bildgrößen anpasst. Der imgsz Parameter legt die maximale Dimension für die Größenänderung von Bildern fest, standardmäßig 640. Passen Sie imgsz an, um Ihren Datensatz und den GPU-Speicher anzupassen. Weitere Informationen finden Sie in unserem Abschnitt zur Verarbeitung variabler Bildgrößen.
Welche praktischen Schritte kann ich unternehmen, um die mittlere durchschnittliche Präzision (mAP) für mein YOLO26-Modell zu verbessern?
Die Verbesserung der Mean Average Precision (mAP) für ein YOLO26-Modell umfasst mehrere Schritte:
- Hyperparameter-Optimierung: Experimentieren Sie mit verschiedenen Lernraten, Batch-Größen und Bildaugmentationen.
- Datenerweiterung: Verwenden Sie Techniken wie Mosaic und MixUp, um vielfältige Trainingsbeispiele zu erstellen.
- Bild-Tiling: Teilen Sie größere Bilder in kleinere Kacheln auf, um die Detektionsgenauigkeit für kleine Objekte zu verbessern. Beachten Sie unseren detaillierten Leitfaden zum Modell-Fine-Tuning für spezifische Strategien.
Wie greife ich in Python auf die Evaluierungsmetriken des YOLO26-Modells zu?
Sie können die Evaluierungsmetriken des YOLO26-Modells mit Python über die folgenden Schritte abrufen:
Nutzung
from ultralytics import YOLO
# Load the model
model = YOLO("yolo26n.pt")
# Run the evaluation
results = model.val(data="coco8.yaml")
# Print specific metrics
print("Class indices with average precision:", results.ap_class_index)
print("Average precision for all classes:", results.box.all_ap)
print("Mean average precision at IoU=0.50:", results.box.map50)
print("Mean recall:", results.box.mr)
Die Analyse dieser Metriken hilft bei der Feinabstimmung und Optimierung Ihres YOLO26-Modells. Für einen tieferen Einblick lesen Sie unseren Leitfaden zu YOLO26-Metriken.