StatSpace
1.54K subscribers
2.31K photos
1.82K links
Канал аналитической группы StatSpace. Статистика, аналитика, прогнозы

Для обратной связи:
@StatSpace_feedback_bot

Наш Дзен:
zen.yandex.ru/id/5f7389012c0c1b44f672424f
Download Telegram
Наукастинг ВВП: показатели

#лонгрид

В этом третьем лонгриде про наукастинг ВВП мы поговорим про переменные, с помощью которых можно "наукастить" ВВП.

Главное требование к этим объясняющим переменным, как уже упоминалось в предыдущих лонгридах, - это оперативность. Они должны выходить раньше, чем ВВП. Чем раньше публикуется показатель, тем он потенциально полезнее, потому что позволяет оценить текущий ВВП с максимальной оперативностью. С другой стороны, даже очень хороший и близкий к ВВП показатель, публикующийся с задержкой на 2-3 дня меньше, чем сам ВВП, никакой пользы для наукастинга не принесёт.

Самые очевидные кандидаты здесь - это показатели, доступные в реальном времени: данные фондовых бирж (скорее индексы, чем цены отдельных акций, но для разных стран возможны разные интересные особенности) и данные товарных бирж (цены на нефть/газ/другие сырьевые товары).

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

Ещё один оперативный и очень классический показатель, постоянно использующийся в наукастинге - это индекс индекс деловой активности PMI. Строится он на основе опросных данных и публикуется обычно почти сразу после окончания соответствующего месяца. PMI или другие (в целом аналогичные) индексы деловой активности считаются для многих стран мира (включая Россию) и часто очень неплохо работают, особенно для стран с более "сложной" структурой экономики.
Об автоматическом (или около того) прогнозировании

#лонгрид

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

Условие домашней работы было достаточно простым - нужно было взять любой ряд цен из Pink Sheet Всемирного Банка (месячные ряды цен на разные биржевые продукты, от нефти до креветок) и построить его прогноз рядом простых авторегрессионных (когда текущее значения ряда определяется предыдущими значениями) моделей, сделать это много раз и посчитать среднюю точность таких прогнозов на 1 месяц вперёд.

Набор моделей был вполне стандартный для базового курса по прогнозированию: ARIMA (с автоматическим подбором параметров), ETS, гибриды, прогнозирующие ансамблем из других моделей (вплоть до простейших нейронных сетей - и когда-нибудь я напишу отдельный текст про бессмысленную и беспощадную любовь некоторых людей к нейронным сетям там, где они не работают)

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

Среди тех работ, где победила не-наивная модель, разница в точности модели-победительницы и наивной чаще всего составляла доли процента. Буквально в одном случае хорошо (с разницей с наивной больше пары процентов) сработала ARIMA, в паре случаев - ETS, ещё в паре случаев какие-то гибриды.

Как показывает практика, даже при существенном усложнении моделей редко получается получить кардинальный прирост точности. Я наблюдал хорошо работающие LSTM (более сложный вид нейронных сетей), но в основном на более высокочастотных данных, когда в выборке хотя бы несколько тысяч наблюдений. Я слышал про хорошо работающий Prophet, но для специфичных типов данных (долей). И видел гораздо больше случаев, когда ни LSTM, ни Prophet, не способны значимо улучшить точность по сравнению с наивным прогнозом. А там, где точность улучшается - это достигается долгим и аккуратным подбором параметров моделей, а вовсе не "нажал на кнопочку - и всё работает".

Мораль сей басни? Не бывает волшебных палочек :) Если вам нужен хороший прогноз - то даже при использовании авторегрессионной модели вам, скорее всего, придётся довольно много времени потратить на подбор оптимальной модели и её параметров. А лучше использовать модель с внешними объясняющими переменными - но тогда придётся потратить на неё ещё больше времени и сил. Но они точно окупятся!
Наукастинг ВВП: альтернативные данные

#лонгрид

Последний (по крайней мере на ближайшее время) лонгрид про наукастинг посвятим вопросу использования альтернативных данных.

