AI 101
Co to jest Macierz Pomyłek?

Jednym z najpotężniejszych narzędzi analitycznych w uczeniu maszynowym i nauce o danych jest macierz pomyłek. Macierz pomyłek jest w stanie dostarczyć badaczom szczegółowych informacji o tym, jak klasyfikator uczenia maszynowego wykonał się w odniesieniu do klas docelowych w zbiorze danych. Macierz pomyłek pokaże przykłady, które zostały prawidłowo sklasyfikowane, w porównaniu z przykładami, które zostały błędnie sklasyfikowane. Zajmijmy się bardziej szczegółowym spojrzeniem na to, jak macierz pomyłek jest strukturyzowana i jak można ją interpretować.
Co to jest Macierz Pomyłek?
Zacznijmy od prostego zdefiniowania macierzy pomyłek. Macierz pomyłek jest narzędziem analitycznym. Konkretnie, jest to tabela, która wyświetla i porównuje wartości rzeczywiste z wartościami przewidywanymi przez model. W kontekście uczenia maszynowego macierz pomyłek jest wykorzystywana jako miara do analizy, jak klasyfikator uczenia maszynowego wykonał się na zbiorze danych. Macierz pomyłek generuje wizualizację metryk, takich jak precyzja, dokładność, specyficzność i recall.
Powodem, dla którego macierz pomyłek jest szczególnie przydatna, jest to, że w przeciwieństwie do innych typów metryk klasyfikacji, takich jak prosta dokładność, macierz pomyłek generuje bardziej kompletny obraz tego, jak model wykonał się. Używanie tylko metryki, takiej jak dokładność, może prowadzić do sytuacji, w której model całkowicie i konsekwentnie myli jedną klasę, ale nie zauważa się tego, ponieważ średnia wydajność jest dobra. Tymczasem macierz pomyłek daje porównanie różnych wartości takich jak Fałszywe Negatywy, Prawdziwe Negatywy, Fałszywe Pozytywy i Prawdziwe Pozytywy.

Zdefiniujmy różne metryki, które macierz pomyłek reprezentuje.
Recall w Macierzy Pomyłek
Recall to liczba prawdziwie pozytywnych przykładów podzielona przez liczbę fałszywych negatywów i łączną liczbę pozytywnych przykładów. Innymi słowy, recall reprezentuje proporcję prawdziwie pozytywnych przykładów, które model klasyfikacji maszynowej sklasyfikował. Recall jest podawany jako procent pozytywnych przykładów, które model był w stanie sklasyfikować spośród wszystkich pozytywnych przykładów zawartych w zbiorze danych. Ta wartość może być również określana jako „współczynnik trafień”, a powiązana z nią wartość to „czułość”, która opisuje prawdopodobieństwo recall, czyli szybkość prawdziwie pozytywnych predykcji.
Precyzja w Macierzy Pomyłek
Podobnie jak recall, precyzja jest wartością, która śledzi wydajność modelu w zakresie klasyfikacji pozytywnych przykładów. W przeciwieństwie do recall, precyzja zajmuje się tym, ile z przykładów, które model oznaczył jako pozytywne, było rzeczywiście pozytywne. Aby to obliczyć, liczba prawdziwie pozytywnych przykładów jest dzielona przez liczbę fałszywie pozytywnych przykładów plus prawdziwie pozytywne.
Aby uczynić różnicę między recall i precyzją bardziej klarowną, precyzja ma na celu określenie procentu wszystkich przykładów oznaczonych jako pozytywne, które były rzeczywiście pozytywne, podczas gdy recall śledzi procent wszystkich prawdziwie pozytywnych przykładów, które model mógł rozpoznać.
Specyficzność w Macierzy Pomyłek
Podczas gdy recall i precyzja są wartościami, które śledzą pozytywne przykłady i prawdziwie pozytywny wskaźnik, specyficzność ilościuje prawdziwie negatywny wskaźnik lub liczbę przykładów, które model określił jako negatywne, które były rzeczywiście negatywne. Jest to obliczane przez podzielenie liczby przykładów sklasyfikowanych jako negatywne przez liczbę fałszywie pozytywnych przykładów w połączeniu z prawdziwie negatywnymi przykładami.
Zrozumienie Macierzy Pomyłek

