Zalety krzywych ROC

15

Jakie są zalety krzywych ROC?

Na przykład klasyfikuję niektóre obrazy, co jest problemem klasyfikacji binarnej. Wyodrębniłem około 500 obiektów i zastosowałem algorytm wyboru cech, aby wybrać zestaw cech, a następnie zastosowałem SVM do klasyfikacji. W takim przypadku jak mogę uzyskać krzywą ROC? Czy powinienem zmienić wartości progowe mojego algorytmu wyboru cech i uzyskać czułość i swoistość danych wyjściowych, aby narysować krzywą ROC?

W moim przypadku jaki jest cel tworzenia krzywej ROC?

użytkownik570593
źródło
2
„Wprowadzenie do analizy ROC” Toma Fawcetta pomogło mi lepiej zrozumieć krzywe ROC. Możesz się nim cieszyć, jeśli szukasz dodatkowej literatury na ten temat.
Alexander
Dobra, ale co byś zrobił, aby porównać dwa klasyfikatory? Jeśli używają progów, aby inna specyficzność lub czułość nie pasowały do ​​siebie bardzo ściśle, nie sądzę, że łatwo jest porównywać bez patrzenia na więcej punktów na ROC.
Michael R. Chernick
Rzadko właściwe jest opracowywanie klasyfikatorów, a błąd klasyfikacji jest niewłaściwą regułą punktacji. Istnieje wiele metod o dużej mocy do porównywania jakości prawdziwych prognoz i są one bardziej intuicyjne niż krzywe ROC. Zobacz na przykład to .
Frank Harrell,

Odpowiedzi:

13

Wiele binarnych algorytmów klasyfikacji oblicza rodzaj wyniku klasyfikacji (czasami, ale nie zawsze jest to prawdopodobieństwo, że jest w stanie docelowym) i klasyfikują się na podstawie tego, czy wynik jest powyżej określonego progu. Wyświetlanie krzywej ROC pozwala zobaczyć kompromis między czułością i swoistością dla wszystkich możliwych progów, a nie tylko tym, który został wybrany techniką modelowania. Różne cele klasyfikacji mogą sprawić, że jeden punkt na krzywej będzie bardziej odpowiedni dla jednego zadania, a drugi bardziej odpowiedni dla innego zadania, więc spojrzenie na krzywą ROC jest sposobem oceny modelu niezależnie od wyboru progu.

Michael McGowan
źródło
Dziękuję za odpowiedź. To jest naprawdę przydatne. Czy na podstawie krzywej ROC można jednak ustalić próg? A w moim przypadku, jak mogę uzyskać punkt w przestrzeni ROC dla czułości = 100% lub swoistości = 100%. ponieważ zmieniam próg algorytmu wyboru funkcji.
user570593
1
Krzywa ROC pokazuje czułość i swoistość na wszystkich możliwych progach, więc jeśli znajdziesz punkt reprezentujący właściwy kompromis, możesz wybrać próg, który idzie z tym punktem na krzywej.
Michael McGowan
Czy istnieje jakiś automatyczny sposób na wybranie właściwego kompromisu, czy powinienem sam wybrać kompromis? A w moim przypadku, jak mogę uzyskać punkt w przestrzeni ROC dla czułości = 100% lub swoistości = 100%. ponieważ zmieniam próg algorytmu wyboru funkcji.
user570593
2
Jeśli masz dobrze zdefiniowane kryterium (na przykład maksymalizujące precyzję), możesz to zautomatyzować. Ale dobry kompromis dla jednego problemu może być kiepski dla drugiego.
Michael McGowan
2
Czułość lub swoistość wynoszącą 100% można w prosty sposób uzyskać, ustawiając próg na wartości minimalnej lub maksymalnej ... czy naprawdę tego chcesz?
Michael McGowan
11

Krzywe ROC nie są pouczające w 99% przypadków, które widziałem w ciągu ostatnich kilku lat. Wydaje się, że są one uważane za obowiązkowe przez wielu statystyk i jeszcze więcej praktyków uczenia maszynowego. I upewnij się, że twój problem jest naprawdę problemem klasyfikacji, a nie problemem oceny ryzyka. U podstaw problemów z krzywymi ROC jest to, że zapraszają użytkowników do używania punktów odcięcia dla zmiennych ciągłych i używają prawdopodobieństw wstecz, tj. Prawdopodobieństw zdarzeń, które są w odwrotnej kolejności czasowej (czułość i swoistość). Krzywe ROC nie mogą być użyte do znalezienia optymalnych kompromisów, z wyjątkiem bardzo szczególnych przypadków, w których użytkownicy reguły decyzyjnej rezygnują z funkcji utraty (kosztu; użyteczności) analitykowi.

Frank Harrell
źródło
Nie do końca zgadzam się z Frankiem. Myślę, że używanie AUC ROC często stanowi problem. Ale jakościowo myślę, że porównanie algorytmów może być pomocne. Samo spojrzenie na swoistość i wrażliwość w jednym punkcie nie jest tak pouczające. Nie jestem również pewien, czy jego odpowiedź naprawdę odnosi się do pytania, ponieważ OP naprawdę chce wiedzieć w jego przypadku, dlaczego przypada on na 99% przypadków nieinformacyjnych lub 1%, które są niesforne.
Michael R. Chernick
Cześć Michael - dodam tylko, że lubię używać właściwych zasad punktacji w tym uogólnionych środków, wynik Brier (jak średni błąd kwadratu). Naprawdę lubię pokazywać, że prognozy są dokładne. R2
Frank Harrell
@FrankHarrell Byłbym zainteresowany tym, co masz na myśli mówiąc, że „99% nie informowało”? Jakie to były przypadki i kiedy użycie ROCC byłoby prawidłowe? Również w jaki sposób są uogólnione Środki lepiej dla problemów binarnych? Jestem ciekawy, ponieważ wydaje się, że masz dość silny sentyment do ROCC i zastanawiam się, co jest za tobą. R2
Momo
1
@FrankHarrell Ale jak porównać dwa algorytmy, gdy nie są one ściśle ze sobą powiązane ani pod względem swoistości, ani czułości?
Michael R. Chernick
7
R2χ2R2
1