Как я уже писал неделей ранее, одно из важнейших требований к объясняющим переменным для их использования при наукастинге - это оперативность их публикации. Чем оперативнее публикуется показатель, тем быстрее мы сможем посчитать наукаст и, что логично, тем больше от этого показателя получается пользы.

К сожалению, большая часть "классических" объясняющих переменных не всегда достаточно оперативна: данные по промышленному производству за октябрь у нас опубликуют 29 ноября (вместе с многими другими показателями), инфляция задерживается меньше, на 3-4 дня, но всё равно недоступна сразу. Есть и оперативные индикаторы: те же биржевые цены на товары (на нефть, к примеру) и фондовые индексы, но их не всегда хватает для построения хороших оценок.

Это мотивирует использование разного рода "альтернативных данных", которые публикуются быстрее классических, а описывают явления, качественно отличающиеся от просто событий на биржах. Сюда попадают: динамика поисковых запросов (Google/Яндекс-тренды), оценки тональности новостей и комментариев в соцсетях (сентимент) и другие нестандартные показатели, которые (чаще всего) получаются на основе анализа происходящего в Интернете.

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

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

#лонгрид

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

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

Предположим, вы оценили модель, как-то правильно и аккуратно (как - возможно ещё поговорим в другой раз) померили её точность и получили, что в среднем она ошибается на 5%. Это хорошо или плохо? Даже если вам для вашей задачи этой точности хватит, это ещё не значит что модель хорошая! Потому что, вполне возможно, где-то рядом существует значительно более простая модель, которая будет прогнозировать не хуже. Вот эти предельно простые модели, с которыми всегда стоит сравнивать качество работы вашей модели, и есть бенчмарки.

Самые частые кандидаты на эту роль в прогнозировании - это наивные модели (когда прогноз на будущее равен последнему наблюдаемому значению: "завтра будет как сегодня, и послезавтра будет как сегодня, и даже через 100 лет будет как сегодня"), AR(1)-модели (когда "завтра" = "какой-то коэффициент" умножить на "сегодня"), иногда - сезонные наивные модели (когда прогноз на следующий месяц равен факту в тот же месяц предыдущего года).

Вернёмся к примеру с ошибкой в 5%. Пусть у наивной модели ошибка оказалась равна 54%. Ваша модель почти в 11 раз обошла наивную - она явно хороша!

А что если у наивной модели средняя ошибка получилась равной 4%? Вы делали сложную модель, собирали данные, оценивали - и получили на выходе точность хуже, чем у примитивной модели, для которой даже ничего оценивать не нужно! Наверное, ваша модель по меньшей мере не очень.

Звучит тривиально, но на практике такие сравнения с простыми моделями очень часто просто игнорируются! И показывают тебе модель со средней ошибкой в 5%, а ты даже не можешь понять хорошо это или плохо.

Так что, если вы занимаетесь прогнозированием и по какой-то причине не сравниваете свои модели с простыми - надо исправляться. А если вы заказчик и вам пытаются продать "очень крутой искусственный интеллект для прогнозирования", но не сравнивают качество его работы с простыми моделями - возможно, вас пытаются обмануть...
Олимпиады по анализу данных

#лонгрид

Немного пропал последние дни, но по уважительной причине - сидел в жюри олимпиады по анализу данных для школьников DANO. С тематикой канала оно хорошо пересекается, так что заодно расскажу про неё подробнее!

Казалось бы, зачем нужна олимпиада по предмету, который в школе не преподаётся? С одной стороны да, с другой стороны - чтобы сделать базовый анализ, зачастую достаточно Excel (которым многие владеют, да и научиться им пользоваться несложно), а возможность в 9-10-11 классе попробовать позаниматься тем, чем занимаются реальные аналитики в реальных компаниях очень ценна сама по себе! Поэтому - а почему бы и нет?

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

Конечная цель - поставить исследовательский вопрос, выдвинуть гипотезу и проверить её на данных. Ровно том, чем занимаются настоящие аналитики и исследователи. И, скажем честно, у некоторых школьников это уже получается не сильно хуже, чем у некоторых взрослых...

