Klasyfikacja: ROC i AUC

W poprzedniej sekcji przedstawiono zestaw danych modelu, które zostały obliczone przy użyciu jednej wartości progowej klasyfikacji. Jeśli jednak chcesz ocenić jakość modelu we wszystkich możliwych progach, musisz użyć innych narzędzi.

Krzywa charakterystyki operacyjnej odbiornika (ROC)

Krzywa ROC to wizualizacja skuteczności modelu w przypadku wszystkich progów. Długa wersja nazwy, charakterystyka operacyjna odbiornika, to pozostałość po wykrywaniu radarowym z czasów II wojny światowej.

Krzywa ROC jest rysowana przez obliczenie współczynnika wyników prawdziwie pozytywnych (TPR) i współczynnika wyników fałszywie pozytywnych (FPR) przy każdym możliwym progu (w praktyce przy wybranych odstępach), a następnie naniesienie TPR na wykresie w powiązaniu z FPR. Idealny model, który przy danej wartości progowej ma TPR 1,0 i FPR 0,0, może być reprezentowany przez punkt w punkcie (0, 1), jeśli wszystkie inne wartości progowe są ignorowane, lub przez:

Rysunek 1. Wykres TPR (oś Y) na FPR (oś X), przedstawiający skuteczność modelu idealnego: linii od (0,1) do (1,1).
Rysunek 1. ROC i AUC hipotetycznego idealnego modelu.

Obszar pod krzywą (AUC)

Obszar pod krzywą ROC (AUC) reprezentuje prawdopodobieństwo, że model, jeśli otrzyma losowo wybrany przykład pozytywny i negatywny, sklasyfikuje przykład pozytywny wyżej niż negatywny.

Powyższy idealny model zawierający kwadrat o bokach o długości 1 ma obszar pod krzywą (AUC) równy 1,0. Oznacza to, że z 100% pewnością model prawidłowo oceni losowo wybrany przykład pozytywny wyżej niż losowo wybrany przykład negatywny. Innymi słowy, patrząc na rozproszenie punktów danych poniżej, AUC podaje prawdopodobieństwo, że model umieści losowo wybrany kwadrat po prawej stronie losowo wybranego okręgu, niezależnie od tego, gdzie ustawiono próg.

Wiersz danych widżetu bez suwaka

Konkretniej mówiąc, klasyfikator spamu o AUC równym 1,0 zawsze przypisuje losowemu spamowemu e-mailowi wyższe prawdopodobieństwo bycia spamem niż losowemu wiarygodnemu e-mailowi. Rzeczywista klasyfikacja każdego e-maila zależy od wybranego przez Ciebie progu.

W przypadku klasyfikatora binarnego model, który działa dokładnie tak samo jak przypadkowe zgadywanie lub rzut monetą, ma ROC w postaci linii od punktu (0,0) do (1,1). AUC wynosi 0,5, co oznacza, że prawdopodobieństwo prawidłowego uporządkowania losowego przykładu pozytywnego i negatywnego wynosi 50%.

W przykładzie z klasyfikatorem spamu klasyfikator spamu o AUC 0, 5 przypisuje losowemu spamowemu e-mailowi wyższe prawdopodobieństwo bycia spamem niż losowemu wiarygodnemu e-mailowi tylko w połowie przypadków.

Rysunek 2. Wykres TPR (oś Y) na osi FPR (oś X), przedstawiający skuteczność przypadkowego zgadywania (50 na 50): linia ukośna od (0,0) do (1,1).
Rysunek 2. ROC i AUC w przypadku całkowicie przypadkowych typowań.

(Opcjonalnie, zaawansowane) Krzywa precyzji i czułości

AUC i ROC dobrze sprawdzają się w przypadku porównywania modeli, gdy zbiór danych jest w przybliżeniu zrównoważony pod względem klas. Jeśli zbiór danych jest niezrównoważony, krzywe czułości i trafności (PRC) oraz obszar pod tymi krzyżami mogą lepiej wizualizować skuteczność modelu w porównaniu z innymi. Krzywe precyzji i czułości są tworzone przez nanoszenie precyzji na osi y, a czułości na osi x dla wszystkich wartości progowych.

Przykład krzywej precyzji i czułości z wklęsłą krzywą od punktu (0,1) do (1,0)

AUC i ROC do wyboru modelu i progu

AUC to przydatny wskaźnik do porównywania skuteczności 2 różnych modeli, o ile tylko zbiór danych jest w przybliżeniu zrównoważony. Model z większym obszarem pod krzywą jest zwykle lepszy.

Rysunek 3a. Wykres ROC/AUC modelu z AUC=0,65. Rysunek 3.b. Wykres ROC/AUC modelu z AUC=0,93.
Rysunek 3. Krzywe ROC i AUC dwóch hipotetycznych modeli. Krzywa po prawej stronie z większym AUC reprezentuje lepszy z tych 2 modeli.

Punkty na krzywej ROC najbliższe wartości (0,1) odpowiadają zakresowi progów o najlepszej skuteczności w danym modelu. Jak już wspomnieliśmy w sekcjach Próg, Macierz błędówWybór rodzaju danych i ustępstwa, wybrany próg zależy od tego, które dane są najważniejsze w danym przypadku użycia. Na poniższym diagramie punkty A, B i C odpowiadają progom:

