2015-12-11 5 views
0

J'ai quelques valeurs de p que j'utilise pour marquer. Chaque probabilité donne un vrai-positif ou faux-positif. L'idée est de tracer la performance d'un test statistique. Cependant, la courbe ROC que je génère n'a aucun sens. Veuillez copier et coller le code pour le reproduire.ROCR - courbe ROC bizarre

code:

library(ROCR) 
scores <- c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0.999999999999998,0.999999999999982,0.999999999999943,0.999999999999782,0.999993691351422,0.999930748187179,0.999929270075887,0.995652667490613,0.993101105927916,0.983764828478107,0.962452067884637,0.908463667964783) 
labels <- c(2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,2,1,1,2,2,2,2,2,2,2,2,2,1,2,2,1,2,2,2,2) 
orders <- c(1, 2) 

pred <- prediction(scores, labels, label.ordering=orders) 
perf <- performance(pred, "tpr","fpr") 

plot(perf, colorize=TRUE, cex.lab=2, cex.main=2, lwd=10) 

enter code here

+0

Qu'est-ce qui n'a pas de sens? – MrFlick

+0

@MrFlick Chaque TP doit monter verticalement. Chaque PF devrait aller horizontalement par un. L'intrigue montre une diagonale. – SmallChess

+0

Cette description ne correspond pas à ce que je considère comme une courbe ROC. Un point est tracé pour chaque point de coupure possible pour la catégorisation, puis une ligne est tracée entre eux. Vous avez très peu de valeurs distinctes dans les «scores». Cela n'a pas beaucoup de sens. – MrFlick

Répondre

0

A propos de ROC: ROC Curve montre le compromis entre TFP et TPR pour toutes les valeurs de seuil possibles, de sorte que l'on peut regarder la courbe et Choisissez la meilleure valeur de seuil possible. Cela dépend entièrement de l'analyse de rentabilisation que vous essayez de résoudre. Voulez-vous minimiser FPR ou TPR ou autre?

A propos de la question: Dans ce cas, la ligne diagonale implique qu'il n'y a pas compromis entre TPR et TFP (jusqu'à certain point). La mise sous silence d'une observation, qu'elle soit positive ou non, est la même, ce qui est tout à fait possible. Mais est-ce contre l'intuition? Cela dépend de l'analyse de rentabilisation que vous essayez de résoudre.