ROC vs curvas de precisão e recuperação

159

Eu entendo as diferenças formais entre eles, o que eu quero saber é quando é mais relevante usar um vs. o outro.

  • Eles sempre fornecem informações complementares sobre o desempenho de um determinado sistema de classificação / detecção?
  • Quando é razoável fornecer os dois, digamos, em um artigo? em vez de apenas um?
  • Existem descritores alternativos (talvez mais modernos) que capturem os aspectos relevantes do ROC e da recuperação de precisão para um sistema de classificação?

Estou interessado em argumentos para casos binários e multi-classe (por exemplo, como um vs todos).

Amelio Vazquez-Reina
fonte
7
Este artigo apenas deve aparecer em um contexto: biostat.wisc.edu/~page/rocpr.pdf
2
Eu poderia usar isso para um "plug" para mencionar minha própria tese aqui ... Em Leitner (2012) , propus uma métrica "Precisão média medida por F" (FAP) (veja a p. 65) como a média harmônica de F- medida e precisão média. Ou seja, uma combinação de uma métrica de avaliação definida com a de uma métrica de avaliação classificada. Na tese, mostrei que maximizar a pontuação do FAP no conjunto de treinamento pode ser usado para identificar o melhor ponto de corte para delimitar uma tarefa de recuperação de informações sem limites (usando centenas de execuções do BioCreative!).
Fnl 23/05/19
1
Aqui está outra boa discussão sobre a curva AUC-ROC e PR em um conjunto de dados desequilibrado. Tem a mesma conclusão que o dsimcha disse. Quando você se preocupa mais com o caso raro, deve usar PR.
YC

Respostas:

207

A principal diferença é que as curvas ROC serão as mesmas, independentemente da probabilidade da linha de base, mas as curvas PR podem ser mais úteis na prática para problemas do tipo agulha no palheiro ou problemas em que a classe "positiva" é mais interessante que a negativa classe.

Para mostrar isso, primeiro vamos começar com uma maneira muito agradável de definir precisão, recall e especificidade. Suponha que você tenha uma classe "positivo" chamados 1 e uma classe "negativo" chamado 0. Y é sua estimativa do verdadeiro rótulo de classe Y . Então: Y^Y A principal coisa a notar é que a sensibilidade / recall e especificidade, que compõem a curva ROC, são probabilidadescondicionadas na etiqueta classe verdadeira. Portanto, eles serão os mesmos, independentemente do queP(Y=1)seja. A precisão é uma probabilidade condicionada àsua estimativa do rótulo da classee, portanto, variará se você tentar o seu classificador em diferentes populações com diferentes linha de baseP(Y=1)

Precisão=P(Y=1|Y^=1)Recordar=Sensibilidade=P(Y^=1|Y=1)Especificidade=P(Y^=0 0|Y=0 0)
P(Y=1)P(Y=1). No entanto, na prática, pode ser mais útil se você se importar apenas com uma população com probabilidade de fundo conhecida e a classe "positiva" for muito mais interessante do que a classe "negativa". (A precisão do IIRC é popular no campo de recuperação de documentos, onde é esse o caso.) Isso ocorre porque responde diretamente à pergunta: "Qual é a probabilidade de que seja um sucesso real, dado que meu classificador diz que é?".

P(Y=1)

IMHO ao escrever um artigo, você deve fornecer qualquer curva que responda à pergunta que você deseja responder (ou aquela que for mais favorável ao seu método, se você for cínico). Se a sua pergunta for: "Qual é o resultado positivo do meu classificador, dadas as probabilidades básicas do meu problema ?", Use uma curva PR. Se sua pergunta for: "Qual o desempenho esperado desse classificador em geral, com uma variedade de probabilidades de linha de base diferentes ?", Siga uma curva ROC.

