Wprowadzenie
Statystyka (lub wartość) Kappa to metryka, która porównuje zaobserwowaną dokładność z oczekiwaną dokładnością (szansa losowa). Statystyka kappa służy nie tylko do oceny pojedynczego klasyfikatora, ale również do oceny klasyfikatorów między sobą. Ponadto uwzględnia losową szansę (zgodność z losowym klasyfikatorem), co ogólnie oznacza, że jest mniej mylące niż zwykłe stosowanie dokładności jako miary ( zaobserwowana dokładność na poziomie 80% jest znacznie mniej imponująca przy oczekiwanej dokładności na poziomie 75% w porównaniu z oczekiwaną dokładnością 50%). Obliczanie zaobserwowanej dokładności i oczekiwanej dokładnościjest integralną częścią zrozumienia statystyki kappa i najłatwiej jest to zilustrować za pomocą macierzy pomieszania. Zacznijmy od prostej macierzy pomieszania z prostej binarnej klasyfikacji kotów i psów :
Obliczenie
Cats Dogs
Cats| 10 | 7 |
Dogs| 5 | 8 |
Załóżmy, że model został zbudowany przy użyciu nadzorowanego uczenia maszynowego na etykietowanych danych. Nie zawsze musi tak być; Statystyka kappa jest często używana jako miara wiarygodności między dwoma ludzkimi wskaźnikami. Niezależnie od tego kolumny odpowiadają jednemu „oceniającemu”, zaś wiersze odpowiadają innemu „oceniającemu”. W nadzorowanym uczeniu maszynowym jeden „oceniający” odzwierciedla podstawową prawdę (rzeczywiste wartości każdego wystąpienia do sklasyfikowania), uzyskany z danych opatrzonych etykietą, a drugi „oceniający” jest klasyfikatorem uczącym się maszynowo stosowanym do przeprowadzania klasyfikacji. Ostatecznie nie ma znaczenia, który sposób obliczyć statystyki kappa, ale dla jasności ” klasyfikacje.
Z macierzy pomieszania możemy zobaczyć, że jest łącznie 30 wystąpień (10 + 7 + 5 + 8 = 30). Zgodnie z pierwszą kolumną 15 oznaczono jako Koty (10 + 5 = 15), a zgodnie z drugą kolumną 15 oznaczono jako Psy (7 + 8 = 15). Widzimy również, że model sklasyfikował 17 wystąpień jako Koty (10 + 7 = 17) i 13 wystąpień jako Psy (5 + 8 = 13).
Obserwowany Dokładność jest po prostu liczba przypadków, które zostały sklasyfikowane prawidłowo na całej matrycy zamieszania, czyli liczba przypadków, które zostały oznaczone jako Koty poprzez gruntu prawdy , a następnie sklasyfikowane jako koty przez klasyfikatora uczenia maszynowego lub oznakowane jako psy poprzez prawdy gruntowych oraz następnie klasyfikowane jako psy przez klasyfikator uczący się . Aby obliczyć obserwowaną dokładność , po prostu dodajemy liczbę przypadków, które klasyfikator uczący się maszyny zgadzał się z podstawową prawdąoznacz i podziel przez całkowitą liczbę wystąpień. Dla tej macierzy zamieszania będzie to 0,6 ((10 + 8) / 30 = 0,6).
Zanim przejdziemy do równania statystyki kappa, potrzebna jest jeszcze jedna wartość: oczekiwana dokładność . Wartość tę definiuje się jako dokładność, jakiej można oczekiwać od dowolnego losowego klasyfikatora na podstawie macierzy pomieszania. Oczekiwany Dokładność jest bezpośrednio związana z liczbą wystąpień każdej klasy ( koty i psy ), wraz z liczbą przypadków, że klasyfikator uczenie maszynowe uzgodnionym z ziemia prawdy etykiecie. Aby obliczyć oczekiwanej dokładności dla naszej macierzy błędów, najpierw pomnożyć marginalną częstotliwości z kotów na jeden „Rater” przez marginalną częstotliwości zKoty dla drugiego „oceniającego” i dzielone przez całkowitą liczbę instancji. Marginalny częstotliwości dla danej klasy przez niektórych „Rater” jest po prostu sumą wszystkich przypadkach „rater” wskazano, że klasa. W naszym przypadku 15 (10 + 5 = 15) wystąpień zostało oznaczonych jako Koty zgodnie z podstawową prawdą , a 17 (10 + 7 = 17) wystąpień zostało sklasyfikowanych jako Koty przez klasyfikator uczący się . Daje to wartość 8,5 (15 * 17/30 = 8,5). Odbywa się to również dla drugiej klasy (i może być powtórzone dla każdej dodatkowej klasy, jeśli jest ich więcej niż 2). 15(7 + 8 = 15) instancje zostały oznaczone jako Psy zgodnie z podstawową prawdą , a 13 (8 + 5 = 13) instancji zostało sklasyfikowanych jako Psy przez klasyfikator uczący się . Daje to wartość 6,5 (15 * 13/30 = 6,5). Ostatnim krokiem jest dodawać te wartości razem, a na koniec ponownie dzieli się przez całkowitą liczbę przypadków, w wyniku oczekiwanej dokładności z 0,5 ((8,5 + 6,5) / 30 = 0,5). W naszym przykładzie Oczekiwana Dokładność wyniosła 50%, co zawsze będzie miało miejsce, gdy „rater” klasyfikuje każdą klasę z tą samą częstotliwością w klasyfikacji binarnej (oba Kotya psy zawierały 15 wystąpień zgodnie z naziemnymi etykietami prawdy w naszej macierzy pomieszania).
Statystyka kappa może być następnie obliczona przy użyciu zarówno zaobserwowanej dokładności ( 0,60 ), jak i oczekiwanej dokładności ( 0,50 ) oraz wzoru:
Kappa = (observed accuracy - expected accuracy)/(1 - expected accuracy)
Zatem w naszym przypadku statystyki kappa wynoszą: (0,60 - 0,50) / (1 - 0,50) = 0,20.
Jako inny przykład, oto mniej zrównoważona macierz pomieszania i odpowiednie obliczenia:
Cats Dogs
Cats| 22 | 9 |
Dogs| 7 | 13 |
Podstawowa prawda: Koty (29), Psy (22)
Uczenie maszynowe Klasyfikator: Koty (31), Psy (20)
Razem: (51)
Zaobserwowana dokładność: ((22 + 13) / 51) = 0,69
Oczekiwana dokładność: ((29) * 31/51) + (22 * 20/51)) / 51 = 0,51
Kappa: (0,69 - 0,51) / (1 - 0,51) = 0,37
Zasadniczo statystyka kappa jest miarą tego, jak ściśle instancje sklasyfikowane przez klasyfikator uczący się maszyny pasowały do danych oznaczonych jako podstawowa prawda , kontrolując dokładność losowego klasyfikatora mierzonego oczekiwaną dokładnością. Ta statystyka kappa może nie tylko rzucić światło na sposób, w jaki działał sam klasyfikator, ale także statystyki kappa dla jednego modelu są bezpośrednio porównywalne ze statystyką kappa dla każdego innego modelu stosowanego do tego samego zadania klasyfikacyjnego.
Interpretacja
Nie ma znormalizowanej interpretacji statystyki kappa. Według Wikipedii (cytując ich artykuł), Landis i Koch uważają 0-0,20 za niewielką, 0,21-0,40 za uczciwą, 0,41-0,60 za umiarkowaną, 0,61-0,80 za znaczącą, a 0,81-1 za prawie idealną. Fleiss uważa, że kappas> 0,75 jest doskonały, 0,40-0,75 jako dobry do dobrego, a <0,40 jako zły. Należy zauważyć, że obie skale są nieco arbitralne. Przy interpretacji statystyki kappa należy wziąć pod uwagę co najmniej dwa dodatkowe względy. Po pierwsze, statystykę kappa należy zawsze porównywać z towarzyszącą macierzą zamieszania, jeśli to możliwe, aby uzyskać jak najdokładniejszą interpretację. Rozważ następującą macierz nieporozumień:
Cats Dogs
Cats| 60 | 125 |
Dogs| 5 | 5000|
Statystyka kappa wynosi 0,47, znacznie powyżej progu umiarkowanego według Landisa i Kocha i dość dobra dla Fleiss. Zwróć jednak uwagę na współczynnik trafień dla klasyfikacji kotów . Mniej niż jedna trzecia wszystkich kotów faktycznie została sklasyfikowana jako koty ; wszystkie pozostałe zostały zaklasyfikowane jako psy . Jeśli bardziej zależy nam na prawidłowym klasyfikowaniu kotów (powiedzmy, że jesteśmy uczuleni na koty, ale nie na psy , a jedyne , na czym nam zależy, to nie uleganie alergiom w przeciwieństwie do maksymalizacji liczby przyjmowanych zwierząt), to klasyfikator z niższym kappa, ale lepszy wskaźnik klasyfikacji Koty mogą być bardziej idealne.
Po drugie, dopuszczalne wartości statystyki kappa różnią się w zależności od kontekstu. Na przykład w wielu badaniach niezawodności między oceniającymi z łatwymi do zaobserwowania zachowaniami wartości statystyczne kappa poniżej 0,70 można uznać za niskie. Jednak w badaniach wykorzystujących uczenie maszynowe do odkrywania nieobserwowalnych zjawisk, takich jak stany poznawcze, takie jak śnienie w ciągu dnia, wartości statystyczne kappa powyżej 0,40 można uznać za wyjątkowe.
Tak więc, w odpowiedzi na twoje pytanie dotyczące 0,40 kappa, to zależy. Jeśli nic więcej, oznacza to, że klasyfikator osiągnął współczynnik klasyfikacji 2/5 drogi między oczekiwaną dokładnością a 100% dokładnością. Jeśli oczekiwana dokładność wynosiła 80%, oznacza to, że klasyfikator wykonał 40% (ponieważ kappa wynosi 0,4) z 20% (ponieważ jest to odległość między 80% a 100%) powyżej 80% (ponieważ jest to kappa 0 lub losowa szansa) lub 88%. W takim przypadku każdy wzrost kappa o 0,10 wskazuje na 2% wzrost dokładności klasyfikacji. Jeśli dokładność wynosiła zamiast 50%, kappa 0,4 oznaczałoby, że klasyfikator działał z dokładnością 40% (kappa 0,4) 50% (odległość między 50% a 100%) większą niż 50% (ponieważ jest to kappa 0 lub losowa szansa) lub 70%. Ponownie w tym przypadku oznacza to wzrost kappa o 0.
Klasyfikatory zbudowane i ocenione na zestawach danych o różnych rozkładach klas mogą być porównywane w sposób bardziej niezawodny za pomocą statystyki kappa (w przeciwieństwie do zwykłego używania dokładności) ze względu na to skalowanie w stosunku do oczekiwanej dokładności. Daje to lepszy wskaźnik tego, jak klasyfikator działał we wszystkich instancjach, ponieważ prosta dokładność może zostać wypaczona, jeśli rozkład klasy jest podobnie wypaczony. Jak wspomniano wcześniej, dokładność 80% jest znacznie bardziej imponująca z oczekiwaną dokładnością 50% w porównaniu z oczekiwaną dokładnością 75%. Oczekiwana dokładność, jak wyszczególniono powyżej, jest podatna na skośne rozkłady klas, więc kontrolując oczekiwaną dokładność za pomocą statystyki kappa, umożliwiamy łatwiejsze porównywanie modeli różnych rozkładów klas.
To wszystko, co mam. Jeśli ktoś zauważy, że coś zostało pominięte, coś jest niepoprawne lub coś jest nadal niejasne, daj mi znać, żebym mógł poprawić odpowiedź.
Referencje uważam za pomocne:
Zawiera zwięzły opis kappa:
http://standardwisdom.com/softwarejournal/2011/12/confusion-matrix-another-single-value-metric-kappa-statistic/
Zawiera opis obliczania oczekiwanej dokładności:
http://epiville.ccnmtl.columbia.edu/popup/how_to_calculate_kappa.html