За три года существования олимпиады приятно впечатляет прогресс участников: если на первом финале в декабре 2021 многим не хватало инструментария (всё ограничивалось графиками и сравнением средних) а некоторым - понимания того, зачем это нужно ("мы обучили нейросеть" - "а что вы с её помощью можете сказать про влияние X на Y, в этом же цель вашего исследования" - "ну да, ничего. Но мы её обучили!" - хотя этим и многие взрослые грешат), то сейчас почти все умеют делать статистические тесты, многие освоили азы эконометрики, и самое главное - действительно много ребят понимают, зачем они это делают и зачем нужны эти тесты и модели. И это очень круто!

В общем, очень классное мероприятие (и это не реклама)). У кого есть дети подходящего возраста, которым это могло бы быть интересно - рекомендую! У олимпиады, кстати, регулярно проходят хакатоны (не в Москве, правда), на которых можно попробовать то же самое в мини-формате.
Дорогие читатели!

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

За последний год в нашем небольшом уютном канале появились:
- Регулярные ежемесячные наукасты темпов роста ВВП - единственные, насколько мне известно, в России! Декабрьские оценки, правда, появятся уже в следующем году, сами понимаете, конец декабря - период тяжёлый. Но наши годовые оценки от 6 декабря очень тесно бьются с теми цифрами, которые сейчас официально озвучиваются.
- Лонгриды. Они были и раньше, но за последние пару месяцев их было больше, чем за предыдущие пару лет, все их можно найти по тегу #лонгрид. Дальше лонгридов будет становиться больше - и можно даже написать в комментариях, про что вам было бы интересно почитать из областей, связанных с прогнозированием и статистикой!

Интересная статистика в новостном формате при этом тоже не исчезла - и тоже останется с нами в следующем году!

Спасибо, что были с нами этот год! Пусть новости и статистика в 2024 будут только хорошими. Здоровья, мира, любви всем нам. С Наступающим :)

И до новых встреч сразу после праздников!
Please open Telegram to view this post
VIEW IN TELEGRAM
Системы раннего предупреждения о конфликтах

#лонгрид

Сегодня - ещё один лонгрид из разряда "читаем статьи за вас", на этот раз про системы раннего предупреждения о конфликтах. Статья, кому интересно полное изложение, здесь.

Оказывается, существует достаточно много, больше десятка, разных систем и проектов, регулярно оценивающих риски возникновения вооружённых конфликтов, переворотов и т.д. в разных странах мира, с частотой вплоть до недельной (это делает проект ACLED).

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

Другой вопрос, что прогнозы правда оказываются не очень точными: авторы статьи не делают детальную оценку, но небольшой пример с одним годом и тремя (африканскими) странами, где в этот год происходили вооружённые конфликты, показывает весьма умеренную точность. Conflict Forecast, к примеру, смог просигнализировать о вероятности конфликта за месяц до его возникновения в случае Эфиопии, но не показал выдающихся результатов для других стран. С другой стороны, и один предсказанный за месяц конфликт - уже неплохой результат!

Список проектов со ссылками (забирайте, может пригодиться!):

- VIEWS
- ACLED
- WPS
- PRS
- Peoples under Threat
- GCRI
- EWP
- Conflict Forecast
- Atrocity
- CoupCast
Иерархическое прогнозирование: текущий статус, проблемы и перспективы

Сегодня (вдохновившись сразу несколькими интересными статьями в последнем номере 2023 года International Journal of Forecasting) поговорим об иерархических прогнозах.

Иерархический прогноз предполагает, что вы прогнозируете набор временных рядов, связанных друг с другом какой-то иерархией: к примеру, общие продажи магазина и отдельно продажи по категориям (которые в сумме дают общие продажи). В такой ситуации у вас есть три простых способа построения прогноза:
- Снизу вверх: делаем прогноз низкоуровневых рядов (продаж по категориям), суммируем в верхний уровень
- Сверху вниз: делаем прогноз высокоуровневых рядов (суммарных продаж), дезагрегируем на нижний уровень (к примеру, используя веса, посчитанные по историческим данным)
- Начиная от середины: прогнозируется средний уровень иерархии, из него суммируем в верхние уровни, дезагрегируем в нижние

