ROC curve
forkortelse for Receiver Operating Characteristic curve
En grafisk fremstilling af en binær klassifikationsmodels ydeevne ved at plotte sand positiv rate mod falsk positiv rate ved forskellige tærskelværdier.
Kort fortalt
ROC-kurven viser, hvor god en model er til at skelne mellem to klasser, ved at afveje gevinsten ved at finde sande positive mod risikoen for falske alarmer.
- Kategori
- metrik
- Niveau
- øvet
- Udtale
- /ɑːr oʊ siː kɜːrv/
Betydninger
1- 1
En kurve der afbilder den sande positive rate (sensitivitet) mod den falske positive rate (1 - specificitet) for et binært klassifikationssystem, når diskriminationstærsklen varieres.
- ROC-kurven for den nye model ligger over baseline, hvilket indikerer god klassifikationsevne.
- Arealet under ROC-kurven (AUC) er et mål for modellens samlede ydeevne på tværs af alle tærskelværdier.
Hvornår bruges det
ROC-kurven bruges ofte til at vælge den optimale tærskelværdi for en klassifikationsmodel og til at sammenligne forskellige modellers ydeevne. Arealet under kurven (AUC) opsummerer ydeevnen som et enkelt tal.
Kodeeksempel
from sklearn.metrics import roc_curve, auc
import matplotlib.pyplot as plt
fpr, tpr, thresholds = roc_curve(y_true, y_scores)
roc_auc = auc(fpr, tpr)
plt.plot(fpr, tpr, label=f'ROC curve (AUC = {roc_auc:.2f})')
plt.plot([0, 1], [0, 1], 'k--')
plt.xlim([0.0, 1.0])
plt.ylim([0.0, 1.05])
plt.xlabel('False Positive Rate')
plt.ylabel('True Positive Rate')
plt.title('Receiver Operating Characteristic')
plt.legend(loc='lower right')
plt.show()Eksempel på hvordan man beregner og plotter en ROC-kurve med scikit-learn.
Oprindelse
ROC står for 'Receiver Operating Characteristic', oprindeligt udviklet under 2. verdenskrig til at analysere radarsignalers evne til at skelne signal fra støj.
Afledte ord
1Kilder
2- Fawcett, T. (2006). An introduction to ROC analysis. Pattern Recognition Letters, 27(8), 861-874.
- Hanley, J. A., & McNeil, B. J. (1982). The meaning and use of the area under a receiver operating characteristic (ROC) curve. Radiology, 143(1), 29-36.