Ich war verwirrt über die Unterschiede zwischen der F1-Punktzahl, der Würfel-Punktzahl und der IoU (Schnittpunkt über der Vereinigung). Inzwischen habe ich herausgefunden, dass F1 und Würfel dasselbe bedeuten (richtig?) Und IoU eine sehr ähnliche Formel wie die anderen beiden hat.
- F1 / Würfel:
- IoU / Jaccard:
Gibt es praktische Unterschiede oder andere nennenswerte Dinge, außer dass F1 die True-Positives höher gewichtet? Gibt es eine Situation, in der ich eins benutzen würde, aber nicht das andere?
Antworten:
Du bist auf dem richtigen Weg.
Also ein paar Sachen von Anfang an. Aus der Definition der beiden Metriken geht hervor, dass IoU- und F-Score immer innerhalb eines Faktors von 2 liegen: und dass sie sich unter den Bedingungen an den Extremen eins und null treffen das würden Sie erwarten (perfekte Übereinstimmung und völlig unzusammenhängend).
Es ist auch zu beachten, dass das Verhältnis zwischen ihnen explizit auf die IoU bezogen werden kann: so dass sich das Verhältnis 1/2 nähert, wenn sich beide Metriken Null nähern.
Es gibt jedoch eine stärkere Aussage, die für die typische Anwendung der Klassifizierung nach dem Maschinellen Lernen gemacht werden kann. Für jede feste "Grundwahrheit" sind die beiden Metriken immer positiv korreliert. Das heißt, wenn der Klassifizierer A unter einer Metrik besser als B ist, ist er auch unter der anderen Metrik besser als der Klassifizierer B.
Es ist also verlockend zu folgern, dass die beiden Metriken funktional äquivalent sind, sodass die Wahl zwischen ihnen willkürlich ist, aber nicht so schnell! Das Problem tritt auf, wenn die durchschnittliche Punktzahl über eine Reihe von Schlussfolgerungen gezogen wird . Der Unterschied ergibt sich dann, wenn quantifiziert wird, wie viel schlechter der Klassifikator B für einen bestimmten Fall ist als A.
Im Allgemeinen neigt die IoU-Metrik dazu, einzelne Instanzen einer schlechten Klassifizierung mehr als die F-Punktzahl quantitativ zu bestrafen, selbst wenn beide übereinstimmen, dass diese eine Instanz schlecht ist. Ähnlich wie L2 die größten Fehler mehr als L1 benachteiligen kann, hat die IoU-Metrik einen "Quadratur" -Effekt auf die Fehler relativ zum F-Score. Der F-Score misst also tendenziell eher die durchschnittliche Leistung, während der IoU-Score eher die Leistung im schlechtesten Fall misst.
Nehmen wir zum Beispiel an, dass die überwiegende Mehrheit der Schlussfolgerungen mit dem Klassifikator A mäßig besser ist als mit dem Klassifikator B, aber einige von ihnen mit dem Klassifikator A signifikant schlechter Klassifikator B.
Allerdings sind diese beiden Metriken viel ähnlicher als sie sich unterscheiden. Beide haben jedoch einen weiteren Nachteil, wenn sie den Durchschnitt dieser Scores über viele Schlussfolgerungen ziehen: Sie übertreiben beide die Bedeutung von Mengen mit wenig bis gar keinen positiven Grundwahrheitsmengen. Wenn im allgemeinen Beispiel der Bildsegmentierung ein Bild nur ein einzelnes Pixel einer feststellbaren Klasse aufweist und der Klassifikator dieses Pixel und ein anderes Pixel feststellt, beträgt seine F-Bewertung nur 2/3 und die IoU ist bei 1 / sogar noch schlechter. 2. Triviale Fehler wie diese können die durchschnittliche Punktzahl einer Reihe von Bildern ernsthaft dominieren. Kurz gesagt, es gewichtet jeden Pixelfehler umgekehrt proportional zur Größe der ausgewählten / relevanten Menge, anstatt sie gleich zu behandeln.
Es gibt eine weitaus einfachere Metrik, die dieses Problem vermeidet. Verwenden Sie einfach den Gesamtfehler: FN + FP (z. B. 5% der Pixel des Bildes waren falsch kategorisiert). In dem Fall, in dem einer wichtiger ist als der andere, kann ein gewichteter Durchschnitt verwendet werden: FP + FN.c0 c1
quelle
"That is to say that if classifier A is better than B under one metric, it is also better than classifier B under the other metric."
und 2:"It may be the case then that the F metric favors classifier A while the IoU metric favors classifier B."