Почему прогнозы аримы меняются в зависимости от начальной / конечной точки? - PullRequest
0 голосов
/ 06 мая 2020

Я пытаюсь сгенерировать некоторые прогнозы ARIMA на основе модели, подходящей для некоторых обучающих данных. Мой общий набор данных состоит из ежемесячных данных с января 2017 года по апрель 2020 года. Я определяю свой набор поездов как месяцы с января 2017 года по январь 2020 года, а мой набор тестов - за месяцы с февраля 2020 года по апрель 2020 года. У меня нет никаких данных

from statsmodels.tsa.arima_model import ARIMA 

arima_fit_test = ARIMA(train, order=(3,0,5)).fit()

Я заметил, что, несмотря на то, что я использую ту же самую модель, описанную выше, если я сгенерирую прогнозы для другого заданного периода времени, то есть 3 месяцев против 5 месяцев, мои прогнозы немного отличаются (в частности, за апрель 2020 г.):

# predictions for test set only:
arima_predictions1 = arima_fit_test.predict(start=len(train), end=len(train)+len(test)-1)
# predictions for test set + 2 additional time steps
arima_predictions2 = arima_fit_test.predict(start=len(train), end=len(train)+len(test)-1+2)

Вывод:

arima_predictions1

2020-02-01    8538738.52975
2020-03-01    8544609.80394
2020-04-01    7500561.77990

arima_predictions2

2020-02-01    8538738.52975
2020-03-01    8544609.80394
2020-04-01    7885846.88085
2020-05-01    8376855.52546
2020-06-01    8282621.83543

Почему прогнозы для 2020-04-01 разные? Я использую одну и ту же модель arima_fit_test для arima_predictions1 и arima_predictions2, поэтому разве эти два набора прогнозов не должны совпадать на первые 3 месяца? Я также заметил, что если я использую метод .forecast(), я получаю точно такое же поведение.

EDIT: я заметил, что такое поведение имеет тенденцию происходить только в последний месяц более короткого промежутка времени. Например, если arima_predictions1 выше включал только прогнозы 2020-02-01 и 2020-03-01, а arima_predictions2 включал только 2020-02-01, 2020-03-01, 2020-04-01, прогнозы для 2020-03-01 были бы единственным прогнозом, отличающимся от два.

...