F1 / Dice-Score vs IoU


24

Byłem zdezorientowany różnicami między wynikiem F1, wynikiem Dice i IoU (przecięcie przez związek). Do tej pory dowiedziałem się, że F1 i Dice oznaczają to samo (prawda?), A IoU ma bardzo podobną formułę do pozostałych dwóch.

  • F1 / Dice:
    2)T.P.2)T.P.+faP.+faN.
  • IoU / Jaccard:
    T.P.T.P.+faP.+faN.

Czy są jakieś praktyczne różnice lub inne rzeczy warte odnotowania, z wyjątkiem tego, że F1 waży więcej pozytywnych wyników? Czy jest sytuacja, w której użyłbym jednego, ale nie drugiego?


Najwyraźniej współczynnik Jaccard jest również taki sam jak IoU
pietz

Byłbym szczególnie zainteresowany, jeśli niektóre z tych (obecnie 4) pomiarów są przeznaczone tylko dla danych binarnych.
pietz

Odpowiedzi:


38

Jesteś na dobrej drodze.

Kilka rzeczy od razu. Z definicji tych dwóch wskaźników wynika, że ​​wynik IoU i F jest zawsze w granicach 2: a także, że spotykają się one na skrajności jednego i zera w warunkach że można się spodziewać (idealne dopasowanie i całkowicie rozłączny).

fa/2)jaoUfa

Należy również zauważyć, że stosunek między nimi może być wyraźnie powiązany z IoU: tak że stosunek ten zbliża się do 1/2, gdy oba wskaźniki zbliżają się do zera.

jaoU/fa=1/2)+jaoU/2)

Istnieje jednak silniejsze stwierdzenie, które można sformułować dla typowego zastosowania klasyfikacji jako uczenia maszynowego. W przypadku każdej ustalonej „podstawowej prawdy” te dwie metryki są zawsze dodatnio skorelowane. To znaczy, że jeśli klasyfikator A jest lepszy niż B w ramach jednej metryki, jest również lepszy niż klasyfikator B w ramach drugiej metryki.

Kuszące jest zatem stwierdzenie, że te dwie metryki są funkcjonalnie równoważne, więc wybór między nimi jest arbitralny, ale nie tak szybki! Problem pojawia się, gdy bierze się średni wynik z zestawu wniosków . Następnie pojawia się różnica przy określaniu, o ile gorszy jest klasyfikator B niż A w danym przypadku.

Zasadniczo metryka IoU ma tendencję do karania pojedynczych przypadków złej klasyfikacji bardziej niż ocena F pod względem ilościowym, nawet jeśli oboje mogą zgodzić się, że to jedno wystąpienie jest złe. Podobnie do tego, w jaki sposób L2 może karać największe błędy bardziej niż L1, metryka IoU ma tendencję do wywierania efektu „kwadratu” na błędy w stosunku do wyniku F. Tak więc wynik F ma tendencję do mierzenia czegoś bliższego średniej wydajności, podczas gdy wynik IoU mierzy coś bliższego wydajności najgorszego przypadku.

Załóżmy na przykład, że zdecydowana większość wnioskowania jest umiarkowanie lepsza z klasyfikatorem A niż B, ale niektóre z nich są znacznie gorsze przy użyciu klasyfikatora A. Może się zdarzyć, że metryka F faworyzuje klasyfikator A, podczas gdy metryka IoU faworyzuje klasyfikator B.

Oczywiście oba te wskaźniki są znacznie bardziej do siebie podobne niż różne. Ale obaj cierpią z powodu innej niekorzystnej sytuacji z punktu widzenia uśredniania tych wyników w porównaniu z wieloma wnioskami: obaj przeceniają znaczenie zbiorów z niewielkimi lub żadnymi rzeczywistymi zbiorami dodatnimi prawdy. W typowym przykładzie segmentacji obrazu, jeśli obraz ma tylko jeden piksel jakiejś wykrywalnej klasy, a klasyfikator wykrywa ten piksel i jeszcze jeden piksel, jego wynik F wynosi zaledwie 2/3, a IoU jest jeszcze gorszy przy 1 / 2) Trywialne błędy, takie jak te, mogą poważnie zdominować średni wynik uzyskany na zestawie zdjęć. Krótko mówiąc, waży każdy błąd pikseli odwrotnie proporcjonalnie do wielkości wybranego / odpowiedniego zestawu, zamiast traktować je jednakowo.

Istnieje o wiele prostsza metryka, która pozwala uniknąć tego problemu. Wystarczy użyć błędu całkowitego: FN + FP (np. 5% pikseli obrazu zostało błędnie skategoryzowanych). W przypadku, gdy jedno jest ważniejsze od drugiego, można zastosować średnią ważoną: FP + FN.do0do1


willem, nie mogłem prosić o lepszą odpowiedź. dziękuję bardzo za poświęcenie czasu.
pietz

5
Wypróbowałem podejście oparte na całkowitym błędzie i chciałem tylko dodać, że nie działa ono dobrze przy ciągłym braku równowagi między pozytywami i negatywami. Wyobraź sobie cały zestaw danych obrazów, w których tylko jeden piksel stanowi segmentację prawdy. Sieci neuronowe mogą dość szybko nauczyć się, że pusta prognoza jest zawsze 99,9% dokładna przy użyciu błędu całkowitego. Wybierając IoU lub DSC, zmuszamy sieć do znalezienia segmentacji z tych samych powodów, o których wspomniałeś powyżej. Tak więc ostatecznie zależy to od problemu.
pietz

1
Czy ktoś może mi pomóc pogodzić następujące dwa stwierdzenia ?: 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."i 2:"It may be the case then that the F metric favors classifier A while the IoU metric favors classifier B."
Matt Kleinsmith

1
Pierwszy odnosi się do wyniku pojedynczego wnioskowania, a drugi odnosi się do średniego wyniku z zestawu wnioskowania (np. Zestawu obrazów).
willem
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.