Описание прогнозной модели
Прогнозные модели и скрипты размещены на сервере izb-ally-nodered02
(IP: 10.1.241.244).
Скрипты написаны на Python с использованием библиотеки ENTA
python3.10 main.py --help
Usage: main.py [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
copy copy time_series from one DB to another
fit Fits model with collected lines from DB
forecast Makes forecast for the next 7 days and saves it to DB
test Evaluates forecast metrics
view Prints one segment used for forecast
Наилучшие результаты при прогнозировании показала модель CatBoost.
Перед использованием модель необходимо обучить. После обучения она может применяться для построения прогноза.
Данные для обучения поступают из различных источников, а результаты прогнозов сохраняются в гипертаблицу time_series
.
Для обучения используются погодные данные, которые ежедневно загружаются с сайта rp5.ru в таблицы weather
и weather_stations
. Загрузка осуществляется с помощью скрипта rp5_weather
, который настраивается через файл static/cities.txt
. Этот файл содержит список метеостанций по всей стране.
В таблице weather
также хранятся исторические данные о погоде, начиная с 2005 года.
Кроме исторических данных, для прогнозирования требуется актуальный прогноз погоды. Он ежедневно загружается с сайта api.met.no через Node-RED в таблицу weather
.
Также в прогнозе используется данные табель календаря из таблицы calendar и календарь Православных Христианских праздников.
Также при построении прогноза учитываются данные производственного календаря из таблицы calendar
и календаря православных праздников.
Попытка включить мусульманские праздники в расчёт прогноза не улучшила точность.
Прогноз может строиться на заданное количество дней вперёд и с различной степенью дискретизации.
No Comments