Выбор ответа Junior Несбалансированные классы спрашивают часто обновлено
Первое действие при дисбалансе
Вопрос
Классы 1:99. Что разумно сделать в первую очередь?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Выбрать правильную метрику и порог, а не сразу менять данные. Многие модели (бустинг, логрегрессия) нормально учатся на несбалансированных данных, проблема чаще в метрике (accuracy) и пороге 0.5.
Варианты ответа
- Сразу сделать SMOTE до баланса 50:50 на всех данных
- Удалить 98% объектов мажоритарного класса, чтобы выровнять доли
- Заменить модель на нейросеть с softmax и большим батчем
- Выбрать правильную метрику и порог, а не сразу менять данныеправильный ответ
Разбор
Многие модели (бустинг, логрегрессия) нормально учатся на несбалансированных данных, проблема чаще в метрике (accuracy) и пороге 0.5. Начинают с PR-AUC, recall при нужной precision и подбора порога. Веса классов и семплирование это следующие шаги, их эффект проверяют на валидации с исходным распределением.
- SMOTE до 50:50 часто не помогает и искажает вероятности.
- Агрессивный undersampling выбрасывает информацию.
- Тип модели не решает проблему метрики.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.