Разбор

ROC AUC в машинном обучении: что показывает площадь под кривой

Считаем ROC AUC по четырём парам объектов и отделяем качество порядка от выбора рабочего порога. Разбираем ограничения на редких событиях.

• • 2 мин чтения

ROC AUC оценивает, насколько хорошо модель упорядочивает положительные и отрицательные объекты по своей численной оценке. Для расчёта нужны оценки риска или уверенности, а не только готовые категории после выбора порога.

Показатель не сообщает, сколько предупреждений получит сотрудник при конкретной настройке. Рабочий порог и последствия ложных срабатываний проверяются отдельно.

Пример с четырьмя объектами

Возьмём вымышленную задачу поиска задержек. У двух действительно задержанных заказов модель выдала оценки 0,8 и 0,6. У двух обычных - 0,7 и 0,1. Большая оценка означает больший риск положительного события.

Сравним каждый положительный объект с каждым отрицательным. Всего получится четыре пары:

Положительная оценкаОтрицательная оценкаПравильный порядок
0,80,7Да
0,80,1Да
0,60,7Нет
0,60,1Да

Три пары из четырёх упорядочены правильно, поэтому ROC AUC в этом примере равен 0,75. В стандартной парной трактовке совпавшие оценки учитываются как половина правильного порядка.

Пример показывает механику, а не надёжность оценки: четыре объекта слишком мало для содержательного вывода о рабочей модели.

Почему AUC не выбирает порог

При пороге 0,65 в нашем примере положительными станут оценки 0,8 и 0,7. Найдена одна задержка, одна пропущена, одно предупреждение оказалось ложным. Precision и recall для этого порога равны 0,5.

Можно выбрать другой порог и получить другое число ошибок. Значение AUC для тех же исходных оценок при этом описывает их порядок, а не отдельный вариант решения.

Поэтому две модели с близкой AUC могут по-разному работать в нужной части диапазона. Если сотрудник способен проверить лишь небольшую долю заказов, качество верхних позиций требует отдельной оценки.

Что означает направление оценки

Для корректного расчёта нужно согласовать положительный класс и смысл числового выхода. Если большая оценка означает надёжность доставки, а в расчёте положительным классом названа задержка, порядок будет интерпретирован наоборот.

В scikit-learn roc_auc_score принимает оценки для соответствующей постановки задачи. При нескольких классах или выходах нужно дополнительно проверить формат входов и способ усреднения.

Готовые метки 0 и 1 после порога теряют информацию о порядке исходных оценок. Использовать их как единственный вход для сравнения ранжирующей способности моделей обычно не соответствует цели такого анализа.

Ограничения на редких событиях

При небольшой доле положительного класса даже сравнительно малая доля ложных срабатываний среди отрицательных объектов может дать много лишних предупреждений. Хорошая ROC AUC сама по себе не гарантирует приемлемую нагрузку.

Рядом покажите precision, recall, число ошибок и частоту события. Оценка вероятностей также требует отдельной проверки: хорошее ранжирование не доказывает правильность абсолютных чисел риска.

Сравнивайте на одной независимой выборке, сохраняйте временные и групповые ограничения разделения. Общий порядок выбора показателей разобран в статье о метриках машинного обучения.

Источники

Обсуждение

    Пока без комментариев. Будьте первым.

    Войдите, чтобы отправить комментарий

    Вы сможете комментировать статьи, сохранять материалы

    или войдите по email

    Бесплатная диагностика · 30 минут · без обязательств

    Маркетинг работает, но продажи не растут?

    Отвечу на 3–5 вопросов о вашем бизнесе — и мы вместе разберём, где именно теряются клиенты и что с этим делать.

    Без продаж. Без навязчивых звонков.