def compute_roc(y_test, y_test_proba, nb_classes):
y_test = label_binarize(y_test, classes=range(0, nb_classes))
fpr, tpr, roc_auc = {}, {}, {}
for i in range(nb_classes):
fpr[i], tpr[i], _ = roc_curve(y_test[:, i], y_test_proba[:, i])
roc_auc[i] = auc(fpr[i], tpr[i])
# Compute micro-average ROC curve and ROC area
fpr["micro"], tpr["micro"], _ = roc_curve(y_test.ravel(),
y_test_proba.ravel())
roc_auc["micro"] = auc(fpr["micro"], tpr["micro"])
return roc_auc, fpr, tpr
评论列表
文章目录