Sobes.tech
Senior

# ROC AUC nima ekanligini formulalashtiring va ta'rifini yozing. # ROC AUC balli qanday hisoblanadi? # Yozilgan ta'rifga muvofiq roc_auc_score ni hisoblaydigan funktsiya yozing. # Va tasodifiy sonli sinflar uchun va berilgan prioritet tartibida? # Model quyidagicha ishlaydi # y_score[i] >= threshold -> y_pred[i] = 1 # y_score[i] < threshold -> 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 sinovlar ko'p sinflar uchun 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