Почему не прогнозировать ряды просто отдельно друг от друга? Потому что почти наверняка получившиеся прогнозы будут не когерентны: для них не будут выполнены определяющиеся иерархией рядов соотношения (сумма прогнозов по категориям не будет равна прогнозу суммарных продаж!). А когерентность для иерархических прогнозов - штука очень важная.

Более сложные подходы к прогнозированию иерархических рядов подразумевают прогнозирование всех рядов, но построенное таким образом, чтобы когерентность выполнялась: таким образом мы и не теряем информацию (как в любом из простых методов), и сохраняем взаимосвязи между показателями.

Но и здесь появляются проблемы: к примеру, оказывается (см. статью), что для сохранения когерентности нужно выбирать модели, оптимальные по MSE или RMSE, но не по MAE или MAPE (или их модификациям, включая MASE). Причина проста: среднеквадратичную ошибку (MSE/RMSE) минимизирует матожидание, а сумма матожиданий равна матожиданию суммы. А MAE, к примеру, минимизируется медианой, и для медианы такое соотношение не выполняется. Вроде бы мелочь, но важная!

Другая важная мысль работы - это практически полное отсутствие исследований по интервальному прогнозированию для иерархических рядов. Сами авторы предлагают использовать копулы для получения таких прогнозов.

Собственно, это два главных вывода работы: если хотите когерентные прогнозы, оценивайте ошибки по (R)MSE, а самое перспективное направление для исследований в иерархическом прогнозировании - это интервальные прогнозы.

Теперь, кстати, лонгриды формата "читаем статьи за вас" будут обозначаться отдельным тегом #статьи для удобства поиска! :)

#лонгрид
#статьи
Как прогнозировать показатели, по которым пока практически нет доступных данных?

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

На самом деле, прогнозирование показателей, для которых пока (практически) нет истории — задача очень важная и распространенная. Новые показатели, новые ценные бумаги на рынке, новые продукты, новое что угодно ещё. Обсуждаемая сегодня статья, на основе которой мы и поговорим об этой интересной задаче, сконцентрирована как раз на продажах новых продуктов.

Предлагаемая авторами методология очень проста, но достаточно интересна и легко реализуема:
1) Берем исторические данные по продажам других продуктов (той же компании или чужих продуктов из той же сферы)
2) Кластеризуем их (авторы кластеризуют ряды просто на основе их точек, хотя на самом деле методов кластеризации для временных рядов есть много, и зачастую они работают лучше)
3) Считаем среднюю динамику продаж по каждому кластеру
4) По первым нескольким точкам, доступным для нового продукта, относим его к одному из кластеров (к тому, у которого средняя динамика максимально похожа на динамику данного продукта)
5) Прогнозируем продажи нового продукта любой моделью, используя продажи других продуктов кластера в качестве объясняющих переменных.

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

Другой нюанс ещё забавнее: авторы для измерения ошибок используют в том числе MASE — отношение MAE (средней абсолютной ошибки) данной модели к MAE наивного прогноза — и по одной из двух изучаемых выборок лучшая модель (все еще ARIMAX)… Проигрывает наивному прогнозу!

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

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

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

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

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

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

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

#лонгрид
#статьи
Прогнозирование в экономике и модели машинного обучения

Машинное обучение и его маркетингово-привлекательная форма "ИИ" (который к ИИ в обыденном / навеянном классикой фантастики понимании не имеет никакого отношения) захватили сейчас, кажется, практически все сферы жизни. Прежде всего, конечно же, те сферы, где есть много данных: картинок в Интернете можно насобирать многие миллионы, текста (в Интернете же) мы каждый год сейчас пишем столько, сколько раньше и за век не получалось написать. Отсюда и модели, генерирующие и анализирующие текст и картинки.

