Разбор
ROC AUC в машинном обучении: что показывает площадь под кривой
Считаем ROC AUC по четырём парам объектов и отделяем качество порядка от выбора рабочего порога. Разбираем ограничения на редких событиях.
ROC AUC оценивает, насколько хорошо модель упорядочивает положительные и отрицательные объекты по своей численной оценке. Для расчёта нужны оценки риска или уверенности, а не только готовые категории после выбора порога.
Показатель не сообщает, сколько предупреждений получит сотрудник при конкретной настройке. Рабочий порог и последствия ложных срабатываний проверяются отдельно.
Пример с четырьмя объектами
Возьмём вымышленную задачу поиска задержек. У двух действительно задержанных заказов модель выдала оценки 0,8 и 0,6. У двух обычных - 0,7 и 0,1. Большая оценка означает больший риск положительного события.
Сравним каждый положительный объект с каждым отрицательным. Всего получится четыре пары:
| Положительная оценка | Отрицательная оценка | Правильный порядок |
|---|---|---|
| 0,8 | 0,7 | Да |
| 0,8 | 0,1 | Да |
| 0,6 | 0,7 | Нет |
| 0,6 | 0,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, число ошибок и частоту события. Оценка вероятностей также требует отдельной проверки: хорошее ранжирование не доказывает правильность абсолютных чисел риска.
Сравнивайте на одной независимой выборке, сохраняйте временные и групповые ограничения разделения. Общий порядок выбора показателей разобран в статье о метриках машинного обучения.
Есть вопрос по теме?
Разберу вашу ситуацию и предложу конкретный шаг
Источники
Читайте также
Канал «Лёха Маркетолог»
Практика без воды: кейсы, инсайты, разборы. 1–2 поста в неделю.
Пока без комментариев. Будьте первым.