Вместо того, чтобы брать точные метки классов для оценки модели, всегда лучше использовать вероятности, потому что обычно метка класса определяется на основе порога 0,5. Ну и что, что почти все значения вероятности составляют всего 0,51 для положительного класса. Модель не совсем точна, но мы классифицируем ее как положительную. Поэтому, чтобы лучше понять производительность модели, мы берем значения вероятности.

А теперь, как рассчитывается roc_auc?

Вот как: сначала мы получаем все значения вероятности из модели, сортируем их, и мы берем каждое значение вероятности в качестве порога и берем TPR и FPR. Мы узнаем, что они собой представляют через некоторое время. Наносим полученные значения TPR и FPR для всех пороговых значений. Это называется кривой ROC.

Так что же такое TPR и FPR, как выглядит кривая и как на ее основе определить производительность модели?

TPR — это доля истинно положительных результатов = TP/(TP+FN), где TP — истинно положительные результаты, FN — ложноотрицательные результаты. Это означает, что из всех положительных моментов, сколько из них предсказано правильно.

FPR — это доля ложноположительных результатов = FP/(TN+FP), где FP — ложноположительный результат, TN — истинно отрицательный результат.

В идеале кривая ROC будет выглядеть так:

Идеальный случай, когда порог уменьшается от 1 до 0, TPR продолжает увеличиваться, но FPR равен 0. А когда порог становится меньше (‹0,5), тогда FPR начинает увеличиваться, сохраняя TPR постоянным. Например: мы делаем,

если вероятность>0,4: предсказать->1, чего быть не должно, поэтому ложные срабатывания начинают расти. Что означает увеличение ложноположительного результата, истинный негатив уменьшается.

Если оценка roc_auc равна 0,5, это означает, что модель прогнозирует случайным образом. 0 означает, что модель предсказывает противоположности, то есть положительные стороны как отрицательные, и наоборот. 1 означает, что модель демонстрирует наилучшие характеристики.

Эта оценка также поможет нам определить порог для нашей классификации. Потому что 0,5 не всегда может быть лучшим порогом. Поэтому мы выбираем пороговое значение с максимальным TPR и минимальным FPR.