Obszar pod krzywą ROC a ogólna dokładność

29

Trochę się mylę co do pola pod krzywą (AUC) ROC i ogólnej dokładności.

  1. Czy AUC będzie proporcjonalne do ogólnej dokładności? Innymi słowy, kiedy będziemy mieli większą ogólną dokładność, czy na pewno uzyskamy większy AUC? Czy są z definicji dodatnio skorelowane?

  2. Jeśli są pozytywnie skorelowane, dlaczego zawracamy sobie głowę zgłaszaniem ich obu w niektórych publikacjach?

  3. W rzeczywistości wykonałem pewne zadanie klasyfikacji i otrzymałem wyniki w następujący sposób: klasyfikator A uzyskał dokładność 85% i AUC 0,98, a klasyfikator B uzyskał dokładność 93% i AUC 0,92. Pytanie brzmi, który klasyfikator jest lepszy? Czy też możliwe jest uzyskanie podobnych wyników (mam na myśli błąd w mojej implementacji)?

Samo Jerom
źródło
1
Znalazłem gazetę, która może zainteresować niektórych z was. google.co.uk/...
Samo Jerom
Czy AUC nie powinno być mniejsze niż ogólna dokładność, ponieważ liczymy fałszywie dodatni wskaźnik w pomiarze AUC, podczas gdy my nie dokładności?
Ali Sultan
ROC AUC jest korzystne, gdy klasy mają różną wielkość. Jeśli 99% obiektów jest dodatnich, dokładność 99% można uzyskać przez losowe próbkowanie. Wtedy wartość AUC ROC będzie znacznie bardziej znacząca.
Anony-Mousse,

Odpowiedzi:

26

AUC (na podstawie ROC) i ogólna dokładność nie wydają się tą samą koncepcją.

Ogólna dokładność oparta jest na jednym konkretnym punkcie odcięcia, podczas gdy ROC wypróbowuje cały punkt odcięcia i wykreśla czułość i swoistość. Kiedy porównujemy ogólną dokładność, porównujemy dokładność na podstawie pewnego punktu odcięcia. Ogólna dokładność różni się w zależności od punktu odcięcia.

Vincent
źródło
2
Dziękuję bardzo za odpowiedź! Rozumiem, że ogólna dokładność jest uzyskiwana z określonego punktu odcięcia (lub wartości progowej). Istnieje jednak jeden najlepszy punkt odcięcia, tj. Najbliższy lewy górny róg. Na przykład moja ogólna dokładność jest obliczana na podstawie tego najlepszego punktu odcięcia, a AUC dotyczy wszystkich różnych punktów odcięcia. Jak zatem interpretować tę dokładność i AUC? Na przykład wydajność dwóch klasyfikatorów, o których wspomniałem powyżej.
Samo Jerom
3
Rozumiem. Porównujesz najlepszą ogólną dokładność i AUC. Ale wciąż są one inną koncepcją. AUC to P (przewidywana PRAWDA | faktyczna PRAWDA) vs P (FAŁSZ | FAŁSZ), podczas gdy ogólna dokładność to P = P (PRAWDA | PRAWDA) * P (rzeczywista PRAWDA) + P (FAŁSZ | FAŁSZ) * P ( FALSE). Zależy to więc od proporcji prawdziwej wartości w zestawie danych. W praktyce wydaje się, że najlepszą ogólną dokładność uzyskuje się zwykle, gdy punkt odcięcia znajduje się w pobliżu P (rzeczywista PRAWDA).
Vincent
AUC i najlepsza ogólna dokładność mogą być niespójne, w zależności od proporcji rzeczywistej wartości zestawu danych. W twoim przypadku wydaje się, że jeden z klasyfikatorów bardziej skupia się na czułości, a drugi na specyficzności. W twoim obecnym zestawie danych P (PRAWDA) nie wynosi 50%. Tak więc czułość i swoistość przyczyniają się do ogólnej dokładności według różnych wag. W praktyce ROC może dostarczyć nam więcej informacji i chcielibyśmy wybrać klasę indywidualnie dla każdego przypadku. Na przykład klasyfikator spamu może bardziej koncentrować się na P (nie spam | nie spam), aby zapobiec pominięciu ważnych wiadomości e-mail.
Vincent
Dzięki za odpowiedź. Teraz jest o wiele wyraźniej. Ale jeśli ktoś chce więcej omówić, napisz tutaj.
Samo Jerom,
27

Chociaż dwie miary statystyczne są prawdopodobnie skorelowane, mierzą różne cechy klasyfikatora.

AUROC

Pole pod krzywą (AUC) jest równe prawdopodobieństwu, że klasyfikator uszereguje losowo wybrany pozytywny przypadek wyżej niż losowo wybrany negatywny przykład. Mierzy umiejętność klasyfikatorów w szeregowaniu zestawu wzorców według stopnia, w jakim należą one do klasy dodatniej, ale bez faktycznego przypisywania wzorców do klas.

