В предыдущем разделе был представлен набор показателей модели, рассчитанных по единому пороговому значению классификации. Но если вы хотите оценить качество модели по всем возможным пороговым значениям, вам потребуются разные инструменты.
Рабочая характеристика приемника (ROC)
Кривая ROC — это визуальное представление производительности модели по всем пороговым значениям. Длинная версия названия, рабочие характеристики приемника, является пережитком радарного обнаружения времен Второй мировой войны.
Кривая ROC строится путем расчета частоты истинно положительных результатов (TPR) и частоты ложных срабатываний (FPR) при каждом возможном пороге (на практике, через выбранные интервалы), а затем построения графика зависимости TPR от FPR. Идеальная модель, которая при некотором пороге имеет TPR 1,0 и FPR 0,0, может быть представлена либо точкой в (0, 1), если все остальные пороги игнорируются, либо следующим:
Площадь под кривой (AUC)
Площадь под кривой ROC (AUC) представляет собой вероятность того, что модель, если ей предоставлен случайно выбранный положительный и отрицательный пример, будет оценивать положительный результат выше, чем отрицательный.
Представленная выше идеальная модель, содержащая квадрат со сторонами длиной 1, имеет площадь под кривой (AUC) 1,0. Это означает, что существует 100% вероятность того, что модель правильно ранжирует случайно выбранный положительный пример выше, чем случайно выбранный отрицательный пример. Другими словами, глядя на разброс точек данных ниже, AUC дает вероятность того, что модель разместит случайно выбранный квадрат справа от случайно выбранного круга, независимо от того, где установлен порог.
Говоря более конкретно, классификатор спама с AUC 1,0 всегда присваивает случайному спам-письму более высокую вероятность быть спамом, чем случайному законному сообщению. Фактическая классификация каждого электронного письма зависит от выбранного вами порога.
Для бинарного классификатора модель, которая работает точно так же, как случайные предположения или подбрасывание монеты, имеет ROC, который представляет собой диагональную линию от (0,0) до (1,1). AUC равен 0,5, что соответствует 50% вероятности правильного ранжирования случайного положительного и отрицательного примера.
В примере с классификатором спама классификатор спама с AUC 0,5 только в половине случаев присваивает случайному спам-письму более высокую вероятность быть спамом, чем случайному законному сообщению.
(Дополнительно, расширенно) Кривая точного отзыва
AUC и ROC хорошо подходят для сравнения моделей, когда набор данных примерно сбалансирован между классами. Когда набор данных несбалансирован, кривые точного отзыва (PRC) и площадь под этими кривыми могут обеспечить лучшую сравнительную визуализацию производительности модели. Кривые точности отзыва создаются путем нанесения точности на ось Y и полноты по оси X для всех пороговых значений.
AUC и ROC для выбора модели и порога
AUC — полезный показатель для сравнения производительности двух разных моделей, если набор данных примерно сбалансирован. (См. кривую точного отзыва выше для несбалансированных наборов данных.) Модель с большей площадью под кривой, как правило, является лучшей.
Точки на кривой ROC, ближайшие к (0,1), представляют собой диапазон наиболее эффективных пороговых значений для данной модели. Как обсуждалось в разделах «Пороги », «Матрица путаницы» и «Выбор метрики и компромиссов» , выбираемое вами пороговое значение зависит от того, какая метрика наиболее важна для конкретного варианта использования. Рассмотрим точки A, B и C на следующей диаграмме, каждая из которых представляет собой порог:
Если ложные срабатывания (ложные тревоги) обходятся очень дорого, возможно, имеет смысл выбрать порог, который дает более низкий FPR, например, в точке A, даже если TPR снижен. И наоборот, если ложноположительные результаты обходятся дешево, а ложноотрицательные (пропущенные истинные положительные результаты) обходятся очень дорого, порог для точки C, который максимизирует TPR, может быть предпочтительнее. Если затраты примерно эквивалентны, точка B может предложить лучший баланс между TPR и FPR.
Вот кривая ROC для данных, которые мы видели раньше:
Упражнение: Проверьте свое понимание.
(Необязательно, для продвинутых пользователей) Бонусный вопрос
Представьте себе ситуацию, когда лучше позволить спаму попасть в папку «Входящие», чем отправлять важное для бизнеса электронное письмо в папку со спамом. Вы подготовили классификатор спама для ситуации, когда положительный класс — это спам, а отрицательный класс — не спам. Какая из следующих точек на кривой ROC вашего классификатора предпочтительнее?