Kappa Cohena w prostym angielskim


131

Czytam książkę do eksploracji danych, w której wspomniano o statystyce Kappa jako sposobie oceny wydajności prognozowania klasyfikatorów. Jednak po prostu nie mogę tego zrozumieć. Sprawdziłem także Wikipedię, ale to też nie pomogło: https://en.wikipedia.org/wiki/Cohen's_kappa .

W jaki sposób kappa Cohena pomaga w ocenie wydajności prognozowania klasyfikatorów? Co to mówi?

Rozumiem, że 100% kappa oznacza, że ​​klasyfikator jest całkowicie zgodny z losowym klasyfikatorem, ale nie rozumiem, w jaki sposób pomaga to w ocenie wydajności klasyfikatora?

Co oznacza 40% kappa? Czy to oznacza, że ​​w 40% przypadków klasyfikator zgadza się z klasyfikatorem losowym? Jeśli tak, co mi to mówi lub pomaga w ocenie klasyfikatora?

Odpowiedzi:


226

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


1
Dodając pewne tło wyjaśniające, dlaczego oczekiwana częstotliwość komórki jest równa rowum * colsum / N, ponieważ jest to wersja zredukowana i na początku nie jest oczywiste, dlaczego równanie to obowiązuje. Jest to również wykorzystywane w testach Chi-Square: en.wikipedia.org/wiki/…
Zhubarb,

2
to świetna odpowiedź, ale zastanawiam się, czy mógłbyś rzucić więcej światła (lub linków!) na temat tego, jak bardzo dominująca klasa może wpłynąć na interpretację kappa. Na przykład mam macierz konfirmacji 7 klas pokrycia terenu, a jedna z nich jest dominująca (~ 70% wszystkich danych). Zakładam, że to „rozwadnia” ogólny błąd?
Sam

2
Tylko losowy komentarz: twój opis jest znacznie jaśniejszy niż strona Wikipedii :)
R.Falque

1
W celu uzyskania oczekiwanej dokładności zwróć uwagę, że łatwiej jest myśleć w następujący sposób: (15/30) to oczekiwany odsetek przypadków, w których „podstawowa prawda” klasyfikuje coś kota, a (15/30) to oczekiwany odsetek razy „podstawowa prawda” klasyfikuje coś psa. Podobnie dla klasyfikatora ML (17/30) oczekiwano proporcji kotów, (13/30) oczekiwano proporcji psów. Załóżmy, że nieskorelowani klasyfikatorzy, mamy procent przypadkowych klasyfikatorów czasu, którzy przypadkowo się zgadzają, ponieważ (15/30) * (17/30) + (15/30) * (13/30) = .5 (albo zgadzają się i klasyfikują jako pies lub jak kot). Dlatego zgoda na 0,5 czasu jest przypadkowa.
ClownInTheMoon

1
Cóż, porównanie adnotatorów jest z pewnością oryginalną intencją. Historia naukowa jest jednak pełna przypadków, w których jakaś formuła wyskoczyła z puli spawnacyjnej do innej i uczyniła świat lepszym miejscem. Biorąc to pod uwagę, prawdopodobnie istnieją lepsze wskaźniki w zależności od przypadku. Przed podjęciem ostatecznej decyzji powinieneś zrozumieć mocne i słabe strony danych kandydatów. AUPRC może być lepszą metodą na przykład w niektórych przypadkach.
rbx

14

rbx ma świetną odpowiedź. Jest to jednak trochę gadatliwe. Oto moje streszczenie i intuicja dotyczące metryki Kappa.


Kappa jest ważnym miernikiem wydajności klasyfikatora, szczególnie w przypadku niezrównoważonego zestawu danych .

Na przykład w wykrywaniu oszustw związanych z kartami kredytowymi rozkład krańcowy zmiennej odpowiedzi jest mocno wypaczony, dlatego użycie dokładności jako miary nie będzie przydatne. Innymi słowy, dla danego przykładu wykrywania oszustw 99,9% transakcji będzie transakcjami niebędącymi oszustwami. Możemy mieć trywialny klasyfikator, który zawsze mówi o nieuczciwości każdej transakcji, i nadal będziemy mieli 99,9% dokładności.

Z drugiej strony Kappa „naprawi” ten problem, biorąc pod uwagę rozkład krańcowy zmiennej odpowiedzi . Używając Kappa, wspomniany trywialny klasyfikator będzie miał bardzo małą Kappę.

W prostym języku angielskim mierzy, o ile lepszy jest klasa w porównaniu do zgadywania z rozkładem docelowym.


