F1 / Würfel-Score gegen IoU

24

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:
    2TP2TP+FP+FN
  • IoU / Jaccard:
    TPTP+FP+FN

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?

pietz
quelle
Anscheinend ist das Jaccard - Koeffizient ist auch die gleiche wie IoU
pietz
Mich würde besonders interessieren, ob einige dieser (jetzt 4) Messungen nur für binäre Daten gedacht sind.
Pietz

Antworten:

37

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).

F/2ichOUF

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.

ichOU/F=1/2+ichOU/2

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.c0c1

willem
quelle
willem, ich hätte mir keine bessere Antwort wünschen können. Vielen Dank, dass Sie sich die Zeit genommen haben.
Pietz
5
Ich habe Ihren Total Error-Ansatz ausprobiert und wollte nur hinzufügen, dass er bei ständigen Ungleichgewichten zwischen Positiven und Negativen nicht gut funktioniert. Stellen Sie sich einen gesamten Bilddatensatz vor, bei dem nur ein Pixel die Grundwahrheitssegmentierung bildet. Neuronale Netze können relativ schnell erkennen, dass eine leere Vorhersage unter Verwendung des Gesamtfehlers immer zu 99,9% genau ist. Wenn wir uns für IoU oder DSC entscheiden, setzen wir das Netzwerk unter Druck, aus den gleichen Gründen, die Sie oben erwähnt haben, eine Segmentierung zu finden. Am Ende ist es also sehr problemabhängig.
Pietz
1
Kann mir jemand helfen, die folgenden zwei Aussagen in Einklang zu bringen ?: 1: "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."
Matt Kleinsmith
1
Ersteres bezieht sich auf eine Bewertung einer einzelnen Schlussfolgerung, und letzteres bezieht sich auf eine durchschnittliche Bewertung über eine Reihe von Schlussfolgerungen (z. B. eine Reihe von Bildern).
Willem