Estou um pouco confuso sobre a Área sob curva (AUC) do ROC e a precisão geral.
A AUC será proporcional à precisão geral? Em outras palavras, quando tivermos uma precisão geral maior, obteremos uma AUC cada vez maior? Ou eles são, por definição, correlacionados positivamente?
Se eles estão correlacionados positivamente, por que nos incomodamos em relatar os dois em algumas publicações?
No caso real, realizei alguma tarefa de classificação e obtive os resultados da seguinte forma: o classificador A obteve uma precisão de 85% e a AUC de 0,98 e o classificador B obteve uma precisão de 93% e a AUC de 0,92. A pergunta é: qual classificador é melhor? Ou é possível obter resultados semelhantes como esses (quero dizer, pode haver um erro na minha implementação)?
fonte
Respostas:
AUC (com base no ROC) e precisão geral parecem não ser o mesmo conceito.
A precisão geral é baseada em um ponto de corte específico, enquanto o ROC tenta todo o ponto de corte e plota a sensibilidade e a especificidade. Portanto, quando comparamos a precisão geral, estamos comparando a precisão com base em algum ponto de corte. A precisão geral varia de ponto de corte diferente.
fonte
Embora seja provável que as duas medidas estatísticas sejam correlacionadas, elas medem diferentes qualidades do classificador.
AUROC
A área sob a curva (AUC) é igual à probabilidade de um classificador classificar uma instância positiva escolhida aleatoriamente mais alta que um exemplo negativo escolhido aleatoriamente. Ele mede a habilidade dos classificadores em classificar um conjunto de padrões de acordo com o grau em que eles pertencem à classe positiva, mas sem realmente atribuir padrões às classes.
A precisão geral também depende da capacidade do classificador de classificar padrões, mas também de selecionar um limite no ranking usado para atribuir padrões à classe positiva se acima do limite e à classe negativa se abaixo.
Assim, é provável que o classificador com a estatística AUROC mais alta (todas as coisas sejam iguais) também tenha uma precisão geral mais alta, pois a classificação dos padrões (que o AUROC mede) é benéfica tanto para o AUROC quanto para a precisão geral. No entanto, se um classificador classifica bem os padrões, mas seleciona mal o limite, ele pode ter um AUROC alto, mas uma precisão geral ruim.
Uso pratico
Na prática, eu gosto de coletar a precisão geral, o AUROC e se o classificador estima a probabilidade de pertencer à classe, a entropia cruzada ou informações preditivas. Então, tenho uma métrica que mede sua capacidade bruta de executar uma classificação rígida (assumindo que os custos de classificação falsa positiva e falsa negativa são iguais e as frequências de classe na amostra são as mesmas que em uso operacional - uma grande suposição!), uma métrica que mede a capacidade de classificar padrões e uma métrica que mede quão bem a classificação é calibrada como uma probabilidade.
Para muitas tarefas, os custos de classificação incorreta operacional são desconhecidos ou variáveis, ou as frequências da classe operacional são diferentes das da amostra de treinamento ou são variáveis. Nesse caso, a precisão geral geralmente não tem sentido e o AUROC é um melhor indicador de desempenho e, idealmente, queremos um classificador que produz probabilidades bem calibradas, para que possamos compensar esses problemas no uso operacional. Essencialmente, qual métrica é importante depende do problema que estamos tentando resolver.
fonte
AUC é realmente uma métrica muito útil?
Eu diria que o custo esperado é a medida mais apropriada.
Você teria um custo A para todos os falsos positivos e B para todos os falsos negativos. Pode ser que outra classe seja relativamente mais cara que outra. Obviamente, se você tiver custos para classificação falsa nos vários subgrupos, seria uma métrica ainda mais poderosa.
Ao plotar o corte no eixo x e o custo esperado no eixo y, é possível ver qual ponto de corte minimiza o custo esperado.
Formalmente, você possui uma função de perda Perda (dados de corte | custo, custo) que tenta minimizar.
fonte
Como todas as respostas foram postadas:
ROC
eaccuracy
é fundamental dois conceitos diferentes.De um modo geral,
ROC
descreve o poder discriminativo de um classificador independente da distribuição de classes e dos custos desiguais de erros de previsão (custo falso positivo e falso negativo).As métricas semelhantes
accuracy
são calculadas com base na distribuição de classe detest dataset
oucross-validation
, mas essa proporção pode mudar quando você aplica o classificador a dados da vida real, porque a distribuição de classe subjacente foi alterada ou desconhecida. Por outro lado,TP rate
eFP rate
que são usados para construirAUC
não serão afetados pela mudança de distribuição de classe.fonte