Klasyfikacja: dokładność, czułość, precyzja i powiązane wskaźniki

Prawdziwe i fałszywie pozytywne oraz negatywne wyniki służą do obliczania kilku przydatnych wskaźników do oceny modeli. Które wskaźniki oceny są najbardziej przydatne, zależy od konkretnego modelu i zadania, kosztu różnych błędów klasyfikacji oraz tego, czy zbiór danych jest zrównoważony, czy niezrównoważony.

Wszystkie dane w tej sekcji są obliczane przy użyciu jednego stałego progu i zmieniają się, gdy zmienia się ten próg. Bardzo często użytkownik dostosowuje próg, aby zoptymalizować jeden z tych wskaźników.

Dokładność

Dokładność to odsetek wszystkich klasyfikacji, które były prawidłowe, niezależnie od tego, czy były pozytywne, czy negatywne. Jest on matematycznie zdefiniowany jako:

\[\text{Accuracy} = \frac{\text{correct classifications}}{\text{total classifications}} = \frac{TP+TN}{TP+TN+FP+FN}\]

W przykładzie klasyfikacji spamu dokładność mierzy odsetek wszystkich poprawnie sklasyfikowanych e-maili.

Doskonały model nie miałby żadnych wyników fałszywie pozytywnych ani fałszywie negatywnych, a zatem jego dokładność wynosiłaby 1,0, czyli 100%.

Obejmuje ona wszystkie 4 wyniki z macierzy pomyłek (TP, FP, TN, FN). W przypadku zrównoważonego zbioru danych z podobną liczbą przykładów w obu klasach dokładność może służyć jako ogólny wskaźnik jakości modelu. Z tego powodu jest to często domyślna metryka oceny używana w przypadku ogólnych lub nieokreślonych modeli wykonujących ogólne lub nieokreślone zadania.

Jeśli jednak zbiór danych jest niezrównoważony lub jeden rodzaj błędu (FN lub FP) jest bardziej kosztowny niż drugi, co ma miejsce w większości zastosowań praktycznych, lepiej jest zoptymalizować jeden z innych wskaźników.

W przypadku bardzo nierównowagi w zbiorach danych, w których jedna klasa pojawia się bardzo rzadko, np. 1% razy, model, który w 100% przypadków przewiduje wynik negatywny, uzyskałby wynik dokładności 99%, mimo że byłby bezużyteczny.

Współczynnik prawdziwie pozytywnych lub czułość

Współczynnik prawdziwie pozytywnych (TPR) lub odsetek wszystkich rzeczywistych wyników dodatnich, które zostały poprawnie sklasyfikowane jako dodatnie, jest też określany jako czułość.

Współczynnik przyrostu jest zdefiniowany matematycznie jako:

\[\text{Recall (or TPR)} = \frac{\text{correctly classified actual positives}}{\text{all actual positives}} = \frac{TP}{TP+FN}\]

Wyniki fałszywie negatywne to rzeczywiste wyniki pozytywne, które zostały błędnie sklasyfikowane jako negatywne, dlatego pojawiają się w mianowniku. W przykładzie klasyfikacji spamu mierzymy ułamek e-maili zawierających spam, które zostały poprawnie sklasyfikowane jako spam. Dlatego inna nazwa przywołania to prawdopodobieństwo wykrycia: odpowiada ono na pytanie „Jaki odsetek e-maili ze spamem wykrył ten model?”.

Hipotetyczny model doskonały nie miałby żadnych wyników fałszywie negatywnych, a zatem współczynnik odzyskiwania (TPR) wynosiłby 1,0, co oznacza 100% skuteczność wykrywania.

W niezrównoważonym zbiorze danych, w którym liczba rzeczywistych pozytywnych wyników jest bardzo, np. 1–2 przykłady, czułość jest mniej istotna i mniej przydatna jako wskaźnik.

Współczynnik wyników fałszywie pozytywnych

Współczynnik wyników fałszywie dodatnich (FPR) to proporcja wszystkich rzeczywistych wartości ujemnych, które zostały nieprawidłowo sklasyfikowane jako dodatnie. Jest to również prawdopodobieństwo fałszywego alarmu. Jest to definicja matematyczna:

