Как написать многомерное многошаговое прогнозирование - PullRequest
0 голосов
/ 22 октября 2019

Я пытаюсь реализовать многоэтапную многоэтапную модель для прогнозирования цен на электроэнергию на день вперед (h + 1, h + 2, ..., h + 24). Я знаю, как сделать один прогноз, но меня смущает то, как реализовать подход с несколькими выходами, где каждый прогноз дает вектор прогнозов для каждого часа в начале дня для одного выстрела (стратегия множественного вывода в https://machinelearningmastery.com/multi-step-time-series-forecasting/).

Суть того, что я сделал, - это получить код, который предсказывает один временной шаг, и изменить его, преобразовав выходные данные в последовательность для следующего 24-часового сдвига, вместо того, чтобы просто сказать, что один ElecPrice сместился на 24 часа вбудущее:

Y['ElecPrice1'] = df['RT_LMP'].shift(-1)
Y['ElecPrice2'] = df['RT_LMP'].shift(-2)
Y['ElecPrice3'] = df['RT_LMP'].shift(-3)
...
Y['ElecPrice3'] = df['RT_LMP'].shift(-24)

Я также изменил количество выходных сигналов, которые должна прогнозировать моя модель.

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

Пример кода можно посмотреть по этой ссылке https://nbviewer.jupyter.org/github/Joichiro666/Forecasting-sharing/blob/master/LSTM-DNN%203.ipynb (игнорировать все, что ниже, генерировать прогнозы)

Я просто хочу подтвердитьесли то, что я делаю, правильно или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...