Photo: Jackverr via Wikimedia Commons, (https://commons.wikimedia.org/wiki/File:ConfusionMatrix.png), CC BY SA 3.0
Przykład Macierzy Pomyłek
Po zdefiniowaniu niezbędnych terminów, takich jak precyzja, recall, czułość i specyficzność, możemy zbadać, jak te różne wartości są reprezentowane w macierzy pomyłek. Macierz pomyłek jest generowana w przypadku klasyfikacji, stosowalna, gdy istnieją dwie lub więcej klas. Macierz pomyłek, która jest generowana, może być tak wysoka i szeroka, jak jest to konieczne, zawierając dowolną liczbę klas, ale dla celów prostoty, będziemy badać macierz pomyłek 2 x 2 dla binarnej klasyfikacji.
Na przykład, zakładając, że klasyfikator jest używany do określenia, czy pacjent ma chorobę. Cechy będą wprowadzane do klasyfikatora, a klasyfikator zwróci jedną z dwóch różnych klasyfikacji – albo pacjent nie ma choroby, albo ją ma.
Zacznijmy od lewej strony macierzy. Lewa strona macierzy pomyłek reprezentuje przewidywania, które klasyfikator wykonał dla poszczególnych klas. Binarne zadanie klasyfikacji będzie miało dwa wiersze. Odnosząc się do górnej części macierzy, śledzi ona wartości rzeczywiste, rzeczywiste etykiety klas, instancji danych.
Interpretacja macierzy pomyłek może być wykonana przez sprawdzenie, gdzie wiersze i kolumny się przecinają. Porównaj przewidywania modelu z prawdziwymi etykietami modelu. W tym przypadku wartości Prawdziwie Pozytywne, liczba prawidłowych pozytywnych przewidywań, znajduje się w lewym górnym rogu. Fałszywe pozytywy znajdują się w prawym górnym rogu, gdzie przykłady są naprawdę negatywne, ale klasyfikator oznaczył je jako pozytywne.
Dolny lewy róg siatki wyświetla przypadki, które klasyfikator oznaczył jako negatywne, ale były naprawdę pozytywne. Wreszcie, dolny prawy róg macierzy pomyłek to miejsce, w którym znajdują się wartości Prawdziwie Negatywne, lub gdzie przypadki są naprawdę fałszywe.
Gdy zestaw danych zawiera więcej niż dwie klasy, macierz rośnie o tyle klas. Na przykład, jeśli istnieją trzy klasy, macierz będzie macierzą 3 x 3. Niezależnie od rozmiaru macierzy pomyłek, metoda interpretacji jest dokładnie taka sama. Lewa strona zawiera przewidywane wartości, a rzeczywiste etykiety klas biegną wzdłuż góry. Przykłady, które klasyfikator prawidłowo przewidział, biegną ukośnie od lewego górnego rogu do prawego dolnego rogu. Poprzez spojrzenie na macierz można rozróżnić cztery metryki predykcyjne omówione powyżej.
Na przykład, można obliczyć recall, biorąc prawdziwie pozytywne i fałszywie negatywne, dodając je razem, a następnie dzieląc przez liczbę prawdziwie pozytywnych przykładów. Tymczasem precyzję można obliczyć, łącząc fałszywie pozytywne z prawdziwie pozytywnymi, a następnie dzieląc wartość przez łączną liczbę prawdziwie pozytywnych przykładów.
Chociaż można spędzić czas na ręcznym obliczaniu metryk, takich jak precyzja, recall i specyficzność, metryki te są tak powszechnie używane, że większość bibliotek uczenia maszynowego ma metody wyświetlania ich. Na przykład, Scikit-learn dla Pythona ma funkcję, która generuje macierz pomyłek.












