Создать отрицательное прогнозирующее значение, используя cross_val_score в sklearn для оценки производительности модели - PullRequest
0 голосов
/ 11 апреля 2019

Как часть оценки метрик модели, я хотел бы использовать cross_val_score в sklearn, чтобы сгенерировать отрицательное прогностическое значение для модели.

В приведенном ниже примере я установил параметр 'скоринг' в cross_val_score, чтобы вычислить и вывести 'точность' (среднее и стандартное отклонения от 10-кратной перекрестной проверки) для положительного прогностического значения модели:

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_score
log=LogisticRegression()    
log_prec = cross_val_score(log, x, y, cv=10, scoring='precision')
print("PPV(mean, std): ", np.round(log_prec.mean(), 2), np.round(log_prec.std(), 2))

Как я могу использовать что-то вроде приведенной выше строки кода для генерации отрицательного прогнозирующего значения / NPV (вероятности того, что прогнозируемый негатив будет истинным негативом) из метода cross_val_score?

sklearn предоставляет множество опций скоринга (например, roc_auc, отзыв, точность, F1 и т. Д.), Но, к сожалению, не один для NPV ...

1 Ответ

0 голосов
/ 15 апреля 2019

Для проблемы двоичной классификации вы можете инвертировать определение метки. Тогда PPV будет соответствовать NPV у вас оригинальной задачи

...