← retour aux snippets

sklearn: ROC AUC et PR curve

Tracer ou calculer ROC AUC et courbe précision-rappel.

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.