Po utworzeniu krzywej ROC można obliczyć AUC (pole pod krzywą). AUC to dokładność testu dla wielu progów. AUC = 1 oznacza, że ​​test jest idealny. AUC = 0,5 oznacza przypadkowe wykonanie klasyfikacji binarnej.

Jeśli istnieje wiele modeli, AUC zapewnia pojedynczy pomiar do porównania w różnych modelach. Zawsze występują kompromisy z każdym pojedynczym miernikiem, ale AUC jest dobrym miejscem do rozpoczęcia.

Brian Spiering
źródło
1
Myślę, że to niebezpieczne myślenie. AUROC jest użyteczny IMHO tylko dlatego, że w pliku binarnymY przypadek jest równy prawdopodobieństwu zgodności (do-indeks; Statystyka Wilcoxona; Somersrexywspółczynnik korelacji rang). Rysowanie całego ROC prowadzi do dychotomicznego myślenia.
Frank Harrell
0

AUC nie porównuje klas rzeczywistych z przewidywanymi. Nie patrzy na przewidywaną klasę, ale na wynik prognozy lub prawdopodobieństwo. Możesz dokonać prognozy klasy, stosując wartość odcięcia dla tego wyniku, powiedzmy, każda próbka, która uzyskała wynik poniżej 0,5, jest klasyfikowana jako negatywna. Ale ROC pojawia się wcześniej. Działa z wynikami / prawdopodobieństwami klasowymi.

Pobiera te wyniki i sortuje wszystkie próbki według tego wyniku. Teraz, gdy znajdziesz pozytywną próbkę, krzywa ROC robi krok w górę (wzdłuż osi y). Za każdym razem, gdy znajdziesz próbkę ujemną, przesuwasz się w prawo (wzdłuż osi x). Jeśli ten wynik jest inny dla dwóch klas, próbki pozytywne są pierwsze (zwykle). Oznacza to, że wykonujesz więcej kroków w górę niż w prawo. W dalszej części listy pojawią się próbki negatywne, więc przesuń się w lewo. Gdy przejrzysz całą listę próbek, osiągniesz współrzędną (1,1), która odpowiada 100% próbek dodatnich i 100% próbek ujemnych.

Jeśli wynik idealnie oddzieli wynik pozytywny od próbek ujemnych, przejdziesz od (x = 0, y = 0) do (1,0), a następnie stamtąd do (1, 1). Obszar pod krzywą wynosi 1.

Jeśli twój wynik ma taki sam rozkład dla próbek dodatnich i ujemnych, prawdopodobieństwo znalezienia próbki dodatniej lub ujemnej na posortowanej liście jest równe, a zatem prawdopodobieństwo przejścia w górę lub w lewo na krzywej ROC jest równe. Dlatego poruszasz się po przekątnej, ponieważ zasadniczo poruszasz się w górę i w lewo, w górę i w lewo, i tak dalej ... co daje wartość AROC około 0,5.

W przypadku niezrównoważonego zestawu danych wielkość kroku jest inna. Robisz więc mniejsze kroki w lewo (jeśli masz więcej próbek ujemnych). Dlatego wynik jest mniej więcej niezależny od nierównowagi.

Dzięki krzywej ROC możesz wizualizować sposób rozdzielania próbek, a obszar pod krzywą może być bardzo dobrym miernikiem do pomiaru wydajności algorytmu klasyfikacji binarnej lub dowolnej zmiennej, której można użyć do oddzielenia klas.

wprowadź opis zdjęcia tutaj

Rysunek pokazuje te same rozkłady dla różnych wielkości próbek. Czarny obszar pokazuje, gdzie można oczekiwać krzywych ROC losowych mieszanin próbek dodatnich i ujemnych.

Sören
źródło
Te wykresy nie zapewniają wglądu i mają wyjątkowo wysoki stosunek atramentu do informacji IMHO. Trzymaj się właściwej oceny dokładności: fharrell.com/post/class-damage fharrell.com/post/addvalue
Frank Harrell
Na tych wykresach jest o wiele więcej informacji niż w jednoznacznym wyniku dokładności. Ten sam wynik może pochodzić z wielu różnych dystrybucji. Czy masz wczesne uznanie? Czy masz wiele klas próbek pozytywnych, które zachowują się inaczej? Czy twój wynik jest statystycznie istotny? Odpowiedzi na wszystkie te pytania mogą być oczywiste, patrząc na te wykresy, i nie da się odpowiedzieć jednym wynikiem dokładności.
Sören,
Poważnie zastanawiam się, czy konsumenci i analitycy mogą uzyskać wgląd w te krzywe, które są prawie tak intuicyjne, jak pokazanie krzywej kalibracyjnej nałożonej z histogramem wysokiej rozdzielczości pokazującym przewidywane wartości. I każdy punkt na krzywej ROC to niewłaściwy wynik dokładności.
Frank Harrell,
Początkujący często mają trudności ze zrozumieniem tych krzywych. Dlatego niekoniecznie polecam pokazywanie go konsumentom w celu reklamowania twojego produktu. Myślę, że chcesz czegoś bardziej uproszczonego. Krzywa jest jednak większa niż poszczególne punkty.
Sören,