1. Belajar
  2. /
  3. Kursus
  4. /
  5. R로 배우는 시계열 예측

Connected

Latihan

비계절성 데이터에서 auto.arima()와 ets() 비교

AICc 통계량은 같은 모델 계열 내에서 모델을 선택할 때 유용합니다. 예를 들어 ETS 모델들 중에서 선택하거나 ARIMA 모델들 중에서 선택할 때 사용할 수 있어요. 그러나 ETS와 ARIMA는 서로 다른 모델 계열이기 때문에, AICc로 두 모델 계열을 직접 비교할 수는 없습니다.

대신, 시계열 교차 검증을 사용하여 austa 데이터에서 ARIMA 모델과 ETS 모델을 비교할 수 있습니다. tsCV()는 예측 객체를 반환하는 함수가 필요하므로, 모델을 적합하고 예측을 반환하는 간단한 함수를 설정하겠습니다. tsCV()의 인수는 시계열, 예측 함수, 예측 지평 h입니다. 2장에 나온 코드 조각을 다시 살펴보세요:

e <- matrix(NA_real_, nrow = 1000, ncol = 8)
for (h in 1:8)
  e[, h] <- tsCV(goog, naive, h = h)
  ...

또한, R의 파이프 연산자는 왼쪽에 있는 값을 받아 오른쪽에 있는 함수의 인수로 차례대로 전달한다는 점을 기억하세요. 이전 장에서 보았던 코드를 바탕으로 한 예시는 다음과 같습니다:

# ets()로 적합한 lynx 시계열의 20년 예측을 그립니다
lynx %>% ets() %>% forecast(h = 20) %>% autoplot()

이번 연습에서는 austa에 적용한 두 예측 함수의 MSE를 비교하고, 더 좋은 예측을 내는 함수로 미래 값을 예측하여 그래프로 그려 보겠습니다. austa는 워크스페이스에 이미 로드되어 있어요.

Instruksi

100 XP
  • auto.arima() 결과를 예측하도록 farima() 함수를 완성하세요. ets()에 대해 동일한 작업을 수행하는 fets()의 미리 작성된 코드를 참고해 같은 구조로 작성하면 됩니다.
  • tsCV()를 사용해 한 걸음 예측 오차로 austa에 대한 ETS 모델의 교차 검증 오차를 계산하고, 이를 e1에 저장하세요.
  • tsCV()를 사용해 한 걸음 예측 오차로 austa에 대한 ARIMA 모델의 교차 검증 오차를 계산하고, 이를 e2에 저장하세요.
  • 각 모델 계열의 교차 검증 MSE를 계산하고 결측값을 제거하세요. MSE 계산 방법이 기억나지 않으면 이전 장을 참고하세요.
  • 더 좋은 모델 계열을 사용해 austa의 향후 10년 예측을 만들고 그래프로 표시하세요.