Пример построения прогноза продаж с использованием узла ARIMAX
Модель ARIMAX (AutoRegressive Integrated Moving Average eXtended) — это математическая модель для анализа временных рядов, объединяющая в себе интегрированную авторегрессию, скользящее среднее и возможность учета дополнительных внешних факторов.
Существуют два подхода к реализации моделей:
- ARIMA — авторегрессионная модель скользящего среднего с интеграцией.
- ARIMAX — отличается от ARIMA тем, что дополнительно учитывается воздействие внешних (eXtended) факторов, влияющих на изменение исходного показателя.
В демопримере разбирается построение модели ARIMAX в Loginom для прогноза объема продаж сезонных товаров зимнего спорта по месяцам. Данный демопример основан на статье Пример использования ARIMA для прогноза продаж.
Описание алгоритма
1. Импорт данных
Таблица «Объем продаж»:
Имя | Метка |
---|---|
Дата | |
Продажи (руб.) |
При использовании в сценарии других данных может потребоваться их предварительная обработка. Важно, чтобы прогнозируемые данные имели непрерывный вид и не содержали пропусков.
2. Автоматическая настройка структуры
В узле ARIMAX (авто настройка) выполнены настройки для получения прогнозных данных.
На первой странице мастера настройки для поля Продажи (руб.) установлено значение Прогнозируемое.
В окне Настройки ARIMAX установлена отметка в поле Определить структуру автоматически. Значение горизонта прогноза изменено на 5.
В примере узел настроен и обучен. Если в настройки модели вносятся изменения, то узел нужно переобучить.
Поскольку поле Date содержит данные только за исходный временной период, возникает необходимость заполнить значения временного ряда для появившихся строк. В узле Дополнение временных рядов создается поле AllDates, содержащее все значения временного ряда. С помощью функции IF заполняются новые строки: если поле даты пустое, то к последней известной дате добавляется нужное количество месяцев, иначе остается существующая дата. Количество месяцев определяется как разница между номером строки и числом уникальных значений в поле Date. Полученная разница увеличена на 2, т.к. нумерация строк начинается с 0, и в числе уникальных значений учитывается пустая строка.
Для просмотра результатов используется визуализатор Диаграмма. Синим графиком демонстрируются исходные данные, оранжевым — прогнозные значения.
3. Увеличение точности прогноза
В узле ARIMAX (ручная настройка) на первой странице мастера настройки для поля Продажи (руб.) установлено значение Прогнозируемое.
В окне Настройки ARIMAX установлены следующие значения:
Порядок AR части — 35
Порядок интегрирования — 1
Порядок MA части — 1
Порядок сезонности AR части — 1
Горизонт прогноза — 5
В примере узел настроен и обучен. Если в настройки модели вносятся изменения, то узел нужно переобучить.
Настройка выполняется так же, как описано в подпункте «б» пункта 2.
Для просмотра результатов используется визуализатор Диаграмма.
Параметры для сравнения моделей отображаются во вкладке «Сводка» на третьем выходном порте модели. Сравнивая модели, можно заметить, что средняя относительная ошибка снижается с 0,07 до 0,03, если задать параметры ручным способом.
Аппроксимация данных временных рядов
Скачайте и откройте файл в Loginom. При необходимости Loginom CE можно скачать бесплатно
Минимальные требования к системе:
- Операционная система: Windows 10 и выше
- CPU x64: 2 core 1
- Оперативная память: 4 GB
- Жесткий диск: 10 GB
1 Поддерживается работа на x64 процессорах Intel Core, AMD FX и более новых, содержащих инструкции SSE4.2, POPCNT.