dsimcha
fonte
10
essa foi uma explicação fantástica!
Amelio Vazquez-Reina
5
+1, grande insight sobre as interpretações probabilísticas de Precisão, Rechamada e Especificidade.
Zhubarb
2
Que resposta! Gostaria de poder acertar o voto duas vezes.
London guy
6
Caso isso não fique claro no meu comentário anterior: Essa resposta está errada , assim como as curvas ROC que usam especificidade. Veja, por exemplo, Uma Introdução à análise ROC - que também sugere suas deficiências, conforme documentado na minha resposta: "Muitos domínios do mundo real são dominados por um grande número de instâncias negativas, de modo que o desempenho no lado esquerdo do gráfico ROC se torna mais interessante."
Fnl 28/05
2
+0,5 @fnl. Embora não esteja explicitamente errado, acho que a resposta está faltando o objetivo da pergunta; a interpretação probabilística é muito bem-vinda, mas é discutível em relação à questão central. Além disso, não posso apresentar um exemplo realista genérico em que a pergunta: " Qual é o resultado positivo do meu classificador, dadas as probabilidades básicas do meu problema? " É inaplicável. A perspectiva " em geral " do ROC-AUC é muito confusa. (Escusado será dizer que nem deve ser usado em valor de face para construir o modelo final)
usεr11852
26

Aqui estão as conclusões de um artigo de Davis & Goadrich explicando a relação entre o espaço ROC e PR. Eles respondem às duas primeiras perguntas:

Primeiro, para qualquer conjunto de dados, a curva ROC e a curva PR de um determinado algoritmo contêm os mesmos pontos. Essa equivalência leva ao surpreendente teorema de que uma curva domina no espaço ROC se e somente se domina no espaço PR. Segundo, como corolário do teorema, mostramos a existência do espaço PR análogo ao casco convexo no espaço ROC, que chamamos de curva PR alcançável. Notavelmente, ao construir a curva PR alcançável, descartamos exatamente os mesmos pontos omitidos pelo casco convexo no espaço ROC. Conseqüentemente, podemos calcular com eficiência a curva de RP alcançável. [...] Finalmente, mostramos que um algoritmo que otimiza a área sob a curva ROC não é garantido para otimizar a área sob a curva PR.

Em outras palavras, em princípio, ROC e PR são igualmente adequados para comparar resultados. Mas, no exemplo de um resultado de 20 acertos e erros de 1980, eles mostram que as diferenças podem ser bastante drásticas, como mostra as Figuras 11 e 12.

Figuras 11 e 12 de Davis e Goadrich

Resultado / curva (I) descreve um resultado em que 10 dos 20 hits estão entre os dez primeiros classificados e os 10 hits restantes são distribuídos uniformemente nos primeiros 1500 rankings. O resultado (II) descreve um resultado em que os 20 hits são distribuídos igualmente nas primeiras 500 (de 2000) fileiras. Portanto, nos casos em que um resultado de "forma" como (I) é preferível, essa preferência é claramente distinguível no espaço PR, enquanto o ROC da AUC dos dois resultados é quase igual.

