時間序列交叉驗證

R 的時間序列預測

Rob J. Hyndman

Professor of Statistics at Monash University

時間序列交叉驗證

ch2_vid4_slides.002.png

R 的時間序列預測

時間序列交叉驗證

ch2_vid4_slides.003.png

R 的時間序列預測

時間序列交叉驗證

ch2_vid4_slides.004.png

R 的時間序列預測

時間序列交叉驗證

ch2_vid4_slides.005.png

R 的時間序列預測

tsCV 函式

使用時間序列交叉驗證計算 MSE

e <- tsCV (oil, forecastfunction = naive, h = 1)
mean(e^2 , na.rm = TRUE)
2355.753

當沒有參數需要估計時,tsCVh=1 會得到與殘差相同的數值

R 的時間序列預測

tsCV 函式

  sq <- function(u){u^2}
  tsCV(oil, forecastfunction = naive, h = 10) %>%
    sq() %>% colMeans(na.rm=TRUE)
      h=1       h=2       h=3       h=4       h=5       h=6
 2355.753  5734.838  9842.239 14299.997 18560.887 23264.410
      h=7       h=8       h=9      h=10
26932.799 30766.136 32892.200 32986.214

MSE 會隨著預測視窗增加而上升

R 的時間序列預測

tsCV 函式

  • 使用時間序列交叉驗證計算的 MSE,選擇最小者
  • 在你最關心的預測視窗上計算
R 的時間序列預測

一起來練習吧!

R 的時間序列預測

Preparing Video For Download...