Что делать, если классы не сбалансированы?
Я бы тут уточнил вопрос: кому и когда делать? Причины дисбаланса бывают разные, иногда он устраним на этапе постановки задачи, иногда он совсем неустраним и надо продумать подходящую метрику качества, а если уже всё продумано, то часто ничего не надо делать.
Впрочем, совсем полный ответ на этот вопрос должен затронуть и особенности локального тестирования: при разбиении на фолды надо сохранять пропорцию классов, т.н. StratifiedKFold.
Есть куча искусственных приёмов для восстановления баланса классов, например SMOTE. Но как показывает практика, лучше с ними не связываться, гораздо важнее подобрать правильную модель и корректно преобразовать её результаты (например, с помощью калибровки). В крайнем случае, можно использовать пересемплирование (resampling) данных, например, дублирование объектов малого класса. Для желающих сказать побольше при ответе на этот вопрос — вот ссылка.
@machinelearning_interview
Я бы тут уточнил вопрос: кому и когда делать? Причины дисбаланса бывают разные, иногда он устраним на этапе постановки задачи, иногда он совсем неустраним и надо продумать подходящую метрику качества, а если уже всё продумано, то часто ничего не надо делать.
Впрочем, совсем полный ответ на этот вопрос должен затронуть и особенности локального тестирования: при разбиении на фолды надо сохранять пропорцию классов, т.н. StratifiedKFold.
Есть куча искусственных приёмов для восстановления баланса классов, например SMOTE. Но как показывает практика, лучше с ними не связываться, гораздо важнее подобрать правильную модель и корректно преобразовать её результаты (например, с помощью калибровки). В крайнем случае, можно использовать пересемплирование (resampling) данных, например, дублирование объектов малого класса. Для желающих сказать побольше при ответе на этот вопрос — вот ссылка.
@machinelearning_interview