fnl
fonte
1
Esses gráficos não refletem (discretizam) a situação descrita, que mostra etapas nas curvas ROC toda vez que um acerto é encontrado (após os 10 primeiros da curva I). O ROCCH ficaria assim com o Convex Hull. Da mesma forma para o PR, o Precision aumentaria um nível cada vez que um acerto fosse encontrado e decairia durante as falhas, começando em (0,0) por nada previsto (acima do limite) se o Precision fosse definido como 0 neste momento (0 / 0) - a curva II, como mostrado, é a precisão máxima, não a precisão em cada nível do limiar (e, portanto, da rechamada).
David MW Powers
1
Esta é realmente a Fig 7 na versão do artigo que encontrei. O artigo realmente interpola a curva PR usando a curva ROC. Observe que o resultado da dominação se baseia na suposição de que o recall é diferente de zero, o que não ocorre até o primeiro acerto ser encontrado, e Precision (conforme definido no artigo) é formalmente indefinido (0/0) até então.
Powers David MW
1
Sim, a falta de discretização correta é o problema (embora uma plotagem como essa possa ocorrer se for calculada a média de um grande número de execuções). No entanto, o resultado do artigo é menos significativo do que você poderia esperar por causa dos problemas de indefinição e não é tão significativo quanto você esperaria quando apenas entendesse o resultado em termos de redimensionamento. Eu nunca usaria PR, mas às vezes escalaria no ROC ou equivaleria ao PN.
David MW Powers
1
Primeiro, os gráficos da Fig. 7 (11 vs 12) são irrelevantes - eles não são os gráficos escalonados de um sistema treinado (como exemplos positivos excedem um limite de redução), mas correspondem a médias limitadas à medida que o número de sistemas DIFERENTES se aproxima da infinidade. Second Precision e Recall foram projetados para pesquisa na web e ambos ignoraram totalmente o número (assumido grande) de negativos verdadeiros (Prec = TP / PP e Rec = TP / RP). Terceiro, o gráfico Precision and Recall está realmente apenas mostrando o viés recíproco (1 / PP) versus prevalência recíproca (1 / RP) para um nível de TP específico (se você interrompeu uma pesquisa na Web com os acertos corretos do TP).
David MW Powers
5
OK, então, depois de tirar todas as minhas dúvidas, acho necessário aconselhar os leitores que acredito que a resposta do @DavidMWPowers deve ser preferida à minha.
Fnl 01/12/19
12

Há muitos mal-entendidos sobre avaliação. Parte disso vem da abordagem do Machine Learning de tentar otimizar algoritmos em conjuntos de dados, sem nenhum interesse real nos dados.

No contexto médico, trata-se dos resultados do mundo real - quantas pessoas você salva da morte, por exemplo. Em um contexto médico, a sensibilidade (TPR) é usada para ver quantos dos casos positivos são detectados corretamente (minimizando a proporção perdida como falsos negativos = FNR) enquanto a especificidade (TNR) é usada para ver quantos dos casos negativos estão corretamente eliminado (minimizando a proporção encontrada como falso positivo = RPF). Algumas doenças têm uma prevalência de uma em um milhão. Portanto, se você sempre prevê negativo, tem uma precisão de 0,999999 - isso é conseguido pelo aprendiz simples do ZeroR que simplesmente prevê a classe máxima. Se considerarmos a Rechamada e a Precisão para prever que você está livre de doenças, teremos Rechamada = 1 e Precisão = 0,999999 para ZeroR. Claro, se você inverter + ve e -ve e tentar prever que uma pessoa tem a doença com ZeroR, você receberá Recall = 0 e Precision = undef (como você nem fez uma previsão positiva, mas muitas vezes as pessoas definem Precision como 0 neste caso). Observe que Recall (+ ve Recall) e Inverse Recall (-ve Recall) e o TPR, FPR, TNR e FNR relacionados sempre são definidos porque estamos apenas enfrentando o problema porque sabemos que existem duas classes para distinguir e fornecemos deliberadamente exemplos de cada um.

Observe a enorme diferença entre a falta de câncer no contexto médico (alguém morre e você é processado) versus a falta de um artigo em uma pesquisa na web (boa chance de que um dos outros faça referência se for importante). Nos dois casos, esses erros são caracterizados como falsos negativos, contra uma grande população de negativos. No caso de pesquisa na web, obteremos automaticamente uma grande população de negativos verdadeiros, simplesmente porque apenas mostramos um pequeno número de resultados (por exemplo, 10 ou 100) e não ser mostrado não deve ser considerado uma previsão negativa (pode ter sido 101 ), enquanto que no caso do teste de câncer temos um resultado para todas as pessoas e, diferentemente da pesquisa na web, controlamos ativamente o nível falso negativo (taxa).

