참고 : https://otexts.com/fppkr/

[ ARIMA 모델 ]

1. 정상성과 차분

(1) 정상성

정상성 = 시계열이 관측된 시간에 무관

( 장기적으로 볼 때 예측할 수 있는 패턴을 나타내지 않을 것 )

  • 추세 or 계절성 존재 \(\rightarrow\) 정상성 X
  • 백색잡음 \(\rightarrow\) 정상성 O


주의 : (추세 X, 계절성 X, 주기성 O) 시계열은 정상성 O

  • 주기가 고정된 길이를 갖고 있지 않기 때문에, 시계열을 관측하기 전에 주기의 고점이나 저점이 어디일지 확실하게 알 수 없기 때문에


(2) 차분 (differencing)

차분 = 연이은 관측값들의 차이를 계산

분산이 다를 경우 : “로그 변환”

정상성 여부 test : with “ACF plot”

  • 정상성 X : ACF 느리게 감소
  • 정상성 O : ACF 빠르게 감소


(3) 확률 보행 모델

차분한 새로운 시계열 : \(y'\)

  • \(y_{t}^{\prime}=y_{t}-y_{t-1}\).

    ( 단, 첫 번째 관측값은 차분값 계산 불가 )


만약 차분한 시계열이 백색 잡음(WN)이라면….

  • 기존 시계열 (1) : \(y_{t}-y_{t-1}=\varepsilon_{t}\)
    • \(\varepsilon_t\) : white noise
  • 기존 시계열 (2) : \(y_{t}=y_{t-1}+\varepsilon_{t}\)
    • Random Walk (확률 보행) 모델
    • 정상성을 나타내지 않는 데이터 ( 특히 금융/경제 데이터를 다룰 때 ) 사용


(4) 2차 차분

차분을 해도, 정상성이 안보인다면?

\(\rightarrow\) 2차 차분해보기

\(\begin{aligned} y_{t}^{\prime \prime} &=y_{t}^{\prime}-y_{t-1}^{\prime} \\ &=\left(y_{t}-y_{t-1}\right)-\left(y_{t-1}-y_{t-2}\right) \\ &=y_{t}-2 y_{t-1}+y_{t-2} . \end{aligned}\).


(5) 계절성 차분

계절성 차분 = 관측치와, 같은 계절의 이전 관측값과의 차이

  • \(y_{t}^{\prime}=y_{t}-y_{t-m}\).
    • \(m\) : 계절의 개수
    • 다른 표현 : \(y_{t}=y_{t-m}+\varepsilon_{t}\)


계절성 차분 + 일반 차분

\(\begin{aligned} y_{t}^{\prime \prime} &=y_{t}^{\prime}-y_{t-1}^{\prime} \\ &=\left(y_{t}-y_{t-m}\right)-\left(y_{t-1}-y_{t-m-1}\right) \\ &=y_{t}-y_{t-1}-y_{t-m}+y_{t-m-1} \end{aligned}\).

  • if 데이터에 계절성 패턴이 강하면 … 계절성 차분을 먼저 계산!


(6) 단위근 검정 (Unit Root Test)

  • 차분을 구하는 것이 필요할지 결정하기 위해!
  • ex) PSS 검정
    • \(H_0\) : 정상성 O
    • \(H_A\) : 정상성 X


2. 후방 이동 기호

시계열 시차를 다룰 떄 유용한 표기법

  • \(B\) : “데이터를 한 시점 뒤로” 옮기는 효과
  • 적용
    • 1번 적용 시 : \(B y_{t}=y_{t-1}\)
    • 2번 적용 시 : \(B\left(B y_{t}\right)=B^{2} y_{t}=y_{t-2} .\)


“차분을 구하는 과정”에서 사용하기 편리

  • 1차 차분 :
    • \(y_{t}^{\prime}=y_{t}-y_{t-1}=y_{t}-B y_{t}=(1-B) y_{t}\).
  • 2차 차분 :
    • \(y_{t}^{\prime \prime}=y_{t}-2 y_{t-1}+y_{t-2}=\left(1-2 B+B^{2}\right) y_{t}=(1-B)^{2} y_{t}\).
  • d차 차분 :
    • \((1-B)^{d} y_{t}\).


