Я использую sklearn вычислить АУК моей двоичной модели классификации:Как мне получить AUC для отрицательного класса?
roc_auc_score(Y_test_binary, plc.predict_proba(X_test, y_true))
возвращает 0.810477872581. Основываясь на моем понимании, он показывает, насколько хорошо модель идентифицирует положительный класс.
Однако, я также хочу знать другую сторону: я бы хотел рассчитать AUC для отрицательного класса. Как я должен это делать? Должен ли я играть со «средним» параметром?
================================================================================================================================== ==========
Кажется, что «average = None» может «возвращать баллы для каждого класса» в соответствии с документацией. Но она по-прежнему возвращает только одно значение:
>>> import numpy as np
>>> from sklearn.metrics import roc_auc_score
>>> y_true = np.array([0, 0, 1, 1])
>>> y_scores = np.array([0.1, 0.4, 0.35, 0.8])
>>> roc_auc_score(y_true, y_scores, average=None)
0.75
Я ожидаю, что один номер для 1-го класса и один номер для класса 0.
У меня на самом деле была такая же мысль. Но с учетом этого примера: y_true = np.array ([0, 0, 1, 1]), y_scores = np.array ([0,1, 0,1, 0,9, 0,9]). В этом случае, calssifier может отличить оба класса очень хорошо. AUC для класса 1 равен 1, тогда как AUC для класса 0 равно 0. Кажется, что оба должны быть равны 1. – Munichong