Progi i tabela pomyłek

Załóżmy, że masz model regresji logistycznej do wykrywania spamu i e-maili. Przewiduje on wartość z zakresu od 0 do 1 wskazującą prawdopodobieństwo, że dany e-mail to spam. Prognoza 0,50 oznacza prawdopodobieństwo 50%, że e-mail jest spamem, prognoza 0,75 oznacza prawdopodobieństwo 75%, że e-mail jest spamem, itd.

Chcesz wdrożyć ten model w aplikacji poczty e-mail, aby odfiltrowywać spam do osobnego folderu poczty. Aby to zrobić, musisz przekonwertować surowe dane liczbowe modelu (np. 0.75) do jednej z 2 kategorii: „spam” lub „nie spam”.

Aby dokonać tej konwersji, musisz wybrać próg prawdopodobieństwa, czyli wartość progową klasyfikacji. Przykłady o większym prawdopodobieństwie niż wartość progowa są przypisywane do klasy pozytywnej, czyli klasy, której dotyczy test (tutaj: spam). Przykłady o mniejszym prawdopodobieństwie są przypisywane do klasy negatywnej, czyli klasy alternatywnej (tutaj: not spam).

Więcej informacji o progu klasyfikacji

Możesz się zastanawiać, co się stanie, jeśli przewidywana wartość jest równa progowi klasyfikacji (np.wartość 0,5, gdy próg klasyfikacji wynosi również 0,5). Obsługa tego przypadku zależy od konkretnej implementacji wybranej dla modelu klasyfikacji. Biblioteka Keras przewiduje klasę negatywną, jeśli wynik i wartość progowa są równe, ale inne narzędzia/ramy mogą inaczej obsługiwać ten przypadek.

Załóżmy, że model ocenia jeden e-mail jako 0,99, przewidując, że ma on 99% szans na to, że jest spamem, a inny e-mail jako 0,51, przewidując, że ma on 51% szans na to, że jest spamem. Jeśli ustawisz próg klasyfikacji na 0,5, model sklasyfikuje oba e-maile jako spam. Jeśli ustawisz próg na 0,95, tylko e-maile z oceną 0,99 będą klasyfikowane jako spam.

Chociaż próg 0,5 może wydawać się intuicyjny, nie jest dobrym pomysłem, jeśli koszt jednego typu błędnej klasyfikacji jest wyższy niż w drugim lub gdy klasy są nierównomierne. Jeśli tylko 0,01% e-maili to spam lub jeśli błędne przesyłanie e-maili jest gorsze niż wpuszczanie spamu do skrzynki odbiorczej, oznaczanie wszystkich e-maili, które według modelu w co najmniej 50% to spam, ponieważ spam przynosi niepożądane efekty.

Tablica pomyłek

Wynik prawdopodobieństwa nie jest rzeczywistością ani danymi podstawowymi. Każdy wynik klasyfikatora binarnego może mieć 4 możliwe wartości. W przypadku przykładowego klasyfikatora spamu: jeśli przedstawisz dane podstawowe (ground truth) w postaci kolumn, a prognozę modelu jako wiersze, wynikiem będzie tabela poniżej, zwana tabelą pomyłek:

Prawdziwie pozytywny Rzeczywisty wynik negatywny
Prognoza dodatnia Prawdziwie pozytywne (TP): e-maile ze spamem, które zostały poprawnie sklasyfikowane jako spam. To spam, który został automatycznie wysłany do folderu ze spamem. Fałszywie dodatni wynik (FP): e-mail, który nie jest spamem, został błędnie zaklasyfikowany jako spam. Są to wiarygodne e-maile, które trafiają do folderu ze spamem.
Przewidywany wynik negatywny Fałszywie negatywny (FN): e-mail ze spamem błędnie zaklasyfikowany jako niespam. Są to e-maile ze spamem, które nie zostały wychwycone przez filtr spamu i trafiły do skrzynki odbiorczej. Prawdziwy wynik negatywny (TN): e-mail, który nie jest spamem, został prawidłowo sklasyfikowany jako niebędący spamem. To prawdziwe e-maile wysyłane bezpośrednio do skrzynki odbiorczej.

Zwróć uwagę, że suma w każdym wierszu zawiera wszystkie prognozowane wyniki pozytywne (TP + FP) i wszystkie prognozowane wyniki negatywne (FN + TN), niezależnie od ich wiarygodności. Z kolei suma w każdej kolumnie daje wszystkie wyniki rzeczywiste dodatnie (TP + FN) i rzeczywiste wartości ujemne (FP + TN) niezależnie od klasyfikacji modelu.

Jeśli łączna liczba rzeczywistych wyników dodatnich nie jest zbliżona do łącznej liczby rzeczywistych wyników ujemnych, zbiór danych jest niezrównoważony. Przykładem zbiórki danych z niezrównoważonym rozkładem może być zbiór tysięcy zdjęć chmur, na których rzadki typ chmur, np. volutus, pojawia się tylko kilka razy.

