Динамическая гармоническая регрессия

Прогнозирование в R

Rob J. Hyndman

Professor of Statistics at Monash University

Динамическая гармоническая регрессия

ch5_vid2_slides.003.png

Прогнозирование в R

Динамическая гармоническая регрессия

ch5_vid2_slides.004.png

  • $m =$ сезонный период

  • Любую периодическую функцию можно приблизить суммами sin и cos при достаточно большом K

  • Коэффициенты регрессии: $\alpha_k$ и $\gamma_k$

  • $e_t$ моделируется как несезонный процесс ARIMA

  • Предполагается, что сезонная картина неизменна

Прогнозирование в R

Пример: расходы австралийцев в кафе

fit <- auto.arima(cafe, xreg = fourier(cafe, K = 1),
                  seasonal = FALSE, lambda = 0)
fit %>% forecast(xreg = fourier(cafe, K = 1, h = 24)) %>%
   autoplot() + ylim(1.6, 5.1)

ch5_vid2_cafe_fcast.png

Прогнозирование в R

Пример: расходы австралийцев в кафе

fit <- auto.arima(cafe, xreg = fourier(cafe, K = 2),
                  seasonal = FALSE, lambda = 0)
fit %>% forecast(xreg = fourier(cafe, K = 2, h = 24)) %>%
   autoplot() + ylim(1.6, 5.1)

ch5_vid2_cafe_fcast_2.png

Прогнозирование в R

Пример: расходы австралийцев в кафе

fit <- auto.arima(cafe, xreg = fourier(cafe, K = 3),
                  seasonal = FALSE, lambda = 0)
fit %>% forecast(xreg = fourier(cafe, K = 3, h = 24)) %>%
   autoplot() + ylim(1.6, 5.1)

ch5_vid2_cafe_fcast_3.png

Прогнозирование в R

Пример: расходы австралийцев в кафе

fit <- auto.arima(cafe, xreg = fourier(cafe, K = 4),
                  seasonal = FALSE, lambda = 0)
fit %>% forecast(xreg = fourier(cafe, K = 4, h = 24)) %>%
   autoplot() + ylim(1.6, 5.1)

ch5_vid2_cafe_fcast_4.png

Прогнозирование в R

Пример: расходы австралийцев в кафе

fit <- auto.arima(cafe, xreg = fourier(cafe, K = 5),
                  seasonal = FALSE, lambda = 0)
fit %>% forecast(xreg = fourier(cafe, K = 5, h = 24)) %>%
   autoplot() + ylim(1.6, 5.1)

ch5_vid2_cafe_fcast_5.png

Прогнозирование в R

Пример: расходы австралийцев в кафе

fit <- auto.arima(cafe, xreg = fourier(cafe, K = 6),
                  seasonal = FALSE, lambda = 0)
fit %>% forecast(xreg = fourier(cafe, K = 6, h = 24)) %>%
   autoplot() + ylim(1.6, 5.1)

ch5_vid2_cafe_fcast_6.png

Прогнозирование в R

Динамическая гармоническая регрессия

ch5_vid2_slides.025.png

  • Можно добавлять другие предикторы: $x_{t,1},...,x_{t,r}$
  • K выбирается по минимуму $AIC_c$
  • K не может превышать m/2
  • Особенно удобно для недельных, дневных и субдневных данных.
Прогнозирование в R

Давайте потренируемся!

Прогнозирование в R

Preparing Video For Download...