А вот экономическое прогнозирование - одна из тех областей, в которых машинное обучение далеко не всегда выигрывает. Причина здесь тоже кроется в данных: нет у нас миллиона лет наблюдений за российской экономикой, и никогда не будет. Есть лет 30, во время которых экономика несколько раз катастрофически менялась, и всё! И нейронные сети по 30 точкам обучаться пока не умеют, и не факт что научатся.

В это русло - свежая статья из хорошего журнала Journal of Forecasting про прогнозирование на фондовом рынке. На недельных данных за период с 1999 по 2021 (больше тысячи точек) авторы прогнозируют цены акций отдельных компаний, входящих в SP500. Задача весьма популярная. Не менее популярен набор методов - от простой логистической регрессии до нейронных сетей. Чуть интереснее целевая переменная: прогнозируются здесь не непосредственно цены акций, а вероятность того, что та или иная акция покажет динамику лучше средней по рынку.

Результат, скажем честно, тоже не удивляет: наибольшую доходность показал портфель, составленный на основе ансамбля моделей, а среди отдельных моделей чаще всего "побеждает" старая-добрая логистическая регрессия с регуляризацией (обычно Ridge и Elastic Net). Качество прогнозов нейронных сетей разных видов (обычные feedforward и LSTM) заметно хуже.

К чему эта история? Далеко не всегда "сложнее" = "лучше". А, к сожалению, с попытками прогнозировать короткие временные ряды при помощи "ИИ", даже не сравнивая этот "ИИ" с чем-то попроще, сталкиваться приходится регулярно. Результаты, на самом деле, обычно такие же, как в этой статье. Но ведь "ИИ"! Модно же!

#лонгрид
#статьи
Иерархическое и байесовское прогнозирование: новые обзоры

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

В свежем номере IJF вышло сразу две очень интересные обзорные статьи.

Первая - обзор современных методов иерархического прогнозирования и согласования прогнозов. Я уже писал несколько постов про них, но тема очень новая (первые работы - 2009-2011 годы!) и актуальная (число статей в последние лет пять растёт практически экспоненциально), так что внимания она безусловно заслуживает.

В статье - обзор от первых подходов, основанных на МНК-оценках, до современных и нишевых методов, основанных на теоретико-игровых конструкциях, методах машинного обучения (в том числе мета-обучения, когда мы обучаем модель, которая будет выбирать другую модель) и совместной оценке всех показателей на основе state-space моделей.

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

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

Сам обзор состоит из двух частей. Сначала - в виде хронологического описания эволюции байесовского прогнозирования, затем - в виде набора конкретных кейсов из разных областей (здесь и макроэкономика, и финансы, и маркетинг)
Векторные авторегрессии и структурные сдвиги

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

Интересная свежая работа о влиянии структурных сдвигов на свойства оценок и прогнозов VAR-моделей. VAR-модели - один из основный инструментов в макроэконометрике, они очень широко используются и для прогнозирования, и для целей интерпретации полученных результатов.

Довольно неожиданным результатом, как мне кажется, является состоятельность оценок коэффициентов и точечных прогнозов в присутствии структурных сдвигов в ковариационной матрице и в средних значениях переменных! Но здесь тоже есть нюанс: чтобы оценки стали состоятельными, необходимо, чтобы размер модели (число учитываемых лагов) возрастал по мере роста числа наблюдений: подходит и вариант, когда число лагов жёстко привязано к размеру выборки, и когда оптимальное число лагов выбирается на основе информационных критериев.

VAR с жёстко зафиксированным числом лагов даёт несостоятельные оценки при структурных сдвигах в среднем.

Структурными сдвигами в ковариационной матрице ошибок можно пренебречь, если она не используется для идентификации модели. Если используется (как в любимых макроэкономистами структурных VAR) - то игнорирование структурных сдвигов сделает оценки, опять же, несостоятельными. В такой ситуации предлагается оценивать ковариационную матрицу не по всей выборке, а использовать локальные оценки.
Прогнозирование ВВП и нестандартные объясняющие переменные

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