\[\text{FPR} = \frac{\text{incorrectly classified actual negatives}} {\text{all actual negatives}} = \frac{FP}{FP+TN}\]

Wyniki fałszywie dodatnie to rzeczywiste wyniki negatywne, które zostały błędnie zaklasyfikowane, dlatego występują w mianowniku. W przykładzie klasyfikacji spamu FPR mierzy ułamek prawidłowych e-maili, które zostały nieprawidłowo sklasyfikowane jako spam,lub odsetek fałszywych alarmów modelu.

Doskonały model nie miałby żadnych wyników fałszywie pozytywnych, a więc FPR wynosiłby 0,0, co oznaczałoby wskaźnik fałszywych alarmów na poziomie 0%.

W niezrównoważonym zbiorze danych, w którym liczba rzeczywistych wartości negatywnych jest bardzo niska, np. 1–2 przypadki, FPR jest mniej przydatną miarą.

Precyzja

Współczynnik dokładności to odsetek wszystkich pozytywnych klasyfikacji modelu, które są rzeczywiście pozytywne. Jest on matematycznie zdefiniowany jako:

\[\text{Precision} = \frac{\text{correctly classified actual positives}} {\text{everything classified as positive}} = \frac{TP}{TP+FP}\]

W przykładzie klasyfikacji spamu precyzja mierzy ułamek e-maili sklasyfikowanych jako spam, które w rzeczywistości były spamem.

Hipotetyczny model doskonały nie miałby wyników fałszywie pozytywnych, a zatem jego precyzja wynosiłaby 1,0.

W niezrównoważonym zbiorze danych, w którym liczba rzeczywistych pozytywnych wyników jest bardzo, np. 1–2 przykłady, precyzja jest mniej istotna i mniej przydatna jako wskaźnik.

Precyzja rośnie, gdy maleje liczba wyników fałszywie pozytywnych, a zwiększa się liczba wyników fałszywie negatywnych. Jak jednak widać w poprzedniej sekcji, zwiększenie progu klasyfikacji powoduje zwykle zmniejszenie liczby wyników fałszywie pozytywnych i zwiększenie liczby wyników fałszywie negatywnych, natomiast zmniejszenie progu ma przeciwne skutki. W związku z tym precyzja i czułość często są odwrotnie skorelowane, co oznacza, że polepszanie jednego z tych parametrów powoduje pogorszenie drugiego.

Wypróbuj to samodzielnie:

Co oznacza w danych wartość NaN?

Wartość NaN (czyli „nie jest liczbą”) pojawia się, gdy dzielimy przez 0. Może się to zdarzyć w przypadku dowolnego z tych rodzajów danych. Gdy zarówno TP, jak i FP mają wartość 0, w liczniku formuły do obliczania dokładności występuje 0, co powoduje, że wynik jest równy NaN. W niektórych przypadkach NaN może wskazywać idealną wydajność i można ją zastąpić wynikiem 1,0, ale może też pochodzić z modelu, który jest praktycznie bezużyteczny. Model, który nigdy nie przewiduje wartości dodatniej, miałby 0 TP i 0 FP, a więc obliczenie jego dokładności dałoby wartość NaN.

Wybór danych i ustępstwa

Dane, które ustawisz w trakcie oceny modelu i wybierając próg, zależą od kosztów, korzyści i zagrożeń związanych z konkretnym problemem. W przykładzie klasyfikacji spamu często warto skoncentrować się na czułości, aby wychwycić wszystkie spamowe e-maile, lub na dokładności, aby mieć pewność, że e-maile oznaczone jako spam są rzeczywiście spamem, albo na równowadze obu tych czynników, powyżej pewnego minimalnego poziomu dokładności.

Dane Wskazówki
Dokładność

Używaj jako przybliżonego wskaźnika postępu lub zbieżności trenowania modelu w zrównoważonych zbiorach danych.

W przypadku skuteczności modelu używaj tego parametru tylko w połączeniu z innymi danymi.