Ogólna dokładność zależy również od zdolności klasyfikatora do uszeregowania wzorców, ale także od jego zdolności do wybrania progu w rankingu stosowanego do przypisania wzorców do klasy dodatniej, jeśli jest powyżej progu, i do klasy ujemnej, jeśli poniżej.

Zatem klasyfikator z wyższą statystyką AUROC (wszystkie rzeczy są równe) może również mieć wyższą ogólną dokładność, ponieważ ranking wzorców (który mierzy AUROC) jest korzystny zarówno dla AUROC, jak i ogólnej dokładności. Jeśli jednak jeden klasyfikator szereguje wzorce dobrze, ale źle wybiera próg, może mieć wysoką wartość AUROC, ale słabą ogólną dokładność.

Praktyczne użycie

W praktyce lubię zbierać ogólną dokładność, AUROC i jeśli klasyfikator ocenia prawdopodobieństwo członkostwa w klasie, entropię krzyżową lub informacje predykcyjne. Następnie mam metrykę, która mierzy jego surową zdolność do przeprowadzenia twardej klasyfikacji (zakładając, że fałszywie dodatnie i fałszywie ujemne koszty błędnej klasyfikacji są równe, a częstotliwości klasowe w próbce są takie same jak w użyciu operacyjnym - duże założenie!), metryka mierząca zdolność rangowania wzorców oraz metryka mierząca, jak dobrze skalibrowany jest ranking jako prawdopodobieństwo.

W przypadku wielu zadań koszty błędnej klasyfikacji operacyjnej są nieznane lub zmienne, lub częstotliwości klas operacyjnych są inne niż w próbie szkoleniowej lub są zmienne. W takim przypadku ogólna dokładność jest często dość nieistotna, a AUROC jest lepszym wskaźnikiem wydajności i idealnie chcemy klasyfikatora, który generuje dobrze skalibrowane prawdopodobieństwa, abyśmy mogli zrekompensować te problemy w użyciu operacyjnym. Zasadniczo, która metryka jest ważna, zależy od problemu, który próbujemy rozwiązać.

Dikran Torbacz
źródło
Dikran, czy masz odniesienie do pierwszego akapitu?
Bunder
@Bunder nie bezpośrednio, AUROC jest prawdopodobieństwem, że losowo wybrany wzorzec + ve zostanie sklasyfikowany wyżej niż losowo wybrany wzorzec -ve ( en.wikipedia.org/wiki/... ), a zatem jest miarą jakości rankingu , ponieważ chcielibyśmy, aby to prawdopodobieństwo było jak najwyższe.
Dikran Torbacz
5

Czy AUC jest naprawdę bardzo przydatną miarą?

Powiedziałbym, że oczekiwany koszt jest bardziej odpowiednim środkiem.

Wtedy miałbyś koszt A dla wszystkich fałszywych pozytywów i koszt B dla wszystkich fałszywych negatywów. Może łatwo być, że inna klasa jest względnie droższa niż inna. Oczywiście, jeśli masz koszty fałszywej klasyfikacji w różnych podgrupach, byłoby to jeszcze bardziej wydajne.

Wykreślając punkt odcięcia na osi X i oczekiwany koszt na osi Y, można zobaczyć, który punkt odcięcia minimalizuje oczekiwany koszt.

Formalnie masz Stratę w funkcji straty (odcięcie | danych, koszt), którą próbujesz zminimalizować.

Analityk
źródło
3
Oczekiwany koszt można oszacować tylko wtedy, gdy znasz fałszywie dodatnie i fałszywie ujemne koszty, które nie są konieczne do obliczenia AUC, co jest dobrą statystyką do zastosowania, jeśli koszty są nieznane lub zmienne.
Dikran Marsupial
4

Podobnie jak wszystkie odpowiedzi zostały opublikowane: ROCi accuracysą fundamentalne dwie różne koncepcje.

Ogólnie rzecz biorąc, ROCopisuje moc dyskryminacyjną klasyfikatora niezależną od rozkładu klas i nierówne koszty błędów prognozowania (koszt fałszywie dodatni i fałszywie ujemny).

Metryka podobna accuracyjest obliczana na podstawie rozkładu klas test datasetlub cross-validation, ale współczynnik ten może się zmienić, gdy zastosujesz klasyfikator do rzeczywistych danych, ponieważ podstawowy rozkład klas został zmieniony lub nieznany. Z drugiej strony, TP ratei FP ratektóre są wykorzystywane do konstruowania AUCnie będą mieć wpływu przesunięcia dystrybucyjnej klasy.

Ling Ma
źródło