Прогнозирование ВВП - тема, казалось бы, избитая, заезженная и вообще почти всё "простое", что можно было в ней сделать, уже давным-давно сделано. Сейчас усложнения чаще идут в сторону всё более сложных моделей, всё более нетривиальных данных (хотя Google Trends и новостной сентимент - тоже темы, в общем-то, давно надоевшие и заезженные) или в сторону оперативности оценок. Часто все эти направления комбинируются.

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

Дальше есть конечно небольшие расчётные нюансы - стоимость аренды считается суммарная за последние 10 лет, а во втором подходе используются не-финансовый не-корпоративный сектор.

Но и результаты, даже с использованием простых моделей, очень показательные, особенно на относительно больших горизонтах (3-5 лет), когда средняя ошибка прогноза оказывается вдвое(!) ниже, чем при использовании более "традиционных" объясняющих переменных.

Более того, модели с отношением стоимости покупки жилья к стоимости аренды смогли (на вневыборочных прогнозах) предсказать кризис 2007-2009 года! Чудеса да и только...

Из ограничений: данные конечно же только по США, и кончаются 2017 годом. Что там с коронакризисом и текущими событиями - непонятно.
О точности прогнозов МВФ

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

Давно не было у нас лонгридов про статьи - исправляюсь! И сегодня поговорим про две статьи сразу (одну совсем свежую и одну тоже свежую, 2023 года). Обе про одно и то же - про то, насколько (не)точно МВФ делает свои прогнозы.

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

История первая - про ВВП. Систематических ошибок в прогнозах и наукастах ВВП развитых стран нет! Но они есть в отношении стран развивающихся (точнее, в LIC - Low-Income Countries, странах с низкими доходами): МВФ переоценивает ВВП в случаях, когда происходит быстрое восстановление после кризиса и недооценивает, когда восстановление не столь стремительно (то есть, самые страдающие страны по мнению МВФ должны страдать ещё больше - а ведь это может влиять и на величину финансовой поддержки, и в целом на политику в отношении этих стран). Но только в отношении бедных стран. Результаты касаются только кризисных периодов, когда наукасты и прогнозы особенно важны.

Особенно сильно завышаются темпы роста в странах Латинской Америки, а эффекты некоторых экономических реформ - недооцениваются.

История вторая - про страны, которые получают кредиты на покрытие дефицита платёжного баланса (то есть, которым не хватает валюты что-то купить - опять же, это страны, находящиеся в очень тяжёлых условиях). МФВ систематически излишне пессимистичен в отношении резервов этих стран (на деле они оказываются выше прогнозов МВФ), и излишне оптимистичен в отношении величины краткосрочного внешнего долга (на деле он тоже оказывается выше прогнозов МВФ). То есть, по прогнозам МВФ, денег таким странам нужно будет больше, а возможностей взять долг у них тоже будет больше! Идеальное комбо, чтобы взять у МВФ побольше - на всякий случай.

С причинами таких смещений вопрос более сложный. Авторы тактично кивают на то, что МВФ старается быть более пессимистичным в важных вопросах (темпы роста ВВП, резервы), чтобы потом не случилась ситуация хуже ожиданий. Но вопрос на самом деле весьма нетривиальный!
Можно ли спрогнозировать точность геополитических прогнозов и как это потом использовать

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

Короткий ответ: можно, и очень точно! А потом, зная точность прогнозов разных экспертов, можно получить ещё более точный прогноз

А теперь длиннее! Сегодня мы рассматриваем интересную статью, посвящённую точности геополитических прогнозов. 153 участника, 10 вопросов с ответом да/нет от "кто победит на выборах: Байден или Трамп" (речь идёт о выборах 2020 года) до "запустит ли КНДР межконтинентальную баллистическую ракету в [заданный промежуток времени]". На каждый вопрос участники должны были дать ответ в виде вероятности наступления события с текстовым обоснованием, списком показателей, на которые смотрит эксперт, оценкой своей экспертности в этой области и т.д. Всего - 11 разных показателей.