Nie stosuj do zbiorów danych z niezrównoważonymi danymi. Możesz użyć innego rodzaju danych.

Czułość
(współczynnik prawdziwie pozytywnych)
Używaj, gdy fałszywie negatywne wyniki są droższe niż fałszywie pozytywne.
Współczynnik wyników fałszywie pozytywnych Używaj, gdy fałszywie pozytywne są droższe niż fałszywie negatywne.
Precyzja Użyj tej opcji, gdy dokładność pozytywnych prognoz jest bardzo ważna.

(Opcjonalnie, zaawansowane) Wynik F1

Wynik F1 to średnia harmoniczna (rodzaj średniej) precyzji i czułości.

Matematycznie:

\[\text{F1}=2*\frac{\text{precision * recall}}{\text{precision + recall}} = \frac{2\text{TP}}{2\text{TP + FP + FN}}\]

Ten wskaźnik zapewnia równowagę między znaczeniem precyzji a czułością i jest preferowany w przypadku niesymetrycznych zbiorów danych. Gdy precyzja i czułość mają idealny wynik 1,0, wynik F1 również będzie idealny – 1,0. Ogólnie rzecz biorąc, gdy precyzja i czułość mają zbliżone wartości, współczynnik F1 będzie zbliżony do ich wartości. Gdy precyzja i czułość są od siebie bardzo odległe, wartość F1 będzie zbliżona do tego wskaźnika, który jest gorszy.

Ćwiczenie: sprawdź swoją wiedzę

Model zwraca 5 TP, 6 TN, 3 FP i 2 FN. Obliczanie przywołania.
0,714
Współczynnik przyrostu jest obliczany jako \(\frac{TP}{TP+FN}=\frac{5}{7}\).
0,455
Czułość uwzględnia wszystkie rzeczywiste wyniki pozytywne, a nie wszystkie poprawne klasyfikacje. Formuła przywołania to \(\frac{TP}{TP+FN}\).
0,625
Współczynnik przyrostowy uwzględnia wszystkie rzeczywiste wyniki pozytywne, a nie wszystkie klasyfikacje pozytywne. Formuła przywołania to \(\frac{TP}{TP+FN}\)
Model z 3 TP, 4 TN, 2 FP i 1 FN. Oblicz precyzję.
0,6
Dokładność jest obliczana jako \(\frac{TP}{TP+FP}=\frac{3}{5}\).
0,75
Dokładność uwzględnia wszystkie klasyfikacje pozytywne, a nie wszystkie rzeczywiste wyniki pozytywne. Formuła dokładności to \(\frac{TP}{TP+FP}\).
0,429
Dokładność uwzględnia wszystkie pozytywne klasyfikacje, a nie wszystkie poprawne klasyfikacje. Formuła dokładności to: \(\frac{TP}{TP+FP}\)
Tworzysz klasyfikator binarny, który sprawdza zdjęcia pułapek na owady pod kątem obecności niebezpiecznych gatunków inwazyjnych. Jeśli model wykryje ten gatunek, powiadamia o tym entomologa (naukowca zajmującego się owadami). Wczesne wykrycie tego owada jest kluczowe dla zapobiegania inwazji. Fałszywy alarm (fałszywie pozytywny) jest łatwy do rozwiązania: entomolog widzi, że zdjęcie zostało błędnie sklasyfikowane i oznacza je jako takie. Zakładając akceptowalny poziom dokładności, pod kątem którego wskaźnika należy zoptymalizować ten model?
Czułość
W tym scenariuszu fałszywe alarmy (FP) są tanie, a fałszywe wyniki negatywne są bardzo kosztowne, więc warto zmaksymalizować prawdopodobieństwo wykrycia.
Współczynnik wyników fałszywie pozytywnych (FPR)
W tym scenariuszu fałszywe alarmy (FP) są tanie. Próba zminimalizowania ich ryzyka pominięcia rzeczywistych wyników pozytywnych nie ma sensu.
Precyzja
W tym przypadku fałszywe alarmy nie są szczególnie szkodliwe, więc dążenie do poprawy trafności klasyfikacji pozytywnych nie ma sensu.