Sobes.tech
Senior

# Formuleer en schrijf de definitie van wat roc auc is. # Hoe wordt de roc_auc_score berekend? # Schrijf een functie die roc_auc_score berekent volgens de geschreven definitie. # En voor een willekeurig aantal klassen met een gegeven prioriteitsvolgorde? # Het model werkt als volgt # y_score[i] >= drempel -> y_pred[i] = 1 # y_score[i] < drempel -> y_pred[i] = 0 def test_roc_aur_score(): y_true = [0, 0, 0, 1, 0, 0] y_score = [0.2, 0.4, 0.31, 0.6, 0.3, 0.7] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 0.8 y_true = [0, 1, 0, 0, 0, 1] y_score = [0.7, 0.6, 0.31, 0.31, 0.3, 0.2] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 0.375 y_true = [0, 0, 0, 1, 0, 0] y_score = [0.2, 0.4, 0.31, 0.8, 0.3, 0.7] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 1 y_true = [0, 0, 0, 0, 0, 0] y_score = [0.2, 0.4, 0.31, 0.8, 0.3, 0.7] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 0 # Bonus-test voor meerdere klassen y_true = [0, 1, 0, 0.5, 0, 1] y_score = [0.7, 0.6, 0.31, 0.31, 0.3, 0.2] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 0. y_true = [0, 0.1, 0.2, 0.3, 0.4, 0.6] y_score = [0, 0.1, 0.2, 0.3, 0.4, 0.6] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 1