Найти тему
24 подписчика

Как агрегировать прогнозы


Давно у нас не было лонгридов на канале - надо исправляться! Сегодня поговорим об агрегировании прогнозов.

Вообще, это достаточно частая задача: как из набора разных прогнозов (разными моделями или от разных экспертов) составить один как можно более хороший прогноз.

Простых подходов несколько:
- Просто взять среднее из всех прогнозов (и, кстати, многие считают, что это едва ли не лучшее решение - потому что простое и по качеству зачастую не хуже более сложных схем)
- Взять средневзвешенное, где веса пропорциональны качеству моделей. К примеру, можно посчитать ошибку прогнозов каждой модели на исторических данных и в качестве весов взять величину, обратную к этой исторической ошибке. Ну, и отнормировать, чтобы сумма весов стала равна единице. Тоже достаточно распространённый подход.

Но есть подходы и значительно более сложные. К примеру, в одной свежей работе предлагается схема следующего вида:
1) Формируем список переменных, которые могут влиять на качество прогноза (в их число могут входить и объясняющие переменные, при помощи которым мы строим наш основной прогноз, но это не обязательно)
2) Для каждой модели / каждого эксперта оцениваем, что (из списка из предыдущего пункта) влияет на качество его прогноза
3) Зная значения "переменных качества прогноза" мы можем спрогнозировать, насколько точной будет та или иная модель / тот или иной эксперт в текущий момент, и использовать это знание для агрегации прогнозов.

Конкретно в упомянутой работе предлагается ещё более интересная идея: в каком-то смысле совместить пункты 2 и 3. Вместо того, чтобы оценивать дополнительные модели в пункте 2, можно сделать всё непараметрически: просто найти в прошлом периоды времени, максимально "похожие" на текущий (с точки зрения значения "переменных качества прогноза") и посчитать, какая в те периоды была средняя ошибка прогноза. И дальше уже агрегировать.

Результаты проверки этой процедуры на реальных данных, честно говоря, не вау, но всё же какого-то прироста точности добиться получается. А это уже неплохо!

#лонгрид
#статьи
1 минута