Wpływ progu na wyniki prawdziwie i fałszywie pozytywne oraz negatywne

Różne progi zwykle powodują różne liczby wyników prawdziwie pozytywnych i fałszywie pozytywnych oraz prawdziwie negatywnych i fałszywie negatywnych. Poniżej znajdziesz film, który wyjaśnia, dlaczego tak się dzieje.

Spróbuj samodzielnie zmienić próg.

Ten widżet zawiera 3 zbiory danych zabawkowych:

  • Oddzielone, gdzie przykłady pozytywne i negatywne są dobrze rozróżnione, a większość przykładów pozytywnych ma wyższe wyniki niż przykłady negatywne.
  • Nierozdzielone, gdzie wiele przykładów pozytywnych ma niższe wyniki niż przykłady negatywne, a wiele przykładów negatywnych ma wyższe wyniki niż przykłady pozytywne.
  • Niezbalansowane – zawiera tylko kilka przykładów klasy pozytywnej.

Sprawdź swoją wiedzę

1. Wyobraź sobie model klasyfikacji phishingu lub złośliwego oprogramowania, w którym witryny wyłudzające informacje i złośliwe oprogramowanie należą do klasy o etykiecie 1 (prawda), a witryny nieszkodliwe do klasy o etykiecie 0 (fałsz). Ten model omyłkowo klasyfikuje prawidłową witrynę jako złośliwe oprogramowanie. Jak to się nazywa?
Wynik fałszywie pozytywny
Przykład negatywny (prawdziwa witryna) został błędnie zaklasyfikowany jako przykład pozytywny (witryna zawierająca złośliwe oprogramowanie).
Wynik prawdziwie pozytywny
Prawidłowo pozytywny wynik to strona z złośliwym oprogramowaniem prawidłowo zaklasyfikowana jako strona z złośliwym oprogramowaniem.
Wynik fałszywie negatywny
Przykładem fałszywie ujemnego wyniku jest witryna z złośliwym oprogramowaniem nieprawidłowo sklasyfikowana jako legalna.
Wynik prawdziwie negatywny
Prawdziwy wynik negatywny to wiarygodna witryna prawidłowo sklasyfikowana jako wiarygodna.
2. Co się dzieje z liczbą wyników fałszywie pozytywnych, gdy próg klasyfikacji wzrasta? A jak wygląda sprawa z wynikami prawdziwie pozytywnymi? Eksperymentuj, korzystając z suwaka powyżej.
Zmniejsza się zarówno liczba prawdziwie pozytywnych, jak i fałszywie pozytywnych wyników.
W miarę wzrostu progu model prawdopodobnie będzie prognozował ogólną mniejszą liczbę wyników dodatnich (prawda i fałsz). Klasyfikator spamu z progresem 0,9999 oznaczy e-maila jako spam tylko wtedy, gdy uzna, że prawdopodobieństwo takiej klasyfikacji wynosi co najmniej 99,99%. Oznacza to, że jest mało prawdopodobne, aby nieprawidłowo oznaczył prawidłowy e-mail, ale też może nie wykryć prawdziwego spamu.
Liczba wyników prawda i fałszywie dodatnich rośnie.
Użyj suwaka powyżej, aby ustawić próg na 0,1, a następnie przeciągnij go do 0,9. Co się dzieje z liczbą wyników fałszywie pozytywnych i prawdziwie pozytywnych?
Wzrost wyników prawdziwie pozytywnych. Spadek liczby fałszywie pozytywnych.
Użyj suwaka powyżej, aby ustawić próg na 0,1, a następnie przeciągnij go do 0,9. Co się dzieje z liczbą wyników fałszywie pozytywnych i prawdziwie pozytywnych?
3. Ogólnie rzecz biorąc, co dzieje się z liczbą wyników fałszywie negatywnych, gdy próg klasyfikacji wzrośnie? A jak to wygląda w przypadku wyników prawdziwie negatywnych? Eksperymentuj za pomocą suwaka powyżej.
Liczba wyników prawda i fałszywie negatywnych rośnie.
Wraz ze wzrostem progu model będzie prawdopodobnie przewidywać więcej wyników negatywnych, zarówno prawdziwych, jak i fałszywych. Przy bardzo wysokim progu prawie wszystkie e-maile, zarówno te oznaczone jako spam, jak i te, które nie są spamem, zostaną sklasyfikowane jako niebędące spamem.
Zmniejsza się zarówno liczba prawdziwie negatywnych, jak i fałszywie negatywnych wyników.
Za pomocą powyższego suwaka spróbuj ustawić próg na 0,1, a następnie przeciągnij go do 0,9. Co dzieje się z liczbą wyników fałszywie negatywnych i wyników prawdziwie negatywnych?
Wzrost wyników prawdziwie negatywnych. Wyniki fałszywie negatywne maleją.
Użyj suwaka powyżej, aby ustawić próg na 0,1, a następnie przeciągnij go do 0,9. Co się dzieje z liczbą wyników fałszywie negatywnych i prawdziwie negatywnych?