Área sob a curva do ROC vs. precisão geral

29

Estou um pouco confuso sobre a Área sob curva (AUC) do ROC e a precisão geral.

  1. 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?

  2. Se eles estão correlacionados positivamente, por que nos incomodamos em relatar os dois em algumas publicações?

  3. 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)?

Samo Jerom
fonte
1
Descobri que um artigo pode ter algum interesse para alguns de vocês. google.co.uk/…
Samo Jerom
A AUC não deveria ser menor do que a precisão geral, pois contamos a taxa de falsos positivos na medida da AUC, enquanto não contamos com a precisão ???
Ali Sultan
A ROC AUC é benéfica quando as classes têm tamanhos diferentes. Se 99% dos objetos forem positivos, é possível obter uma precisão de 99% por amostragem aleatória. Então o valor da ROC AUC será muito mais significativo.
Anony-Mousse

Respostas:

26

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.

Vincent
fonte
2
Muito obrigado pela sua resposta! Entendo que a precisão geral é obtida a partir de determinado ponto de corte (ou valor limite). No entanto, existe um melhor ponto de corte, ou seja, o mais próximo ao canto superior esquerdo. Por exemplo, minha precisão geral é calculada usando esse melhor ponto de corte e a AUC é para todos os diferentes pontos de corte. Então, como interpretar essa precisão e AUC? Por exemplo, o desempenho dos dois classificadores que mencionei acima.
Samo Jerom
3
Ah eu vejo. Você está comparando a melhor precisão geral e a AUC. Mas eles ainda são conceito diferente novamente. A AUC é P (VERDADEIRO | VERDADEIRO real) vs P (FALSO | FALSO), enquanto a precisão geral é P = P (VERDADEIRO | VERDADEIRO) * P (VERDADEIRO real) + P (FALSO | FALSO) * P ( FALSO). Portanto, isso depende muito da proporção do valor real no seu conjunto de dados. Na prática, parece que a melhor precisão geral é geralmente alcançada quando o ponto de corte está próximo de P (VERDADEIRO real).
Vincent
Portanto, a AUC e a melhor precisão geral podem não ser consistentes, dependendo da proporção do valor real do seu conjunto de dados. No seu caso, parece que um dos classificadores se concentra mais na sensibilidade, enquanto o outro na especificidade. E no seu conjunto de dados atual, P (TRUE) não é de 50%. Portanto, sensibilidade e especificidade contribuem para a precisão geral por diferentes pesos. Na prática, o ROC pode nos dar mais informações e gostaríamos de escolher o caso classier por caso. Por exemplo, o classificador de spam pode se concentrar mais em P (não spam | não spam) para evitar a perda de emails importantes.
Vincent
Obrigado pela sua resposta. Está muito mais claro agora. Mas se alguém tiver mais vontade de discutir, poste aqui.
Samo Jerom 02/02
27

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.

Dikran Marsupial
fonte
Dikran, você tem uma referência para o seu primeiro parágrafo?
Bunder
@Bunder não diretamente, o AUROC é a probabilidade de um padrão ve selecionado aleatoriamente ser mais alto que um padrão ve selecionado aleatoriamente ( en.wikipedia.org/wiki/… ) e, portanto, é uma medida da qualidade da classificação , como gostaríamos que a probabilidade fosse a mais alta possível.
Dikran Marsupial
5

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.

Analista
fonte
3
O custo esperado só pode ser avaliado se você conhecer os custos falso-positivos e falso-negativos, que não são necessários para o cálculo da AUC, que é uma boa estatística a ser usada se os custos forem desconhecidos ou variáveis.
Dikran marsupiais
4

Como todas as respostas foram postadas: ROCe accuracyé fundamental dois conceitos diferentes.

De um modo geral, ROCdescreve 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 accuracysão calculadas com base na distribuição de classe de test datasetou cross-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 ratee FP rateque são usados ​​para construir AUCnão serão afetados pela mudança de distribuição de classe.

Ling Ma
fonte