Métricas de Avaliação de Modelos de Classificação/Predição

A algum tempo estava namorando a ideia de escrever sobre esse assunto que eu julgo ser importantíssimo para quem está aprendendo, aplicando, e principalmente ensinando Data Mining; e que as vezes me incomoda ver como esse tópico tem tão pouco destaque.

Essas métricas de avaliação de modelos tem suas origens em uma disciplina chamada Recuperação da Informação (de Informações), que nada mais é que uma teoria que estuda a forma em que os documentos são recuperados de forma automática.

Essas métricas surgiram dentro dessa teoria como uma forma de  avaliar se o sistema de Recuperação de Informações estava se comportando da maneira na qual ele foi proposto; isso é, avaliar não somente se o sistema estava recuperando as informações corretas, mas também verificando o quanto o sistema estava abstraindo as informações erradas.

Ao longo do tempo, muitos pesquisadores viram que essas métricas de recuperação da informação poderiam ser aplicadas em classificadores e modelos de predição para determinar as características de cada um dos modelos.

Note-se que não foram colocados os adjetivos “melhor” ou “pior”. É importante ressaltar esse aspecto devido ao fato de que cada modelo é único e a qualidade pode ser relativa; principalmente se estiver sendo considerada uma abordagem sensível ao custo (que pode ser lida aqui, aqui, aqui , aqui, aqui e aqui)

Dado esse pequeno background (que será explorado em postagens futuras), o motivo principal desse post é recomendar um link para quem quiser avaliar os respectivos modelos de classificação e predição de forma correta que é o Teste Diagnóstico da Universidade Federal do Paraná.

É bem simples.

Pegam-se os resultados da matriz de confusão, coloca nos campos em azul e automaticamente são calculadas os parâmetros de avaliação de modelos; e ainda de quebra tem as descrições das métricas.

Testes

As métricas estão no site e são as seguintes:

ACURÁCIA

A proporção de predições corretas, sem levar em consideração o que é positivo e o que é negativo. Esta medida é altamente suscetivel a desbalanceamentos do conjunto de dados e pode facilmente induzir a uma conclusão errada sobre o desempenho do sistema.

ACURACIA = TOTAL DE ACERTOS / TOTAL DE DADOS NO CONJUNTO ACURACIA = (VP + VN) / (P + N)

SENSIBILIDADE

A proporção de verdadeiros positivos: a capacidade do sistema em predizer corretamente a condição para casos que realmente a têm.

SENSIBILIDADE = ACERTOS POSITIVOS / TOTAL DE POSITIVOS SENSIBILIDADE = VP / (VP + FN)

ESPECIFICIDADE

A proporção de verdadeiros negativos: a capacidade do sistema em predizer corretamente a ausência da condição para casos que realmente não a têm.

ESPECIFICIDADE = ACERTOS NEGATIVOS / TOTAL DE NEGATIVOS ESPECIFICIDADE = VN / (VN + FP)

EFICIÊNCIA

A média aritmética da Sensibilidade e Especificidade. Na prática, a sensibilidade e a especificidade variam em direções opostas. Isto é, geralmente, quando um método é muito sensível a positivos, tende a gerar muitos falso-positivos, e vice-versa. Assim, um método de decisão perfeito (100 % de sensibilidade e 100% especificidade) raramente é alcançado, e um balanço entre ambos deve ser atingido.

EFICIENCIA = (SENS + ESPEC) / 2

VALOR PREDITIVO POSITIVO

A proporção de verdadeiros positivos em relação a todas as predições positivas. Esta medida é altamente suscetivel a desbalanceamentos do conjunto de dados e pode facilmente induzir a uma conclusão errada sobre o desempenho do sistema.

VPP = ACERTOS POSITIVOS / TOTAL DE PREDIÇÕES POSITIVAS VALOR PREDITIVO POSITIVO = VP / (VP + FP)

VALOR PREDITIVO NEGATIVO

A proporção de verdadeiros negativos em relação a todas as predições negativas. Esta medida é altamente suscetivel a desbalanceamentos do conjunto de dados e pode facilmente induzir a uma conclusão errada sobre o desempenho do sistema.

VPN = ACERTOS NEGATIVOS / TOTAL DE PREDIÇÕES NEGATIVAS VALOR PREDITIVO NEGATIVO = VN / (VN + FN)

COEFICIENTE DE CORRELAÇÃO DE MATTHEWS - COEFICIENTE (PHI)

O coeficiente de correlação de Matthews é uma medida de qualidade de duas classificações binárias que pode ser usada mesmo se as classes possuem tamanhos bastante diferentes. Retorna um valor entre (-1) e (+1), em que um coeficiente de (+1) representa uma predicao perfeita, (0) representa uma predicao aleatoria media, e (-1) uma predicao inversa. Esta estatistica é equivalente ao coeficiente phi, e tenta, assim como a eficiência, resumir a qualidade da tabela de contingência em um único valor numérico passivel de ser comparado.

phi = (VP*VN - FP*FN) / sqrt((VP + FP)*(VP + FN)*(VN + FP)*(VN + FN))

Note que, se qualquer uma das somas no denominador for igual a (0), o denominador pode ser considerado (1), resutando em um phi igual a (0) que seria o limite correto para esta situação.

Para Ler:

KOHAVI, Ron; PROVOST, Foster. Glossary of terms. Machine Learning, v. 30, n. 2-3, p. 271-274, 1998.