Парадокс ансамблей: почему «слабые» модели иногда побеждают «сильные»

от автора

TL;DR: В ансамблевом прогнозировании важнее не индивидуальное качество моделей, а разнообразие их ошибок. Эксперимент показывает: пул из «худших» по отдельности моделей даёт лучшую точность ансамбля, чем пул из «лучших».


Недавно я провёл эксперимент, который противоречит интуиции большинства практиков: пул из индивидуально более слабых моделей стабильно превосходит пул из более качественных моделей при объединении в ансамбль.

🔬 Методология эксперимента

  • Данные: финансовые временные ряды цены на пшеницу FOB Черное море, фундаментальные и макро факторы

  • Горизонт прогноза: 1–12 недель.

  • Модели: 18 базовых алгоритмов (Holt-Winters, Prophet, RF, Ridge, KNN, GB) с разными гиперпараметрами и глубиной обучающих периодов.

  • Метрики: MAE, MAPE, Accuracy определения направления тренда.

  • Ансамблирование: Lasso регрессия

📌 Сравнение производится между пулами моделей с разным интервалом обучения

🔹 Шаг 1: Модели переобучаются на каждом новом наблюдении (малый шаг обновления, частое обучение).
🔹 Шаг 20: Модели переобучаются раз в 20 периодов (больший шаг, редкие обновления).

Делюсь подробностями с визуализациями. 👇


📊 Слайд 1 — Главный вывод и распределение ошибок

Важно не индивидуальное качество модели, а её предельный вклад в ансамбль.

  • Ансамбль из Шага 20 снизил MAE на 46% (с 15.7 до 8.5);

  • Ансамбль из Шага 1 дал улучшение всего на 18% (с 11.6 до 9.5).

По индивидуальным метрикам Шаг 1 объективно лучше (медианная MAE 11.6 против 15.7, точность тренда 55% против 52.5%). Если отбирать модели только по этим цифрам, Шаг 20 никогда не попадёт в продакшн. И это была бы ошибка.


📈 Слайд 2 — Качество по горизонту прогноза

Шаг 20 выигрывает на всех горизонтах прогноза (1–12 недель) без исключений.

Разрыв увеличивается на средних и длинных горизонтах, где критична корреляция ошибок. Ансамбль Шага 20 достиг 65.7% точности тренда — выше, чем любая отдельная модель из Шага 1.

💡 На длинных горизонтах разнообразие ошибок становится важнее, чем «чистота» отдельного прогноза.


🔗 Слайд 3 — Механика: структура корреляций ошибок

⚠️ Данные на этом слайде синтетические, сгенерированы для иллюстрации структуры ошибок.

Инсайт:

  • Шаг 1: Модели сходятся к схожим локальным минимумам. Ошибки сильно коррелированы. Усреднение коррелированных ошибок даёт примерно ту же ошибку.

  • Шаг 20: Редкие обновления заставляют модели «перепрыгивать» по пространству параметров, попадая в разнообразные минимумы. Ошибки слабо коррелированы и компенсируют друг друга при усреднении.


🎯 Слайд 4 — Миграция в пространстве качества

Диаграмма рассеяния показывает траекторию каждой модели от Шага 1 к Шагу 20.

⭐ Звёздами отмечены финальные ансамбли. Обратите внимание: Ансамбль Ш20 смещается в «идеальный» левый нижний угол (низкие MAPE и MAE), хотя отдельные модели Шага 20 (квадраты) разбросаны широко.

👉 Вывод: Разнообразие ошибок — это полноценная целевая переменная при построении ансамблей.


📊 Слайд 5 — Итоговый прирост: пул против ансамбля

Сводные столбчатые диаграммы показывают, насколько ансамбль улучшает метрики относительно простого усреднения по пулу.


🛠 Практические рекомендации

  • Не отбирайте модели для ансамбля только по индивидуальным метрикам. Модель с худшей MAE может быть идеальным «дополнением» к пулу, если её ошибки некоррелированы с остальными.

  • Используйте жадный отбор ансамбля: итеративно добавляйте ту модель, которая даёт максимальное улучшение валидационной метрики уже собранного ансамбля.

  • Слабая модель заслуживает места в пуле, если она «ошибается иначе». Разнообразие > качество, когда речь идёт об ансамблях.

  • Контролируйте корреляцию ошибок. Если все модели ошибаются одинаково — усреднение не поможет.

  • Экспериментируйте с частотой обновления. Иногда «недообученные» или реже обновляемые модели вносят больше разнообразия, чем идеально настроенные.


💬 Вместо заключения

Этот эксперимент напоминает: в машинном обучении интуиция часто обманывает. То, что выглядит «хуже» на уровне отдельной модели, может стать ключевым элементом сильного ансамбля.

Если вы строите прогнозные системы — не гонитесь за одной идеальной моделью. Собирайте пул разнообразных «ошибающихся по-разному» алгоритмов, и ансамбль сделает остальное.

🔄 А как вы отбираете модели для ансамблей? Делитесь опытом в комментариях.

Автор: Юрий Подмогаев

Материал предоставлен исключительно в информационных целях и не должен использоваться как основание для принятия коммерческих решений.

ссылка на оригинал статьи https://habr.com/ru/articles/1022318/