Как упоминал Бен, методы учебника для нескольких временных рядов - это модели VAR и VARIMA. Однако на практике я не видел, чтобы они часто использовали это в контексте прогнозирования спроса.
Гораздо более распространенным, включая то, что в настоящее время использует моя команда, является иерархическое прогнозирование (см. Также здесь ). Иерархическое прогнозирование используется всякий раз, когда у нас есть группы схожих временных рядов: история продаж для групп схожих или связанных продуктов, туристические данные для городов, сгруппированных по географическим регионам и т. Д.
Идея состоит в том, чтобы иметь иерархический список ваших различных продуктов, а затем делать прогнозирование как на базовом уровне (то есть для каждого отдельного временного ряда), так и на совокупных уровнях, определенных иерархией вашего продукта (см. Прилагаемую диаграмму). Затем вы согласовываете прогнозы на разных уровнях (используя сверху вниз, снизу вверх, оптимальное согласование и т. Д.) В зависимости от бизнес-целей и желаемых целей прогнозирования. Обратите внимание, что в этом случае вы не будете подгонять одну большую многомерную модель, а будете использовать несколько моделей в разных узлах вашей иерархии, которые затем сверяются с использованием выбранного вами метода согласования.
Преимущество этого подхода состоит в том, что, группируя похожие временные ряды вместе, вы можете использовать корреляции и сходства между ними, чтобы найти закономерности (такие сезонные колебания), которые может быть трудно обнаружить с помощью одного временного ряда. Поскольку вы будете генерировать большое количество прогнозов, которые невозможно настроить вручную, вам нужно будет автоматизировать процедуру прогнозирования временных рядов, но это не так уж сложно - подробности см. Здесь .
Более продвинутый, но схожий по духу подход используется Amazon и Uber, где одна большая нейронная сеть RNN / LSTM обучается по всем временным рядам одновременно. По духу оно похоже на иерархическое прогнозирование, потому что оно также пытается выучить закономерности из сходств и корреляций между соответствующими временными рядами. Он отличается от иерархического прогнозирования тем, что пытается изучить отношения между самими временными рядами, в отличие от того, чтобы эти отношения были предопределены и зафиксированы до выполнения прогнозирования. В этом случае вам больше не нужно иметь дело с автоматической генерацией прогноза, поскольку вы настраиваете только одну модель, но поскольку модель очень сложная, процедура настройки больше не является простой задачей минимизации AIC / BIC, и вам нужно посмотреть на более продвинутые процедуры настройки гиперпараметров,
Смотрите этот ответ (и комментарии) для получения дополнительной информации.
Для пакетов Python PyAF доступен, но не очень популярен. Большинство людей используют пакет HTS в R, для которого существует гораздо больше поддержки сообщества. Для подходов, основанных на LSTM, есть модели Amazon DeepAR и MQRNN, которые являются частью сервиса, за который вы должны платить. Несколько человек также внедрили LSTM для прогнозирования спроса с помощью Keras, вы можете посмотреть их.
bigtime
в R. Возможно, вы могли бы вызвать R из Python, чтобы иметь возможность использовать его.