Introdução
A estatística Kappa (ou valor) é uma métrica que compara uma precisão observada com uma precisão esperada (chance aleatória). A estatística kappa é usada não apenas para avaliar um único classificador, mas também para avaliar os classificadores entre si. Além disso, leva em consideração a chance aleatória (concordância com um classificador aleatório), o que geralmente significa que é menos enganoso do que simplesmente usar a precisão como métrica (uma precisão observada de 80% é muito menos impressionante com uma precisão esperada de 75% versus uma precisão esperada de 50%). Cálculo da precisão observada e da precisão esperadaé essencial para a compreensão da estatística kappa e é mais facilmente ilustrada através do uso de uma matriz de confusão. Vamos começar com uma matriz simples confusão de uma classificação binária simples de gatos e cães :
Computação
Cats Dogs
Cats| 10 | 7 |
Dogs| 5 | 8 |
Suponha que um modelo tenha sido construído usando aprendizado de máquina supervisionado em dados rotulados. Isso nem sempre tem que ser o caso; a estatística kappa é frequentemente usada como uma medida de confiabilidade entre dois avaliadores humanos. Independentemente disso, as colunas correspondem a um "avaliador", enquanto as linhas correspondem a outro "avaliador". No aprendizado de máquina supervisionado, um "avaliador" reflete a verdade básica (os valores reais de cada instância a ser classificada), obtidos a partir de dados rotulados, e o outro "avaliador" é o classificador de aprendizado de máquina usado para executar a classificação. Por fim, não importa qual é o cálculo da estatística kappa, mas para maior clareza ' classificações.
A partir da matriz de confusão, podemos ver que há 30 instâncias no total (10 + 7 + 5 + 8 = 30). De acordo com a primeira coluna 15 foram rotulados como Gatos (10 + 5 = 15), e de acordo com a segunda coluna 15 foram rotulados como Cães (7 + 8 = 15). Também podemos ver que o modelo classificou 17 instâncias como Gatos (10 + 7 = 17) e 13 instâncias como Cães (5 + 8 = 13).
Precisão observada é simplesmente o número de instâncias que foram classificadas corretamente em toda a matriz de confusão, ou seja, o número de instâncias que foram rotuladas como Gatos via verdade no solo e depois classificadas como Gatos pelo classificador de aprendizado de máquina ou rotuladas como Cães através da verdade no solo e depois classificados como Cães pelo classificador de aprendizado de máquina . Para calcular a precisão observada , simplesmente adicionamos o número de instâncias que o classificador de aprendizado de máquina concordou com a verdade básicarótulo e divida pelo número total de instâncias. Para essa matriz de confusão, isso seria 0,6 ((10 + 8) / 30 = 0,6).
Antes de chegarmos à equação da estatística kappa, é necessário mais um valor: a precisão esperada . Esse valor é definido como a precisão que qualquer classificador aleatório atingiria com base na matriz de confusão. A precisão esperada está diretamente relacionada ao número de instâncias de cada classe ( gatos e cães ), juntamente com o número de instâncias que o classificador de aprendizado de máquina concordou com o rótulo de base da verdade . Para calcular a precisão esperada para nossa matriz de confusão, primeiro multiplique a frequência marginal de Gatos para um "avaliador" pela frequência marginal deGatos para o segundo "avaliador" e divida pelo número total de instâncias. A frequência marginal para uma determinada classe de um determinado "avaliador" é apenas a soma de todos os casos que o "avaliador" indicou ser essa classe. No nosso caso, 15 (10 + 5 = 15) instâncias foram rotuladas como gatos de acordo com a verdade básica e 17 (10 + 7 = 17) instâncias foram classificadas como gatos pelo classificador de aprendizado de máquina . Isso resulta em um valor de 8,5 (15 * 17/30 = 8,5). Isso também é feito para a segunda classe (e pode ser repetido para cada classe adicional, se houver mais de 2). 15(7 + 8 = 15) instâncias foram rotuladas como Cães de acordo com a verdade básica e 13 (8 + 5 = 13) ocorrências foram classificadas como Cães pelo classificador de aprendizado de máquina . Isso resulta em um valor de 6,5 (15 * 13/30 = 6,5). A etapa final é adicionar todos esses valores e, finalmente, dividir novamente pelo número total de instâncias, resultando em uma precisão esperada de 0,5 ((8,5 + 6,5) / 30 = 0,5). Em nosso exemplo, a precisão esperada acabou sendo de 50%, como sempre será o caso quando um "avaliador" classifica cada classe com a mesma frequência em uma classificação binária (ambos os gatose Dogs continha 15 instâncias de acordo com os rótulos da verdade básica em nossa matriz de confusão).
A estatística kappa pode então ser calculada usando a precisão observada ( 0,60 ) e a precisão esperada ( 0,50 ) e a fórmula:
Kappa = (observed accuracy - expected accuracy)/(1 - expected accuracy)
Portanto, no nosso caso, a estatística kappa é igual a: (0,60 - 0,50) / (1 - 0,50) = 0,20.
Como outro exemplo, aqui está uma matriz de confusão menos equilibrada e os cálculos correspondentes:
Cats Dogs
Cats| 22 | 9 |
Dogs| 7 | 13 |
Verdade no solo: Gatos (29), Cães (22)
Classificador de aprendizado de máquina: Gatos (31), Cães (20)
Total: (51)
Precisão observada: ((22 + 13) / 51) = 0,69
Precisão esperada: ((29 * 31/51) + (22 * 20/51)) / 51 = 0,51
Kappa: (0,69 - 0,51) / (1 - 0,51) = 0,37
Em essência, a estatística kappa é uma medida de quão perto as instâncias classificadas pelo classificador de aprendizado de máquina corresponderam aos dados rotulados como verdade básica , controlando a precisão de um classificador aleatório, medido pela precisão esperada. Essa estatística kappa não apenas pode esclarecer o desempenho do classificador, mas a estatística kappa de um modelo é diretamente comparável à estatística kappa de qualquer outro modelo usado para a mesma tarefa de classificação.
Interpretação
Não existe uma interpretação padronizada da estatística kappa. De acordo com a Wikipedia (citando o artigo), Landis e Koch consideram 0-0,20 como leve, 0,21-0,40 como razoável, 0,41-0,60 como moderada, 0,61-0,80 como substancial e 0,81-1 como quase perfeita. Fleiss considera kappas> 0,75 como excelente, 0,40-0,75 como justo a bom e <0,40 como ruim. É importante notar que as duas escalas são um tanto arbitrárias. Pelo menos duas considerações adicionais devem ser levadas em consideração ao interpretar a estatística kappa. Primeiro, a estatística kappa deve sempre ser comparada com uma matriz de confusão acompanhada, se possível, para obter a interpretação mais precisa. Considere a seguinte matriz de confusão:
Cats Dogs
Cats| 60 | 125 |
Dogs| 5 | 5000|
A estatística kappa é de 0,47, bem acima do limite para moderado de acordo com Landis e Koch e bom para Fleiss. No entanto, observe a taxa de acerto para classificar gatos . Menos de um terço de todos os gatos foram realmente classificados como gatos ; os demais foram classificados como cães . Se nos preocupamos mais em classificar os gatos corretamente (digamos, somos alérgicos a gatos, mas não a cães , e tudo o que nos importa é não sucumbir a alergias, em vez de maximizar o número de animais que recebemos), então um classificador com um valor mais baixo kappa, mas uma melhor taxa de classificação de gatos pode ser mais ideal.
Segundo, os valores estatísticos Kappa aceitáveis variam de acordo com o contexto. Por exemplo, em muitos estudos de confiabilidade entre avaliadores com comportamentos facilmente observáveis, valores estatísticos kappa abaixo de 0,70 podem ser considerados baixos. No entanto, em estudos usando aprendizado de máquina para explorar fenômenos não observáveis, como estados cognitivos, como sonhar acordado, valores estatísticos kappa acima de 0,40 podem ser considerados excepcionais.
Portanto, em resposta à sua pergunta sobre um kappa de 0,40, depende. Se nada mais, isso significa que o classificador alcançou uma taxa de classificação 2/5 entre a precisão esperada e a precisão de 100%. Se a precisão esperada for de 80%, isso significa que o classificador executou 40% (porque kappa é 0,4) de 20% (porque essa é a distância entre 80% e 100%) acima de 80% (porque esse é um kappa de 0 ou chance aleatória) ou 88%. Portanto, nesse caso, cada aumento no kappa de 0,10 indica um aumento de 2% na precisão da classificação. Se a precisão fosse 50%, um kappa de 0,4 significaria que o classificador executasse com uma precisão de 40% (kappa de 0,4) de 50% (distância entre 50% e 100%) maior que 50% (porque esse é um kappa de 0 ou chance aleatória) ou 70%. Novamente, neste caso, isso significa que um aumento no kappa de 0.
Os classificadores construídos e avaliados em conjuntos de dados de diferentes distribuições de classe podem ser comparados de maneira mais confiável por meio da estatística kappa (em vez de apenas usar a precisão) devido a esse dimensionamento em relação à precisão esperada. Ele fornece um indicador melhor de como o classificador foi executado em todas as instâncias, porque uma precisão simples pode ser distorcida se a distribuição de classe for igualmente distorcida. Como mencionado anteriormente, uma precisão de 80% é muito mais impressionante, com uma precisão esperada de 50% versus uma precisão esperada de 75%. A precisão esperada, conforme detalhado acima, é suscetível a distribuições de classes distorcidas; portanto, controlando a precisão esperada através da estatística kappa, permitimos comparar modelos de distribuições de classes diferentes com mais facilidade.
É tudo o que tenho. Se alguém perceber algo deixado de fora, algo incorreto ou se algo ainda não estiver claro, entre em contato para que possamos melhorar a resposta.
Referências que achei úteis:
Inclui uma descrição sucinta do kappa:
http://standardwisdom.com/softwarejournal/2011/12/confusion-matrix-another-single-value-metric-kappa-statistic/
Inclui uma descrição do cálculo da precisão esperada:
http://epiville.ccnmtl.columbia.edu/popup/how_to_calculate_kappa.html