Realmente ótima pergunta, e que eu acho que a maioria das pessoas realmente não entende em um nível intuitivo. AUC
de fato, é preferível à precisão da classificação binária por vários motivos diferentes. Primeiro, porém, vamos falar exatamente sobre o que AUC
é. Honestamente, por ser uma das métricas de eficácia mais amplamente usadas, é surpreendentemente obtuso descobrir exatamente como AUC
funciona.
AUC
significa Area Under the Curve
, qual curva você pergunta? Bem, essa seria a ROC
curva. ROC
significa Característica de operação do receptor , que na verdade é um pouco não intuitiva. O objetivo implícito AUC
é lidar com situações em que você tem uma distribuição de amostras muito distorcida e não deseja se super-ajustar a uma única classe.
Um ótimo exemplo está na detecção de spam. Geralmente, os conjuntos de dados de spam são fortemente direcionados para o ham, ou não o spam. Se o seu conjunto de dados for 90% ham, você poderá obter uma precisão muito boa dizendo que todo e-mail é ham, o que obviamente é algo que indica um classificador não ideal. Vamos começar com algumas métricas que são um pouco mais úteis para nós, especificamente a taxa positiva verdadeira ( TPR
) e a taxa positiva falsa ( FPR
):
Agora, neste gráfico, TPR
está especificamente a proporção de verdadeiro positivo para todos os positivos e FPR
é a proporção de falso positivo para todos os negativos. (Lembre-se de que isso é apenas para classificação binária.) Em um gráfico como este, deve ser bastante direto descobrir que uma previsão de todos os 0 ou 1 resultará nos pontos de (0,0)
e (1,1)
respectivamente. Se você desenhar uma linha através dessas linhas, obterá algo como isto:
Que se parece basicamente com uma linha diagonal (é) e, por alguma geometria fácil, você pode ver que o AUC
modelo seria 0.5
(altura e base são 1). Da mesma forma, se você prever uma variedade aleatória de zeros e zeros, digamos 90% zeros, você poderá entender o ponto (0.9, 0.9)
, que novamente cai nessa linha diagonal.
Agora vem a parte interessante. E se não estivéssemos prevendo apenas zeros e zeros? E se, em vez disso, quiséssemos dizer que, teoricamente, definiríamos um ponto de corte, acima do qual todo resultado fosse 1 e abaixo do qual todo resultado fosse um 0. Isso significaria que nos extremos você obtém a situação original em que tem todos os 0 e todos os 1 (com um ponto de corte de 0 e 1 respectivamente), mas também uma série de estados intermediários que se enquadram no 1x1
gráfico que contém o seu ROC
. Na prática, você obtém algo parecido com isto:
Então, basicamente, o que você realmente obtém quando faz uma AUC
precisão excessiva é algo que desencorajará fortemente as pessoas que procuram modelos representativos, mas não discriminatórios, pois isso só seleciona modelos que atingem taxas de falso positivo e verdadeiro positivo que estão significativamente acima do acaso, o que não é garantido pela precisão.