Portanto, o ROC está explorando a troca entre verdadeiros positivos (versus falsos negativos como uma proporção dos reais positivos) e falsos positivos (versus verdadeiros negativos como uma proporção dos reais negativos). É equivalente a comparar Sensibilidade (Rechamada + ve) e Especificidade (Rechamada -ve). Há também um gráfico PN que parece o mesmo em que plotamos TP vs FP em vez de TPR vs FPR - mas, como fazemos o quadrado da plotagem, a única diferença são os números que colocamos nas escalas. Eles são relacionados pelas constantes TPR = TP / RP, FPR = TP / RN, onde RP = TP + FN e RN = FN + FP são o número de positivos reais e negativos reais no conjunto de dados e influenciam inversamente PP = TP + FP e PN = TN + FN é o número de vezes que predizemos positivo ou negativo. Observe que chamamos rp = RP / N e rn = RN / N a prevalência de resp positiva. negativo e pp = PP / N e rp = RP / N o viés para positivo resp.

Se somarmos a sensibilidade ou especificidade média ou observarmos a área sob a curva de troca (equivalente ao ROC apenas invertendo o eixo x), obteremos o mesmo resultado se trocarmos qual classe é + ve e + ve. Isso NÃO é verdadeiro para Precision and Recall (como ilustrado acima com a previsão de doença por ZeroR). Essa arbitrariedade é uma grande deficiência de Precisão, Rechamada e suas médias (aritmética, geométrica ou harmônica) e gráficos de troca.

Os gráficos PR, PN, ROC, LIFT e outros gráficos são plotados à medida que os parâmetros do sistema são alterados. Esse gráfico classifica pontos para cada sistema individual treinado, geralmente com um limite sendo aumentado ou diminuído para alterar o ponto em que uma instância é classificada de positiva em negativa.

Às vezes, os pontos plotados podem ter médias de (alterar parâmetros / limites / algoritmos de) conjuntos de sistemas treinados da mesma maneira (mas usando números aleatórios diferentes, amostragens ou pedidos). Essas são construções teóricas que nos falam sobre o comportamento médio dos sistemas e não sobre o desempenho deles em um problema específico. Os gráficos de tradeoffs nos ajudam a escolher o ponto operacional correto para uma aplicação específica (conjunto de dados e abordagem) e é aí que o ROC recebe seu nome (Características Operacionais do Receptor visa maximizar as informações recebidas, no sentido de informar).

Vamos considerar contra o que a Recall, o TPR ou o TP podem ser plotados.

TP vs FP (PN) - se parece exatamente com o gráfico ROC, apenas com números diferentes

TPR vs FPR (ROC) - TPR contra FPR com AUC é inalterado se +/- forem revertidos.

TPR vs TNR (alt ROC) - imagem no espelho do ROC como TNR = 1-FPR (TN + FP = RN)

TP vs PP (LIFT) - X incs para exemplos positivos e negativos (alongamento não linear)

TPR vs pp (alt LIFT) - parece o mesmo que LIFT, apenas com números diferentes

TP vs 1 / PP - muito semelhante ao LIFT (mas invertido com alongamento não linear)

TPR vs 1 / PP - tem a mesma aparência de TP vs 1 / PP (números diferentes no eixo y)

TP vs TP / PP - semelhante, mas com expansão do eixo x (TP = X -> TP = X * TP)

TPR vs TP / PP - tem a mesma aparência, mas com números diferentes nos eixos

O último é Recall vs Precision!

Observe para esses gráficos quaisquer curvas que dominam outras curvas (são melhores ou pelo menos tão altas em todos os pontos) ainda dominam após essas transformações. Como dominação significa "pelo menos tão alto" em todos os pontos, a curva mais alta também tem "pelo menos tão alta" uma Área sob a Curva (AUC), pois inclui também a área entre as curvas. O inverso não é verdadeiro: se as curvas se cruzam, ao contrário do toque, não há dominância, mas uma AUC ainda pode ser maior que a outra.

Todas as transformações são refletidas e / ou ampliadas de maneiras diferentes (não lineares) para uma parte específica do gráfico ROC ou PN. No entanto, apenas o ROC possui uma boa interpretação de Área sob a Curva (probabilidade de que um positivo seja classificado mais alto que negativo - estatística U de Mann-Whitney) e Distância acima da Curva (probabilidade de que uma decisão informada seja tomada em vez de adivinhar - Youden J estatística como a forma dicotômica da informação).

