exponenta event banner

Прогнозная мультипликативная модель ARIMA

В этом примере показано, как прогнозировать мультипликативную сезонную модель ARIMA с использованием forecast. Временные ряды - ежемесячные пассажирские номера международных авиакомпаний с 1949 по 1960 год.

Загрузите данные и оцените модель.

Загрузить набор данных Data_Airline.

load('Data_Airline.mat')
y = log(Data);
T = length(y);

Mdl = arima('Constant',0,'D',1,'Seasonality',12,...
    'MALags',1,'SMALags',12);
EstMdl = estimate(Mdl,y);
 
    ARIMA(0,1,1) Model Seasonally Integrated with Seasonal MA(12) (Gaussian Distribution):
 
                  Value      StandardError    TStatistic      PValue  
                _________    _____________    __________    __________

    Constant            0              0           NaN             NaN
    MA{1}        -0.37716       0.066794       -5.6466      1.6364e-08
    SMA{12}      -0.57238       0.085439       -6.6992      2.0952e-11
    Variance    0.0012634     0.00012395        10.193      2.1406e-24

Прогноз количества пассажиров авиакомпании.

Используйте подобранную модель для генерации прогнозов MMSE и соответствующих среднеквадратических ошибок в течение 60-месячного (5-летнего) горизонта. Используйте наблюдаемые ряды в качестве данных предварительного отбора. По умолчанию forecast выводит предварительные инновации с использованием указанной модели и наблюдений.

[yF,yMSE] = forecast(EstMdl,60,y);
upper = yF + 1.96*sqrt(yMSE);
lower = yF - 1.96*sqrt(yMSE);

figure
plot(y,'Color',[.75,.75,.75])
hold on
h1 = plot(T+1:T+60,yF,'r','LineWidth',2);
h2 = plot(T+1:T+60,upper,'k--','LineWidth',1.5);
plot(T+1:T+60,lower,'k--','LineWidth',1.5)
xlim([0,T+60])
title('Forecast and 95% Forecast Interval')
legend([h1,h2],'Forecast','95% Interval','Location','NorthWest')
hold off

Figure contains an axes. The axes with title Forecast and 95% Forecast Interval contains 4 objects of type line. These objects represent Forecast, 95% Interval.

Прогноз MMSE показывает, что количество пассажиров авиакомпаний продолжает расти на горизонте прогноза. Однако пределы доверия показывают, что снижение количества пассажиров является правдоподобным. Поскольку это нестационарный процесс, ширина интервалов прогноза со временем увеличивается.

Сравните прогнозы MMSE и Monte Carlo.

Смоделировать 500 путей выборки через тот же горизонт прогноза. Сравните среднее значение моделирования с прогнозом MMSE.

rng 'default';
res = infer(EstMdl,y);
Ysim = simulate(EstMdl,60,'NumPaths',500,'Y0',y,'E0',res);

yBar = mean(Ysim,2);
simU = prctile(Ysim,97.5,2);
simL = prctile(Ysim,2.5,2);

figure
h1 = plot(yF,'Color',[.85,.85,.85],'LineWidth',5);
hold on
h2 = plot(yBar,'k--','LineWidth',1.5);
xlim([0,60])
plot([upper,lower],'Color',[.85,.85,.85],'LineWidth',5)
plot([simU,simL],'k--','LineWidth',1.5)
title('Comparison of MMSE and Monte Carlo Forecasts')
legend([h1,h2],'MMSE','Monte Carlo','Location','NorthWest')
hold off

Figure contains an axes. The axes with title Comparison of MMSE and Monte Carlo Forecasts contains 6 objects of type line. These objects represent MMSE, Monte Carlo.

Прогноз MMSE и среднее значение моделирования практически неотличимы. Имеются небольшие расхождения между теоретическими 95% интервалами прогноза и 95% интервалами прогноза на основе моделирования.

См. также

Объекты

Функции

Связанные темы