7.8 연습문제
pigs
시계열을 살펴봅시다 — 호주 빅토리아 주에서 매달 도축하는 돼지의 수입니다.- \(\alpha\)와 \(\ell_0\)의 최적값을 찾기 위해, R에서
ses()
함수를 사용해보고, 다음 4개의 달에 대한 예측값을 내봅시다. - \(\hat{y} \pm 1.96s\)을 이용하여 첫 번째 예측값에 대한 95% 예측 구간을 계산해봅시다. 여기에서 \(s\)는 잔차의 표준 편차입니다. R이 내는 구간과 여러분의 구간을 비교해봅시다.
- \(\alpha\)와 \(\ell_0\)의 최적값을 찾기 위해, R에서
단순 지수 평활을 구현하는 함수를 작성해봅시다. 함수는 다음과 같은 입력값을 사용해야합니다.
y
(시계열),alpha
(평활 매개변수 \(\alpha\)),level
(초기 수준 \(\ell_0\)). 시계열에서 다음 관측의 예측값을 돌려줘야 합니다. 작성한 함수가ses()
로 얻은 예측값과 같은 결과를 냅니까?이전 연습 문제에서 작성한 여러분의 함수가 다음 관측에 대한 예측값을 돌려주는 대신 제곱 오차의 합을 돌려주도록 수정해봅시다. 그리고 \(\alpha\)와 \(\ell_0\)의 최적값을 찾기 위해
optim()
함수를 사용해봅시다.ses()
함수가 내는 값과 같은 결과를 얻습니까?\(\alpha\)와 \(\ell_0\)의 최적값 둘 다를 찾고, 시계열에서 다음 관측에 대한 예측치를 내는 한 함수로 만들기 위해 여러분의 두 함수를 결합해봅시다.
books
데이터에는 같은 상점에서 문고판과 양장본 책의 일일 판매량이 있습니다. 문고판과 양장본 책의 다음 4일 판매량을 예측해봅시다.- 시계열을 그리고 데이터의 주요 특징을 이야기해봅시다.
- 각 시계열을 예측하기 위해
ses
함수를 이용해보고 예측값을 그려봅시다. - 각 경우에 훈련 데이터에 대한 RMSE 값을 계산해봅시다.
books
데이터에서 문고판(paperback)과 양장본(hardcover) 책의 일별 판매량을 다뤄봅시다.paperback
과hardback
시계열에 홀트의 선형 기법을 적용해보고, 각각의 경우에 4일 예측값을 계산해봅시다.- 두 시계열에 대한 Holt 기법의 RMSE 측정값을 이전 문제에서의 단순 지수평활의 경우와 비교해봅시다. (Holt의 기법은 SES보다 매개변수를 하나 더 사용합니다.) 이러한 데이터에 대한 두 예측 기법의 장점을 이야기해봅시다.
- 두 기법 다 사용하여 두 시계열에 대한 예측값을 계산해봅시다. 어떤 것이 좋다고 생각하십니까?
- 각 시계열에서 RMSE 측정값과 정규 분포를 따르는 오차를 가정하여 첫 번째 예측치에 대한 95% 예측 구간을 계산해봅시다.
ses()
와holt()
를 사용하여 얻은 구간과 비교해봅시다.
이 연습문제에서, 미국에서 1900년부터 1993년까지의 달걀 12개 가격 데이터를 (데이터 이름은
eggs
입니다.) 사용합시다.holt()
함수에서 감쇠 추세나 박스-칵스(Box-Cox) 변환에 따라 예측값이 얼마나 변하는지를 살펴보기 위해 다양한 옵션을 이용하여 실험해봅시다. 어떤 입력값이 예측값에 영향을 줄 지 직관적으로 생각해봅시다.[힌트:
holt()
함수를 호출할 때h=100
를 사용해봅시다. 그러면 예측값을 그래프로 나타낼 때 다양한 옵션 사이의 차이를 분명하게 확인할 수 있습니다.]어떤 모델이 가장 좋은 RMSE 값을 냅니까?
(2.10 절의 연습 문제 1에서 사용했던) 소매 시계열 데이터로 다시 돌아가봅시다.
- 이 시계열에서 왜 곱셈 계절성이 필요합니까?
- 홀트-윈터스(Holt-Winters) 곱셈 기법을 데이터에 적용해봅시다. 추세를 감쇠하게 만들어서 실험해봅시다.
- 두 기법의 한 단계 예측값의 RMSE를 비교해봅시다. 여러분은 어떤 것을 선호하십니까?
- 가장 좋은 기법에서 얻은 잔차가 백색잡음처럼 보이는지 확인해봅시다.
- 이제 2010년 말까지의 데이터로 모델을 학습시켜서 테스트 데이터의 RMSE를 구해봅시다. 3.7 절의 연습문제 8에서 계절성 단순 기법으로 얻은 것보다 나을 수 있습니까?
같은 소매 데이터에서, 계절성으로 조정된 데이터에 대한 ETS 다음에 나오는 박스-칵스(Box-Cox)로 변환된 시계열에 STL 분해를 적용해봅시다. 테스트 데이터에 대해 여러분이 이전에 얻은 가장 좋은 예측값과 비교하면 어떻습니까?
이 연습문제에서, 1977년 1분기부터 2005년 1분기까지 분기별 영국 승용차 생산 데이터를 사용합시다(데이터 모음
ukcars
).- 데이터를 그려보고 시계열의 주요 특징을 설명해봅시다.
- STL을 이용하여 시계열을 분해해보고, 계절성으로 조정된 데이터를 구해봅시다.
- 계절성으로 조정된 데이터에 적용된 덧셈 감쇠 추세 기법을 사용하여 시계열의 다음 2년을 예측해봅시다. (다음의 입력값
etsmodel="AAN", damped=TRUE``stlf
과 함께stlf()
를 사용하여 한 번에 할 수 있습니다.) - 계절성으로 조정된 데이터에 적용된 홀트(Holt)의 선형 기법을 사용하여 시계열의 다음 2년을 예측해봅시다(
damped=FALSE
를 제외하면 이전의 경우와 같습니다). - 이제 데이터에 대한 계절성 모델을 고르기 위해
ets()
를 사용합시다. - STL 분해를 사용하여 여러분이 얻은 모델의 RMSE와 ETS 모델의 RMSE를 비교해봅시다. 어떤 경우가 표본 안에서 더 잘 맞습니까?
- 4가지 접근방식으로 얻은 예측값을 비교해봅시다. 어떤 것이 가장 그럴듯합니까?
- 여러분이 선호하는 모델의 잔차를 확인해봅시다.
이 연습문제에서는, 1985년 5월부터 2005년 4월까지 해외에서 호주로 들어오는 단기 방문자의 월별 데이터를 사용합시다(데이터 모음:
visitors
.)- 여러분의 데이터의 시간 그래프(time plot)를 그려보고 시계열의 주요 특징을 설명해봅시다.
- 여러분의 데이터를 학습 데이터와 사용할 수 있는 데이터의 마지막 2년으로 구성된 테스트 데이터로 나눠봅시다. 홀트-윈터스(Holt-Winters) 곱셈 기법을 사용하여 테스트 데이터를 예측해봅시다.
- 여기에서 곱셈 계절성이 왜 필요합니까?
- 다음과 같은 기법 각각을 사용하여 2년 테스트 데이터를 예측해봅시다:
- ETS 모델;
- 박스-칵스(Box-Cox) 변환된 시계열에 적용된 덧셈 ETS 모델;
- 단순 계절성 기법;
- 계절성으로 조정된 (변환된) 데이터에 적용된 ETS 모델에 이어 박스-칵스(Box-Cox) 변환된 데이터에 적용된 STL 분해.
- 어떤 기법이 가장 좋은 예측값을 냅니까? 그 기법이 잔차 검증을 통과합니까?
- 학습 데이터와 테스트 데이터를 이용하는 대신
tsCV()
함수를 이용한 시계열 교차 검증으로 5가지 같은 기법을 비교해봅시다. 같은 결론을 얻습니까?
아래의
fets()
함수는 ETS 예측값을 냅니다.<- function(y, h) { fets forecast(ets(y), h = h) }
- \(h=4\)인 예측 범위에 대해
tsCV()
를 사용하여 ETS와 계절성 단순 기법을qcement
데이터에 적용해봅시다. (힌트:fets()
와snaive()
함수를 예측함수의 입력값으로 사용해봅시다.) - \(4\)-단계-앞 결과의 오차를 MSE로 계산해봅시다. (힌트: 빠진 값missing value을 제거했는지 확인해봅시다.) 왜 빠진 값이 있습니까? 어떤 예측값이 더 정확한지 이야기해봅시다. 여러분이 예상했던 결과와 같습니까?
- \(h=4\)인 예측 범위에 대해
ets()
,snaive()
,stlf()
를 다음과 같은 6개 시계열에 대해 비교해봅시다.stlf
에 대해 박스-칵스(Box-Cox) 변환을 사용해야할 수도 있습니다. 어떤 것이 가장 좋은 예측값을 내는지 결정하기 위해 3년의 테스트 데이터를 사용합시다.ausbeer
,bricksq
,dole
,a10
,h02
,usmelec
.- 아래의 시계열에
ets()
를 적용해봅시다:bicoal
,chicken
,dole
,usdeaths
,lynx
,ibmclose
,eggs
. 이 방법이 항상 좋은 예측값을 냅니까? - 이 방법이 제대로 작동하지 않는 예제를 찾아봅시다. 왜 그런지 설명할 수 있겠습니까?
- 아래의 시계열에
ETS(M,A,M) 모델에서 얻은 점 예측값이 홀트-윈터스(Holt-Winters)의 곱셈 기법으로 얻은 결과와 같다는 것을 증명해봅시다.
ETS(A,N,N) 모델에 대한 예측 분산이 아래와 같이 주어지는 것을 증명해봅시다. \[ \sigma^2\left[1+\alpha^2(h-1)\right]. \]
오차가 정규 분포를 따른다고 가정하고 ETS(A,N,N) 모델에 대한 95% 예측 구간을 \(\ell_T\), \(\alpha\), \(h\), \(\sigma\)의 함수로 적어봅시다.