Geralmente, não há necessidade de usar a curva de troca PR e você pode simplesmente ampliar a curva ROC, se detalhes forem necessários. A curva ROC possui a propriedade exclusiva de que a diagonal (TPR = FPR) representa chance, que a Distância acima da linha de chance (DAC) representa Informabilidade ou a probabilidade de uma decisão informada, e a Área sob a Curva (AUC) representa Classificação ou a probabilidade de classificação correta em pares. Esses resultados não são válidos para a curva PR, e a AUC fica distorcida para recall mais alto ou TPR, conforme explicado acima. AUC PR sendo maior não implica que a ROC AUC é maior e, portanto, não implica aumento da classificação (probabilidade de pares +/- classificados serem corretamente previstos - ou seja, com que freqüência ele prediz + ves acima de -v) e não implica aumento da informação (probabilidade de uma previsão informada em vez de um palpite aleatório - ou seja, com que frequência ele sabe o que está fazendo quando faz uma previsão).

Desculpe - sem gráficos! Se alguém quiser adicionar gráficos para ilustrar as transformações acima, isso seria ótimo! Eu tenho muito poucos em meus trabalhos sobre ROC, LIFT, BIRD, Kappa, F-measure, Informedness, etc., mas eles não são apresentados dessa maneira, embora existam ilustrações de ROC vs LIFT vs BIRD vs RP em https : //arxiv.org/pdf/1505.00401.pdf

