Accuracy
Die Genauigkeit gibt den Anteil der Vorhersagen an, die ein Modell richtig trifft. Formel, Top-1- und Top-5-Genauigkeit, das Genauigkeitsparadoxon bei unausgewogenen Daten und bessere Metriken.
Genauigkeit ist der Anteil der korrekten Vorhersagen eines Modells: die Zahl der korrekten Vorhersagen geteilt durch die Gesamtzahl der Vorhersagen. Sie ist der Standardwert für Bildklassifizierung und andere Aufgaben des überwachten Lernens, bei denen jedem Eingang genau ein Label zugeordnet ist. Sie beantwortet die einfachste Frage zu einem Modell: Wie oft liegt es richtig? Genauigkeit lässt sich leicht ablesen und zwischen Modellen vergleichen, gewichtet jedoch jede Vorhersage gleich. Bei unausgewogenen Daten kann ein Modell daher einen hohen Wert erzielen und gerade bei den entscheidenden Fällen versagen.
So wird die Genauigkeit berechnet#
Bei einer binären Aufgabe liefern die vier Werte einer Konfusionsmatrix die Formel Genauigkeit = (TP + TN) / (TP + TN + FP + FN): richtig positive plus richtig negative Vorhersagen, geteilt durch alle Vorhersagen. Bei einer Aufgabe mit vielen Klassen entspricht die Genauigkeit der Summe der Diagonaleinträge der Matrix geteilt durch die Gesamtzahl; accuracy_score von scikit-learn berechnet sie direkt aus zwei Label-Arrays. Häufig wird statt der Genauigkeit die Fehlerrate angegeben, wobei Fehler = 1 − Genauigkeit gilt.
Top-1- und Top-5-Genauigkeit#
Klassifikatoren mit vielen Klassen geben auch die Top-k-Genauigkeit an. Bei der Top-1-Genauigkeit gilt eine Vorhersage nur dann als korrekt, wenn die Klasse mit dem höchsten Wert das richtige Label ist. Bei der Top-5-Genauigkeit gilt sie als korrekt, wenn das richtige Label zu den fünf Klassen mit den höchsten Werten gehört. Top-5 wurde durch den ImageNet-Wettbewerb zum Standard. Die Fotos dort enthalten oft mehrere Objekte, tragen aber jeweils nur ein Label aus 1.000 Klassen. YOLO26-Klassifizierungsmodelle geben beide Werte an; das Nano-Modell yolo26n-cls.pt erreicht bei einer Auflösung von 224 Pixeln eine Top-1-Genauigkeit von 71,4 % und eine Top-5-Genauigkeit von 90,1 % auf ImageNet.
Genauigkeit und verwandte Kennzahlen#
- Präzision: der Anteil der tatsächlich positiven Fälle unter den als positiv vorhergesagten Fällen. Sie steigt, wenn es weniger Fehlalarme gibt.
- Trefferquote: der Anteil der tatsächlichen positiven Fälle, die das Modell findet. An dieser Zahl zeigt sich, wenn ein Modell eine seltene Klasse ignoriert.
- F1-Wert: das harmonische Mittel aus Präzision und Trefferquote, das niedrig bleibt, wenn nicht beide Werte hoch sind.
- Mittlere durchschnittliche Präzision (mAP): die Standardkennzahl für Objekterkennung. Genauigkeit ist hier nicht anwendbar, weil der Hintergrund keine zählbaren richtig negativen Fälle bietet, sondern eine unbegrenzte Zahl leerer Bildbereiche.
Das Genauigkeitsparadoxon#
Wenn eine Klasse dominiert, belohnt die Genauigkeit das Ignorieren der seltenen Klasse. Sind 1 % der Transaktionen betrügerisch, erreicht ein Modell, das jede Transaktion genehmigt, eine Genauigkeit von 99 % und erkennt dennoch keinen einzigen Betrugsfall – ein Muster, das als Genauigkeitsparadoxon bekannt ist. Dieselbe Falle tritt bei der Fehlerprüfung, dem Krankheitsscreening und der Anomalieerkennung auf, bei denen die interessierende Klasse von Natur aus selten ist.
import numpy as np
from sklearn.metrics import accuracy_score, balanced_accuracy_score, recall_score
# 1,000 transactions, 10 of them fraudulent (label 1)
y_true = np.zeros(1000, dtype=int)
y_true[:10] = 1
# A model that labels every transaction as legitimate
y_pred = np.zeros(1000, dtype=int)
print(f"Accuracy: {accuracy_score(y_true, y_pred):.2f}")
print(f"Balanced accuracy: {balanced_accuracy_score(y_true, y_pred):.2f}")
print(f"Fraud recall: {recall_score(y_true, y_pred):.2f}")Die ausgewogene Genauigkeit, die mittlere Trefferquote über alle Klassen hinweg, macht das Versagen sichtbar, das die einfache Genauigkeit verbirgt: Das Skript gibt eine Genauigkeit von 0.99, eine ausgewogene Genauigkeit von 0.50 und eine Betrugs-Trefferquote von 0.00 aus.