Rysunek 4. Krzywa ROC z AUC=0,84, która pokazuje 3 punkty na wypukłej części krzywej najbliżej punktu (0,1) oznaczone kolejno A, B i C.
Rysunek 4. 3 oznaczone punkty odpowiadające progom.

Jeśli wyniki fałszywie dodatnie (fałszywe alarmy) są bardzo kosztowne, warto wybrać próg, który daje niższy FPR, np. w miejscu A, nawet jeśli TPR jest mniejszy. Jeśli natomiast fałszywie pozytywne są tanie, a fałszywie negatywne (niewykryte prawdziwie pozytywne) bardzo kosztowne, preferowany może być próg dla punktu C, który maksymalizuje TPR. Jeśli koszty są mniej więcej takie same, punkt B może zapewnić najlepszy kompromis między TPR a FPR.

Oto krzywa ROC dla danych, które już znamy:

Ćwiczenie: sprawdź swoją wiedzę

W praktyce krzywe ROC są znacznie mniej regularne niż pokazane powyżej. Który z tych modeli, reprezentowany przez krzywą ROC i AUC, ma najlepszą skuteczność?
Krzywa ROC, która łukowato wznosi się, a potem skręca w prawo od punktu (0,0) do punktu (1,1). Krzywa ma AUC 0,77.
Ten model ma najwyższą wartość AUC, która odpowiada najlepszej wydajności.
Krzywa ROC,która jest w przybliżeniu linią prostą od (0,0) do (1,1) z kilkoma załamaniami. Krzywa ma AUC 0,508.
Krzywa ROC, która biegnie zygzakiem w górę i w prawo od punktu (0,0) do (1,1).
           Krzywa ma AUC 0,623.
Krzywa ROC, która łukowato skręca w prawo, a potem w górę od punktu (0,0) do (1,1). Krzywa ma AUC 0,31.
Który z tych modeli ma gorsze wyniki niż przypadek?
Krzywa ROC, która łukowato skręca w prawo, a potem w górę od punktu (0,0) do (1,1). Krzywa ma AUC 0,32.
Ten model ma AUC poniżej 0,5, co oznacza, że jego wyniki są gorsze niż przypadek.
Krzywa ROC,która jest w przybliżeniu linią prostą od punktu (0,0) do (1,1) z kilkoma załamaniami. Krzywa ma AUC 0,508.
Ten model ma nieco lepsze wyniki niż przypadek.
Krzywa ROC, która jest prostą przekątną od punktu (0,0) do punktu (1,1). Krzywa ma AUC 0,5.
Ten model działa tak samo jak model losowy.
Krzywa ROC, która składa się z 2 linii prostopadłych: pionowej linii od (0,0) do (0,1) i poziomej linii od (0,1) do (1,1).
      Krzywa ta ma AUC 1,0.
To hipotetyczny idealny klasyfikator.

(Opcjonalnie, zaawansowane) Pytanie dodatkowe

Którą z tych zmian można wprowadzić w modelu gorszym niż przypadek w poprzednim pytaniu, aby uzyskać lepsze wyniki niż przypadek?
odwrócić prognozy, tak aby prognozy 1 stały się 0, a prognozy 0 stały się 1;
Jeśli klasyfikator binarny z większym prawdopodobieństwem umieszcza przykłady w niewłaściwych klasach niż przypadek, zmiana etykiety klasy natychmiast poprawia trafność prognoz bez konieczności ponownego trenowania modelu.
Zawsze przewiduj klasę negatywną.
Może to poprawić skuteczność, ale nie musi. Jak wspomniano w sekcji Dokładność, nie jest to przydatny model.
Zawsze prognozuj klasę pozytywną.
Może to poprawić skuteczność, ale nie musi. Jak wspomniano w sekcji Dokładność, nie jest to przydatny model.

Wyobraź sobie sytuację, w której lepiej jest zezwolić na to, aby niektóre spamy trafiały do skrzynki odbiorczej, niż wysyłać ważne e-maile do folderu ze spamem. W tym przypadku masz już przeszkolony klasyfikator spamu, w którym klasa pozytywna to spam, a klasa negatywna to nie-spam. Który z tych punktów na krzywej ROC jest preferowany w przypadku Twojego klasyfikatora?

Krzywa ROC z AUC=0,84, która zawiera 3 punkty na wypukłej części krzywej, bliskie wartości (0,1). Punkt A znajduje się w przybliżeniu w miejscu (0,25, 0,75). Punkt B znajduje się w przybliżeniu w miejscu (0,30, 0,90) i jest punktem, w którym TPR jest maksymalny, a FPR minimalny. Punkt C znajduje się w przybliżeniu w punkcie (0,4; 0,95).
Punkt A
W tym przypadku lepiej jest zminimalizować liczbę wyników fałszywie dodatnich, nawet jeśli w efekcie zmniejszy się liczba wyników prawdziwie dodatnich.
Punkt B
Ten próg zapewnia równowagę między wynikami prawdziwie pozytywnymi a fałszywie pozytywnymi.
Punkt C
Ten próg maksymalizuje liczbę wyników prawdziwie pozytywnych (oznacza więcej spamu) kosztem większej liczby wyników fałszywie pozytywnych (więcej prawidłowych e-maili oznaczonych jako spam).