Tenho algumas dúvidas sobre qual medida de desempenho usar, área sob a curva ROC (TPR como uma função da FPR) ou área sob a curva de precisão de recall (precisão como uma função de recall).
Meus dados estão desequilibrados, ou seja, o número de instâncias negativas é muito maior que as instâncias positivas.
Estou usando a previsão de saída de weka, uma amostra é:
inst#,actual,predicted,prediction
1,2:0,2:0,0.873
2,2:0,2:0,0.972
3,2:0,2:0,0.97
4,2:0,2:0,0.97
5,2:0,2:0,0.97
6,2:0,2:0,0.896
7,2:0,2:0,0.973
E eu estou usando bibliotecas pROC e ROCR r.
r
machine-learning
roc
precision-recall
auc
MILÍMETROS
fonte
fonte
Respostas:
A pergunta é bastante vaga, por isso vou assumir que você deseja escolher uma medida de desempenho apropriada para comparar diferentes modelos. Para uma boa visão geral das principais diferenças entre as curvas ROC e PR, você pode consultar o seguinte artigo: A Relação entre Precision-Recall e ROC Curves, de Davis e Goadrich .
Para citar Davis e Goadrich:
Curvas ROC plotam FPR vs TPR. Para ser mais explícito: Curvas de PR plotam precisão versus recall (FPR), ou mais explicitamente: recall=
A precisão é diretamente influenciada pelo (s) saldo de classe, uma vez que é afectada, ao passo que só depende TPR positivos. É por isso que as curvas ROC não capturam esses efeitos.FP
As curvas de recuperação de precisão são melhores para destacar as diferenças entre os modelos para conjuntos de dados altamente desequilibrados. Se você deseja comparar modelos diferentes em configurações desequilibradas, a área sob a curva PR provavelmente exibirá diferenças maiores que a área sob a curva ROC.
Dito isto, as curvas ROC são muito mais comuns (mesmo que sejam menos adequadas). Dependendo do seu público, as curvas ROC podem ser a língua franca, portanto, usá-las é provavelmente a escolha mais segura. Se um modelo domina completamente outro no espaço PR (por exemplo, sempre tem maior precisão em toda a faixa de recall), ele também domina no espaço ROC. Se as curvas se cruzarem em um dos espaços, elas também se cruzarão no outro. Em outras palavras, as principais conclusões serão semelhantes, independentemente da curva usada.
Propaganda vergonhosa . Como um exemplo adicional, você pode dar uma olhada em um dos meus trabalhos em que eu relato as curvas ROC e PR em um cenário desequilibrado. A Figura 3 contém curvas ROC e PR para modelos idênticos, mostrando claramente a diferença entre os dois. Para comparar a área sob o PR versus a área sob ROC, você pode comparar as tabelas 1-2 (AUPR) e tabelas 3-4 (AUROC), onde é possível ver que o AUPR mostra diferenças muito maiores entre os modelos individuais que o AUROC. Isso enfatiza a adequação das curvas PR mais uma vez.
fonte
As curvas ROC plotam TPR no eixo y e FPR no eixo x, mas depende do que você deseja retratar. A menos que haja algum motivo para traçá-lo de maneira diferente em sua área de estudo, as curvas ROC TPR / FPR são o padrão para mostrar trocas operacionais e acredito que elas seriam muito bem recebidas.
A Precisão e a Rechamada, por si só, podem ser enganosas, pois não representam verdadeiros negativos.
fonte
Considero a maior diferença no ROC e no PR AUC o fato de o ROC estar determinando quão bem o seu modelo pode "calcular" a classe positiva E a classe negativa em que, como o PR AUC, na verdade, está apenas olhando para a sua classe positiva. Portanto, em uma situação de classe equilibrada e em que você se preocupa com classes negativas e positivas, a métrica ROC AUC funciona muito bem. Quando você tem uma situação desequilibrada, é preferível usar a AUC de RP, mas lembre-se de que isso só determina o quão bem o seu modelo pode "calcular" a classe positiva!
fonte