Какие подходы можно использовать для улучшения качества модели после достижения базового результата
Что проверяют
Есть ли у вас система или вы перебираете модели и гиперпараметры наугад. Следом обычно спрашивают, как вы убедились, что прирост метрики настоящий, а не шум валидации или утечка.
Как отвечать
Покажите порядок работы, где дешёвое и выгодное идёт первым:
- проверка валидации: прежде чем улучшать, убедиться, что схема честная. Для временных рядов разбиение по времени, для пользовательских данных группировка (
GroupKFold), никаких признаков из будущего. Метрика должна отвечать задаче бизнеса; - анализ ошибок: разобрать, на каких объектах модель ошибается сильнее всего. Там часто всплывают грязная разметка, дубли или сегмент, которого мало в обучении;
- данные: чистка меток, доразметка трудных примеров, новые источники. Обычно даёт больше, чем смена алгоритма;
- признаки: агрегаты по пользователю и времени, взаимодействия, кодирование категорий. На табличных данных основной прирост здесь;
- модель и гиперпараметры: градиентный бустинг (CatBoost, LightGBM, XGBoost) для таблиц, подбор через Optuna вместо полного перебора по сетке;
- ансамбли: усреднение или стекинг моделей, чьи ошибки слабо коррелируют;
- дисбаланс и порог: веса классов, подбор порога под нужный precision или recall, калибровка вероятностей;
- предобученные модели: для текста и изображений дообучение готовой модели почти всегда сильнее обучения с нуля.
Каждый эксперимент фиксируйте в трекере, например MLflow, и сравнивайте с бейзлайном на одной и той же валидации.
Где спотыкаются
Сразу бросаются подбирать гиперпараметры. Это обычно даёт небольшой прирост, а исправленная утечка или разметка меняет картину целиком.
Радуются приросту в третьем знаке, не посмотрев на разброс метрики между фолдами. Если прирост меньше стандартного отклонения, это шум.
Много раз принимают решения по одной отложенной выборке и незаметно переобучаются на неё. Нужна финальная выборка, которую не трогают до самого конца.