Стратегия для редкого класса
Вопрос
Задача с 0.2% положительных (например, мошенничество). Расскажите вашу стратегию от данных до порога.
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Метрики: PR-AUC, recall при фиксированной precision, стоимость ошибок
Разбиение со стратификацией и честное распределение в валидации
Модель: бустинг с весами классов или без, сравнить
Семплирование только внутри фолда, калибровка после
Порог по бизнес-стоимости и ёмкости проверки, мониторинг
Что могут спросить следом
- Когда undersampling реально полезен?
- Как быть, если положительных всего 50 примеров?
Разбор
Сначала метрика: accuracy бесполезна, смотрю PR-AUC для сравнения моделей и recall при допустимой доле ложных тревог или precision в топ-N, если алерты разбирают люди. Разбиение стратифицированное, а если есть время и пользователи, то по времени и группам; валидация остаётся с реальным распределением. Модель обычно градиентный бустинг: сравниваю вариант без весов, с весами классов и с undersampling. Undersampling полезен при огромных данных, когда нужно ускорить обучение, его делаю только на трейне фолда. Если вероятности нужны для расчёта денег, калибрую на отложенной выборке с исходным балансом. Порог выбираю по ожидаемым потерям и по пропускной способности команды проверки. Когда положительных совсем мало, усиливаю признаки, пробую поиск аномалий и полуавтоматическую разметку, а в проде слежу за дрейфом: мошенники меняют поведение.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.