Из всего этого изобилия авторы статьи формируют ряд показателей и обучают модель для предсказания точности отдельных прогнозов (прогнозирование точности прогнозов звучит конечно прекрасно!)). И эта модель оказывается очень точной! Достигнутая точность на тестовых данных: ROC AUC = 0.85, если тестовые данные - это новые эксперты; и ROC AUC = 0.96, когда в качестве тестовых данные берутся новые прогнозы тех же экспертов, которые модель видела при обучении. Очень и очень неплохо! Собственно модель тут - логистическая регрессия с регуляризацией, всё очень просто и интерпретируемо.

Точнее оказываются те эксперты, которые более уверены в своих прогнозах, верят, что их прогнозы будут близки к среднему прогнозу других экспертов, у которых в обоснованиях больше слов, ориентированных на время, и меньше - на прошлое, настоящее и связанных с определённостью. Показатели про слова получены на основе Linguistic Inquiry and Word Count dictionary, интересующиеся могут там подробнее посмотреть, что входит в каждый из этих списков.

А дальше всё просто - зная точность отдельных экспертов, можно более корректно агрегировать их прогнозы в одну цифру. И она будет заметно (и статистически значимо) точнее, чем отдельные прогнозы!
Ещё один способ комбинировать машинное обучение с интерпретируемыми моделями: прогнозирование параметров интерпретируемых моделей при помощи нейронных сетей

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

Комбинирование моделей машинного обучения и моделей эконометрических тем или иным способом - довольно важная для многих сфер задача.

Эконометрические модели интерпретируемы, и это очень важно, когда речь заходит не о генерации картинок с котиками, а о каких-то чувствительных вещах (гос политика, работа банков и т.д.). Узнать, что ЦБ внезапно поднял ставку до 50% из-за того, что нейронка сгаллюцинировала и как-то не так спрогнозировала реакцию экономики - довольно грустно. Или узнать, что банк не дал тебе ипотеку из-за цвета кроссовок на фотке в соцсети. А понять, галлюцинации это или нет, может быть задачей довольно нетривиальной.

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

И вот ещё один интересный, как мне кажется, пример комбинации двух подходов из свежей статьи: старая-добрая векторная авторегрессия, у которой параметры меняются во времени но не каким-то простым (и обычно случайным) образом, как это обычно делается в TVP-VAR моделях, а как нелинейная функция от каких-то факторов! В данном случае: от времени. В чём преимущество? В возможности нормально прогнозировать эти параметры!

А та самая нелинейная функция оценивается, понятное дело, методами машинного обучения (тоже старой-доброй моделью, теперь - LSTM). Интересно, что оценивается оно всё совместно, максимизацией правдоподобия.

Работает, кажется, неплохо!

Вопросы, конечно, есть: прежде всего, нет сравнения с обычным TVP-VAR, оценённым "традиционным" методом (запись в виде state space модели -> фильтр Калмана -> максимизация правдоподобия). И это при том, что на этапе проверки на симулированных данных, эти сами данные симулируются на основе рядов коэффициентов, полученных из обычного TVP-VAR! Немного удивляет такая небрежность...

Тем не менее, идея достаточно красивая!
Прогнозирование на множественные горизонты: подходы и перспективы развития

#лонгрид

Вполне себе понятная и жизненная задача: построить модель/набор моделей для прогнозирования на несколько горизонтов одновременно. Чтобы и на месяц вперёд, и на два, и на три, и 12 желательно тоже. Как её решать?

Есть несколько стандартных стратегий (вот тут, к примеру, приведён неплохой обзор):

1) Рекурсивная. Прогнозируем на "завтра" используя уже известные значения за "сегодня", а для прогноза на "послезавтра" используем полученный на предыдущем шаге прогноз и ту же самую модель. Повторяем сколько угодно раз. Просто, понятно, для более-менее больших горизонтов (5-10 точек) прогнозы сводятся к константе или тренду (и становятся не очень осмысленными)