1
Mam wrażenie, że ostatni akapit powinien brzmieć „Zwykle po angielsku, mierzy, o ile lepiej klasyfikator jest porównywany z zgadywaniem z rozkładem docelowym”.
Silverfish,

8

Jaka wartość kappa Cohena jest silna, zależy od kilku czynników, w tym na przykład od liczby użytych1 kategorii lub kodów wpływa na kappa i prawdopodobieństwa zapełnienia każdego kodu.

„Na przykład, biorąc pod uwagę możliwe do sprawdzenia kody i obserwatorów, którzy są w 85% dokładni:

value of kappa   number of codes
0.49             2
0.60             3 
0.66             5 
0.69             10"

Co teraz, jeśli nie mamy kodów możliwych do uzyskania, ale mamy różne „stawki podstawowe”?

Dla dwóch kodów wykresy kappa z Bruckner i in. wyglądałby jakwprowadź opis zdjęcia tutaj

... Niemniej jednak (... kontynuując cytat z Wikipedii) w literaturze pojawiły się wytyczne dotyczące wielkości. Być może pierwszym był Landis i Koch, którzy scharakteryzowali wartości

 <0 as indicating no agreement
 0.00–0.20 as slight, 
 0.21–0.40 as fair, 
 0.41–0.60 as moderate, 
 0.61–0.80 as substantial, and 
 0.81–1 as almost perfect agreement. 

Ten zestaw wytycznych nie jest jednak powszechnie akceptowany; Landis i Koch nie przedstawili żadnych dowodów na poparcie tego, opierając je na osobistej opinii. Zauważono, że te wytyczne mogą być bardziej szkodliwe niż pomocne. Równie arbitralne wytyczne Fleiss charakteryzują kappa

>0.75 as excellent, 
 0.40 to 0.75 as fair to good, and 
<0.40 as poor."

(koniec cytatu z Wikipedii)

W przypadku (trudnego do znalezienia) uaktualnienia programu FalliObs dla systemu Windows w celu uwzględnienia liczby kodów pierwotnie oferowanych przez Bakeman i in. kliknij link do ComKappa3 . Opis programu odnosi się do tego, że błąd standardowy kappa można oszacować, umożliwiając przetestowanie uzyskanej kappa pod kątem istotności względem rozkładu zerowego (Bakeman i Gottman, 1997; Fleiss, Cohen i Everitt, 1969). Więcej informacji na temat innych miar kappa znajduje się w ANALIZIE WZORÓW BEHAWIORALNYCH .212

Zobacz także Używanie statystyki kappa Cohena do oceny binarnego klasyfikatora dla podobnego pytania.

1 Bakeman, R .; Quera, V .; McArthur, D .; Robinson, BF (1997). „Wykrywanie sekwencyjnych wzorców i określanie ich niezawodności za pomocą omylnych obserwatorów”. Metody psychologiczne. 2: 357–370. doi: 10.1037 / 1082-989X.2.4.357

2 Robinson BF, Bakeman R. ComKappa: Windows 95 program do obliczania kappa i powiązanych statystyk. Metody badań zachowania. 1998; 30: 731-2.


1

aby odpowiedzieć na twoje pytanie (zwykłym angielskim :-)):

W jaki sposób Kappa pomaga w ocenie wydajności prognozowania klasyfikatorów? Co to mówi? !!

Powinieneś rozważyć kappę jako miarę porozumienia między 2 osobami, tak że wynik można interpretować jako:

Poor agreement = 0.20 or less
Fair agreement = 0.20 to 0.40
Moderate agreement = 0.40 to 0.60
Good agreement = 0.60 to 0.80
Very good agreement = 0.80 to 1.00

6
Nie stosuj tej skali na ślepo, przeczytaj odpowiedź z rbx: „Nie ma znormalizowanej interpretacji statystyki kappa. ... Landis i Koch uważają 0-0,20 za niewielkie, 0,21-0,40 za uczciwe, 0,41-0,60 za umiarkowane , 0,61-0,80 jako znaczny, a 0,81-1 prawie idealny. Fleiss uważa kappas> 0,75 za doskonały, 0,40-0,75 za dobry do dobrego, a <0,40 za zły. Ważne jest, aby pamiętać, że obie skale są nieco dowolne. przy interpretacji statystyki kappa należy wziąć pod uwagę co najmniej dwa dodatkowe czynniki. ” Rozważania te wyjaśniono w odpowiedzi
rbx
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.