objectif
Tracer ou calculer ROC AUC et courbe précision-rappel.
code minimal
from sklearn.metrics import roc_auc_score, precision_recall_curve, auc
import numpy as np
y = np.array([0,0,1,1])
p = np.array([0.1,0.4,0.35,0.8])
roc = roc_auc_score(y, p)
prec, rec, th = precision_recall_curve(y, p)
prauc = auc(rec, prec)
print(round(roc,2) <= 1.0 and prauc <= 1.0)
utilisation
from sklearn.metrics import roc_curve
import numpy as np
fpr, tpr, th = roc_curve([0,1], [0.1, 0.9])
print(len(th) == 3)
variante(s) utile(s)
from sklearn.metrics import average_precision_score
import numpy as np
print(average_precision_score([0,1,1],[0.2,0.8,0.6]) <= 1.0)
notes
- PR AUC plus informative en classes déséquilibrées.