ATUALIZAÇÃO: Para evitar tentar dar explicações completas em respostas ou comentários longos, aqui estão alguns dos meus artigos "descobrindo" o problema com as trocas de Precision vs Recall inc. F1, obtendo informações e, em seguida, "explorando" os relacionamentos com ROC, Kappa, importância, DeltaP, AUC etc. Esse é um problema em que meus alunos se depararam há 20 anos (Entwisle) e muitos mais descobriram esse exemplo no mundo real de por conta própria, onde havia provas empíricas de que a abordagem de R / P / F / A enviava ao aluno o caminho ERRADO, enquanto a Informação (ou Kappa ou Correlação nos casos apropriados) os enviava ao caminho CERTO - agora em dezenas de campos. Também existem muitos artigos bons e relevantes de outros autores sobre Kappa e ROC, mas quando você usa Kappas versus ROC AUC versus ROC Height (Informedness ou Youden ' s J) é esclarecido nos artigos de 2012 que listo (muitos dos documentos importantes de outros são citados neles). O artigo da Bookmaker de 2003 deriva, pela primeira vez, uma fórmula de informação para o caso multiclasse. O artigo de 2013 deriva de uma versão multiclasse do Adaboost adaptada para otimizar a informação (com links para o Weka modificado que o hospeda e executa).

Referências

1998 O uso atual de estatísticas na avaliação de analisadores de PNL. J Entwisle, DMW Powers - Anais das Conferências Conjuntas sobre Novos Métodos no Processamento da Linguagem: 215-224 https://dl.acm.org/citation.cfm?id=1603935 Citado por 15

2003 Recordação e Precisão versus The Bookmaker. DMW Powers - Conferência Internacional sobre Ciência Cognitiva: 529-534 http://dspace2.flinders.edu.au/xmlui/handle/2328/27159 Citado por 46

Avaliação de 2011: da precisão, recall e medida F ao ROC, conhecimento, marcação e correlação. DMW Powers - Journal of Machine Learning Technology 2 (1): 37-63. http://dspace2.flinders.edu.au/xmlui/handle/2328/27165 Citado por 1749

2012 O problema com o kappa. DMW Powers - Anais da 13ª Conferência da ACL Europeia: 345-355 https://dl.acm.org/citation.cfm?id=2380859 Citado por 63

ROC-ConCert 2012: medição de consistência e certeza com base no ROC. DMW Powers - Congresso da Primavera de Engenharia e Tecnologia (S-CET) 2: 238-241 http://www.academia.edu/download/31939951/201203-SCET30795-ROC-ConCert-PID1124774.pdf Citado por 5

2013 ADABOOK & MULTIBOOK:: Reforço adaptável com correção de chance. DMW Powers- Conferência Internacional ICINCO de Informática em Controle, Automação e Robótica http://www.academia.edu/download/31947210/201309-AdaBook-ICINCO-SCITE-Harvard-2upcor_poster.pdf

https://www.dropbox.com/s/artzz1l3vozb6c4/weka.jar (goes into Java Class Path)
https://www.dropbox.com/s/dqws9ixew3egraj/wekagui   (GUI start script for Unix)
https://www.dropbox.com/s/4j3fwx997kq2xcq/wekagui.bat  (GUI shortcut on Windows)

Citado por 4

David MW Powers
fonte
> "a área abaixo da curva representa uma classificação ou a probabilidade de uma classificação correta em pares", eu acho, é exatamente aí que discordamos - o ROC apenas demonstra a qualidade da classificação no gráfico . No entanto, com a AUC, o PR é um número único que informa imediatamente se é preferível a classificação (ou seja, esse resultado é preferível ao resultado II). O ROC da AUC não possui essa propriedade.
FNL
O resultado de dominação citado por fnl significa que QUANDO DEFINIDO, se uma curva domina no ROC, ocorre no PR e vice-versa, e isso significa que também possui maior área em ambos e, portanto, não há diferença qualitativa entre o ROC e o PR AUC. A citação sobre Ranqueamento (Mann-Whitney U) é um resultado quantitativo bem estabelecido com probabilidade provável (parte de um teste de significância) que foi recomendado de forma independente do ROC, mas que mais tarde foi encontrado como ROC AUC. Da mesma forma, a informação foi originalmente definida de forma independente e, posteriormente, comprovada como correspondendo à altura do ponto de operação do ROC. O PR não tem esses resultados.
David MW Powers
1
Como eu disse antes, isso é apenas uma questão de escalonamento sob condições de dominação ("muito maior" porque multiplicado por um grande número, como explico em detalhes), mas sob condições de não dominação, a AUC PR é enganosa e a AUC ROC é a única que possua uma interpretação probabilística apropriada (Mann-Whitney U ou Rankness), com o caso de ponto operacional único correspondendo a Gini (ou equivalente a J ou Informedness de Youden, após o dimensionamento).
Powers David MW
1
Se considerarmos a AUC de ponto único de operação (SOC) por simplicidade, então Coeficiente de Gini = AUC = (TP / RP + TN / RN) / 2 e Informedness = Youden J = TP / RP + TN / RN - 1 = Sensibilidade + Especificidade -1 = TPR + TNF -1 = Rechamada + Rechamada Inversa - 1 etc. Maximizar qualquer um é equivalente, mas o último é a probabilidade de uma decisão informada (deliberadamente a errada se -ve). Se RN e TN vão ao infinito com TN >> FP, TN / RN -> 1 e cancela, então Informedness = Recall nos casos que você citar. Se, em vez disso, a classe enorme for RP e TP >> FN, TP / RP -> 1 e Informedness = Inverse Recall. Veja refs.
David MW Powers
1
Esta é uma resposta muito útil David Powers. Mas perdoe minha ignorância, quando você diz: 'Geralmente, não há necessidade de usar a curva de troca de relações públicas e você pode simplesmente ampliar a curva ROC se os detalhes forem necessários.', Como exatamente eu faço isso e você poderia dar mais detalhes sobre o que você quer dizer? Isso significa que posso usar uma curva ROC em um caso gravemente desequilibrado? 'Dar um peso maior ao FPR ou TPR produziria uma pontuação ROC da AUC com maiores diferenças de resultados, excelente ponto!' Como faço isso com meu ROC?
Christopher John