2) Прямая. Для каждого горизонта делаем отдельную модель, возможно даже с разными переменными. Может быть довольно долго в плане времени, уходящего на вычисления, но хорошо работает.

3) Прямая-рекурсивная. Гибрид, когда мы для каждого горизонта делаем отдельную модель, но в качестве объясняющих переменных добавляем прогнозы, полученные для меньшего горизонта, что обеспечивает какое-никакое согласование.

4) MIMO (multiple-input multiple-output). Довольно новая (2008 года) история, сводящаяся к тому, что мы оцениваем одну модель, которая сразу прогнозирует вектор переменных (на все нужные нам горизонты). Некий компромисс между рекурсивной и прямой стратегиями в плане вычислительной стоимости.

5) Прямой MIMO (DIRMO). Ещё более новая (2009 года) история. когда мы разбиваем весь горизонт на несколько блоков и для каждого оцениваем модель по принципу MIMO. Получаем большую гибкость (разные модели для разных горизонтов), отчасти сохраняя вычислительную дешевизну и способность учитывать взаимосвязи обычного MIMO.

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

Такая вот интересная история
О политической ангажированности в экономических оценках

#лонгрид

Прочитал тут на днях новость, что эксперты Стокгольмского института экономики "правильно" пересчитали российский ВВП за 2022-2024 и оказалось, что вместо роста в последние два года у нас наблюдалось ужас-какое-страшное падение ВВП. Стало интересно.

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

1) "Если скорректировать рост ВВП России не на официальную инфляцию, а на данные «Ромира», то рост на 3,6% в прошлом году превращается в спад на 8,7%". Действительно, росстатовская инфляция вызывает вопросы и не очень стыкуется с тем, что мы видим своими глазами. И Ромировская инфляция в принципе тоже вызывает вопросы - но Ромир честно везде пишет, что это именно инфляция по потребительской корзине и довольно неплохо описывает методологию. Но главная проблема в том, что ВВП - это не только потребление, и дефлируется он не по ИПЦ, а по дефлятору ВВП. И он, кстати, выше ИПЦ, который считает Росстат (хотя всё равно гораздо ниже инфляции по версии Ромира)

2) "Альтернативные модели оценки российской экономики" выглядят весьма интригующе и звучат очень наукообразно. Только вот основаны они... На парной регрессии темпов роста ВВП на темпы роста цены нефти! Повтор этой чудесной высоконаучной модели будет следующим постом, но на словах: R^2 там получился 0.41 (то есть, изменение цены нефти объясняет 41% изменчивости темпов роста ВВП), насчитать по такой "модели" можно много чего, наоценивать таких "моделей" корреляции темпов роста ВВП с чем угодно можно очень много (и примерно такого же качества), смысла в этом, скорее всего, будет немного.

3) Моё любимое: "модель корреляции с ВВП США показала обвал на 10,9%". Никакой модели корреляции с ВВП США там конечно же нет (да и странно было бы прогнозировать ВВП России по корреляции с ВВП США, вот честно), зато там есть ошибка переводчика и расчёт "USD GDP" - то есть, ВВП в (текущих) долларах США. Не "US GDP". Это разные вещи!

С учётом того, как ослабел рубль к доллару в 2023 году (по сравнению с 2022) - да, действительно, в текущих долларах США ВВП России в 2023 довольно сильно упал. И это нормально, любые оценки в текущих долларах США летают туда-сюда вместе с курсом, это в целом бессмысленный показатель для всех экономик, кроме собственно экономики США. Про это тоже попозднее сделаю отдельный пост.

Ну и в целом: падение ВВП на 10.9% за год - это масштабы Великой Депрессии в США (там было -30% за 4 года), когда люди жили на улицах в коробках и умирали от голода. Ничего такого у нас, как несложно заметить, просто повертев головой по сторонам, даже близко не происходит)

Резюмируя: задавать вопросы о качестве оценок макропоказателей - это нормально. Делать и изучать альтернативные оценки - это тоже нормально. Но вот писать (очевидно) политически ангажированные апокалиптические глупости - это не нормально