“연산자” 사용하여 차분 시, 보통의 대수 법칙을 사용가능!

\(\rightarrow\) \(B\)를 포함하는 항은 서로 곱셈 가능

  • ex) 1차 차분 & 계절성 차분
    • \(\begin{aligned} (1-B)\left(1-B^{m}\right) y_{t} &=\left(1-B-B^{m}+B^{m+1}\right) y_{t} \\ &=y_{t}-y_{t-1}-y_{t-m}+y_{t-m-1} \end{aligned}\).


3. 자기회귀 모델 (Autoregressive Model)

AR(p) : 차수 \(p\)의 AR

  • (1 시점 이전 ~ p 시점 이전) 모두 고려
  • \(y_{t}=c+\phi_{1} y_{t-1}+\phi_{2} y_{t-2}+\cdots+\phi_{p} y_{t-p}+\varepsilon_{t}\).


AR(1)의 특징

  • \(\phi_{1}=0\) : \(y_{t}\) 는 WN
  • \(\phi_{1}=1\) & \(c=0\) 일 때, \(y_{t}\) 는 Random Walk
  • \(\phi_{1}=1\) & \(c \neq 0\) 일 때, \(y_{t}\) 는 표류가 있는 Random Walk
  • \(\phi_{1}<0\) : \(y_{t}\) 는 평균값을 중심으로 진동


AR모델을 적용하기 위해선, 우선 “정상성을 확보” 한 뒤에!

제한 조건 :

  • \(\mathrm{AR}(1)\) : \(-1<\phi_{1}<1\)
  • \(\mathrm{AR}(2)\) : \(-1<\phi_{2}<1, \phi_{1}+\phi_{2}<1, \phi_{2}-\phi_{1}<1\)


4. 이동 평균 모델 (Moving Average)

MA(q) : 차수 \(q\)의 MA

  • \(y_{t}=c+\varepsilon_{t}+\theta_{1} \varepsilon_{t-1}+\theta_{2} \varepsilon_{t-2}+\cdots+\theta_{q} \varepsilon_{t-q}\).
    • \(\varepsilon\) : WN
  • 과거 몇 개의 예측 오차(forecast error)의 가중 이동 평균
  • 주로 “과거 값의 추세-주기”를 측정할 때 사용


5. 비계절성 ARIMA

Autoregressive Integrated Moving Average

  • \(y_{t}^{\prime}=c+[\phi_{1} y_{t-1}^{\prime}+\cdots+\phi_{p} y_{t-p}^{\prime}]+[\theta_{1} \varepsilon_{t-1}+\cdots+\theta_{q} \varepsilon_{t-q}]+\varepsilon_{t}\).
    • \(y_t'\) : (1번 이상) 차분한 시계열
  • ARJMA (p,d,q)
    • \(p\) : AR 부분의 차수
    • \(q\) : MA 부분의 차수
    • \(d\) : 1차 차분의 횟수

figure2


후방이동 (Backshift) 기호 사용해서

figure2


6. Auto ARIMA

힌드만-칸다카르(Hyndman-Khandakar) 알고리즘

  • 단위 근 검정
  • AICc 최소화
  • MLE를 결합

figure2


7. 계절성 ARIMA

figure2

  • \(m\) : 매년 관측값의 개수


Ex) 분기(4)별 데이터 : ARIMA(1,1,1)(1,1,1\()_4\)

  • \(\left(1-\phi_{1} B\right)\left(1-\Phi_{1} B^{4}\right)(1-B)\left(1-B^{4}\right) y_{t}=\left(1+\theta_{1} B\right)\left(1+\Theta_{1} B^{4}\right) \varepsilon_{t}\).


8. ARIMA vs ETS

  • 모든 ETS 모델은 정상성을 나타내지 않는 경우에 맞지만,

  • 몇몇 ARIMA 모델은 정상성을 나타내는 경우에 맞음