Time Series Analysis

시계열 통계모델 2 [이론] - ARIMA / SARIMA / VAR 모형

needmorecaffeine 2023. 3. 20. 21:25

해당 포스팅은 "실전 시계열 분석" 교재와 실습코드 / 고려대학교 DMQA 강의와 강의자료 / K-Mooc 전치혁 교수님 강의를 기반으로 작성되었습니다.

 

https://www.youtube.com/watch?v=ma_L2YRWMHI&list=PLpIPLT0Pf7IqSuMx237SHRdLd5ZA4AQwd&index=9 

 

http://www.kmooc.kr/courses/course-v1:POSTECHk+IMEN677+2021_T2/about 

 

시계열분석 기법과 응용

시계열 데이터 분석을 통하여 시간에 따른 상관관계 등의 패턴 추출 및 이를 바탕으로 미래에 대한 예측을 위한 다양한 기법 학습 및 응용 능력을 배양한다.

www.kmooc.kr


1. ARIMA (Autoregressive Integrated Moving Average)

 

 ARIMA는 ARMA(Autoregressive Moving Average)모델을 확장한 것이다.

 

AR, MA, ARMA는 이전 포스팅에서 다루었다.

 

2023.03.13 - [Time Series Analysis] - 시계열 통계모델 1 [이론] - Exponential Smoothing / Holt-Winter / AR / MA

 

시계열 통계모델 1 [이론] - Exponential Smoothing / Holt-Winter / AR / MA

해당 포스팅은 "실전 시계열 분석" 교재와 실습코드 / 고려대학교 DMQA 강의와 강의자료를 기반으로 작성되었습니다. https://www.youtube.com/watch?v=ma_L2YRWMHI&list=PLpIPLT0Pf7IqSuMx237SHRdLd5ZA4AQwd&index=9 1. 시계

needmorecaffeine.tistory.com

 

ARMA와 ARIMA의 구성 요소 중 차이점은 I로 Integration, 즉 시계열 차분을 의미한다. (차분에 대한 내용도 이전 포스팅에서 다루었다.)

 

즉 차분을 통해서 비정상성을 띄던 데이터에서 정상성을 확보하며 시계열 모델링을 수행하는 것이다.

 

AR, MA, I 세가지 요소가 한번에 적합화되어 특정 시계열 데이터 특성에 맞는 모델링을 수행한다.

 

ARIMA는 그 모델링 방식에 따라 ARIMA(p,d,q)로 표기되는데 각각의 의미는 다음과 같다.

 

  • p : AR 모델을 구성하는 과거 시점 independent variable 갯수
  • d : 차분의 차수
  • q : AR 모델을 구성하는 과거 시점 independent variable 갯수

 

수식은 다음과 같다. AR, MA가 결합한 ARMA 모델에서 차분된 것을 알 수 있다.

 

$y_{t}^{'}$ = $c$ + $\phi_{1}y_{t-1}^{'}$ + $\phi_{2}y_{t-2}^{'}$ + $\cdots$ +$\phi_{p}y_{t-p}^{'}$ + $\theta_{1} \cdot \varepsilon_{t-1}$ + $\theta_{2} \cdot \varepsilon_{t-2}$ + $\cdots$ + $\theta_{q} \cdot \varepsilon_{t-q}$ + $\varepsilon_{t}$

 

p, d, q의 매개변수 조합에 따라 다음의 모델링이 가능하다.

 

  • (p,d,q) = (0,0,0) : 백색 노이즈
  • (0,1,0) : 랜덤 워크
  • (p,0,q) : ARMA(p,q)
  • (p,0,0) : AR(p)
  • (0,0,q) : MA(q)
  • (0,1,2) : 댐핑된 홀트 모델
  • (0,1,1) : SES 모델
  • (0,2,2) : 가산적 (additive) 오차를 가진 홀트 선형 모델

 

다음부터는 ARIMA 모델을 구현과 그 설계 과정을 알아보자.

 


 

2. Box - Jenkins ARIMA Prodedure

 

 

 ARIMA 모델 구축을 위해 쓰이는 대표적인 방식이 Box - Jenkins ARIMA Procedure이다.

 

다음과 같은 과정으로 진행된다.

 

  1. Data Processing : transformation, differencing을 통해 모델의 정상성 확보

  2. Identify model to be tentatively entertained

  3. Estimate Parameters

  4. Diagnosis Check : 성능 확인

  5. 4번째 과정 확인 후 그 결과에 따라 2 ~ 4번을 다시 수행하거나 해당 모델을 예측에 최종 사용

 

위 과정을 예시로 통해 확인해보면 다음과 같이 진행된다.

 

 

< Raw Data Plotting >

 

DMQA ARIMA 강의자료 (이후 이미지 출처 동일)

 

 시각화하여 확인해본다. 정상성이 의심되는 지점이 있지만 정상성 여부를 확실히 알 수 없기에 다음의 과정을 진행한다.

 

 

< ACF function을 통한 정상성 확인 >

 

 

 

 ACF, PACF와 그 해석은 이전 포스팅에서 다루었다. 

 

lag가 0일 때는 자기상관계수가 1이 이므로 lag 1 부터의 시점을 보면 계수가 천천히 감소하고 있기에 비정상성을 띈다고 할 수 있다.

 

 

< Differencing & ACF >

 

 비정상성을 띄므로 정상성 확보를 위해 쓰이는 대표적인 방식인 차분을 진행한다.

 

차분 결과에 대해서도 다시 ACF를 통해 정상성을 확인하다.

 

 

 

차분된 결과의 ACF는 위와 같은데 이전과 달리 정상성이 확보되었음을 알 수 있다.

 

 

< Graphical Method >

 

 정상성이 확보되었기에 모델링을 진행한다.

 

2번 과정의 잠정적인 모델을 정하기 위해서 다음과 같은 휴리스틱한 방법으로 (p, d, q)를 결정한다.

 

해당 방법은 주관적일 수 있으나 rule of thumb로 이해하면 된다.

 

 

아래의 ACF 예시를 통해 살펴보자.

 

 

dying down은 die out과 같은 표현으로 확실하게 위 표대로 구분할 수 없는 경우도 있지만 현재의 과정은 잠정적인 모델을 정하기 위함이므로 위 규칙을 따른다.

 

 

 

지금까지 사용했던 예시 데이터를 통해 확인해보자.

 

ACF를 보면 lag 1부터 cut off가 있고 PACF의 경우 die out 되고 있으므로 MA(1)이 적절해 보이고 이 모델로 위 과정을 수행해본다.

 

 

< Parameter Estimation >

 

 이전의 과정을 통해 잠정적인 모델은 ARIMA(0,1,1)이다. 하지만 이것이 최선의 모델링이 아닐 수 있으므로 ARIMA(0,1,2)와 같은 다른 모델과의 비교도 필요하다.

 

이렇게 최종적인 파라미터를 설정을 위한 모델 간 비교를 위해서는 모델 성능 측정을 위한 지표가 필요하다.

 

대표적인 지표로는 AIC(Akaike's Information Criteria) 가 있다.

 

ARIMA 수식을 구성하는 다양한 계수들을 잘 추정하는 것이 목적인데 AIC를 최소화 하는 것이 좋은 모형이다.

 

ARIMA의 AIC 수식부터 살펴 보면 다음과 같다.

 

$AIC = - 2 log(L) + 2 (p+q+k+1)$

 

각각의 인자는 다음을 의미한다.

 

  • p, q : ARIMA의 p, q 파라미터
  • k : ARIMA 모델의 상수항 c, c가 있으면 k = 1, 없으면 0
  • log(L) : 로그 가능도로 여러 후보 모형에 대해 각각 실제 관측데이터가 그 모형을 따를 확률 / 즉, 데이터가 잘 적합될 가능도

 

위 구성요소를 통해 알 수 있듯 AIC는

 

  • -2 log(L) : 가능도가 높을수록 AIC가 낮아짐
  • 2 (p+q+k+1) : 모형의 복잡도로 이 복잡도가 커질수록 AIC가 높아짐

 

가능도를 최대화하며 동시에 간단한 모형을 찾는 지표임을 알 수 있다.

 

이 AIC 지표를 통해 각 모형의 성능을 파악하고 이 AIC를 최소화하는 모델을 선택한다.

 

 

< Diagnosis - Performance Evaluation >

 

위에서 정한 모델을 통해 예측을 진행하고 이 예측값과 실제값을 비교해 residual을 계산하다.

 

이 residual로 다시 ACF를 그려 확인해 본다.

 

이 때 residual에 대한 3 sigma bound (대표적인 방법)를 그리고 대부분의 residual이 bound 내에 위치할 경우 해당 모델로 진행해도 된다고 최종 판단한다.

 

반대로 그렇지 않을 경우 다시 2번 과정으로 돌아간다.

 


 

3. SARIMA (Seasonal ARIMA)

이전까지 학습한 ARIMA는 비계절성, 즉 시계열에 계절성이 존재하지 않을 때 사용하기 적절한 모형이다.

 

시계열의 구성 요소 중 하나인 trend는 차분으로 제거될 수 있으나 seasonality는 차분으로 제거되지 않는다.

 

여기서 trend와 seasonality를 제거하는 이유는 정상성을 띈 시계열로 모델링을 하기 위함이다.

 

SARIMA는 기존 ARIMA 모델에 seasonality 변동을 반영한 모델이다.

 

SARIMA는 각 season에 따른 독립적인 ARIMA 모델이 합쳐져 있으며 seasonal 주기를 나타내는 s 차수가 추가되어 다음과 같이 표기된다.

 

$ARIMA(p,d,q)(P,D,Q)_{s}$

 

이 때 s는 월별 계절성은 12, 분기별 계절성은 4 등으로 그 주기에 따라 정해진다.

 

 

 

B는 Backshift Operator로 설정된 차수의 다항식을 나타내는 notation이다.

 

SARIMA(1,0,2)(2,0,1)5는 다음과 같다.

 

 

SARIMA를 유도하는 과정은 다음과 같다. (주기 s = 12를 갖는 추세없는 월별 시계열을 고려)

 

  • 매년 1월 데이터 >> MA(1) 모형을 따름 >> $Z_{t}$ = $(1-\theta B^{12})\alpha_{t}$
  • 매년 1월의 오차항 $\alpha_{t}$들, 즉 $\alpha_{t}$, $\alpha_{t-12}$, $\alpha_{t-24}$들은 서로 상관관계가 없다.
  • 하지만 MA(1) 모형을 따르는 2월 데이터는 1월 데이터와 오차항 간에는 상관관계가 있음
  • 새로운 모형 : $Z_{t}$ = $(1-\theta B)(1-\theta B^{12})a_{t}$ ($a_{t}$는 white noise)
  • 이를 ARIMA(0,0,1) x (0,0,1)12 라고 함.

 

계절성을 없애기 위해 계절성 차분을 적용할 수 있다.

 

1차 계절성 차분은 인근한 두 계절 값의 차이를 산출하는 것을 의미하고 수식으로는 다음과 같다.

 

$Z_{t}$ - $Z_{t-s}$ = $(1-B^{s})Z_{t}$

 

K-MOOC 전치혁 교수님 강의 자료 (이후 출처 동일)

 

SARIMA 모형을 설계하는 과정은 다음과 같다.

 

  • 시계열 plot을 보고 추세 및 계절성 존재 여부를 판단
  • 아래 사항대로 차분 실시
    • 추세 X / 계절성 O : 해당 주기에 맞추어 차분 실시
    • 추세 O / 계절성 X : 선형 추세 > 1차 차분 / 곡선 형태 추세 > 함수 변환
    • 추세 O / 계절성 O : 계절성 차분을 한 후 추세를 다시 검토, 추세가 남아있는 경우 1차 차분 실시
  • ACF와 PACF로 p, q, P, Q 결정
    • p, q : ARIMA 모형과 동일
    • P, Q : 주시의 배수에서 나타나는 ACF, PACF로 결정
  • 성능 기준 최종 파라미터 추정
  • 잔차 검정

 

위 단계에서 시각적으로 확인하는 단계별 예시는 다음과 같다.

 

최초 데이터

 

계절성 차분 결과

 


4. VAR (Vector Auto Regressive), 벡터자기회귀모형

 

4-1. VAR 개념

 

 시계열의 벡터의 개념이 적용되는데 이는 여러 시계열을 동시에 고려하여 상호 연관성을 분석하기 위함이다.

 

다음과 같은 3개의 시계열이 있는 경우로 생각해볼 수 있다.

 

  • 시계열 1 : $Z_{1t}$ = 분기별 소비
  • 시계열 2 : $Z_{2t}$ = 분기별 소득
  • 시계열 3 : $Z_{3t}$ = 분기별 자산

이 세가지 시계열은 직관적으로 생각해도 상호 연관성이 존재할 것이다. 이와 같은 여러 시계열을 고려하기 위해 벡터 시계열을 구성하고 다음과 같이 표현된다.

 

$Z_{t}$ = $\begin{pmatrix}Z_{1t}\\Z_{2t}\\Z_{3t}\\ \end{pmatrix}$ , $t = 1,2, \cdots (time)$

 

이와 같이 여러 시계열을 동시에 고려하는 대표적인 모형이 VAR 모형이다.

 

VAR 모형은 다음의 모형별 비교로 이해할 수 있다.

 

  • 한 시계열에 대한 AR(1) 모형

    • $Z_{t}$ = $\phi_{1}Z_{t-1} + a_{t}$

  • 두 시계열에 대한 VAR(1) 모형

    • $Z_{1t}$ = $\phi_{11}Z_{1,t-1} + \phi_{12}Z_{2,t-1} + a_{1t}$

    • $Z_{2t}$ = $\phi_{21}Z_{1,t-1} + \phi_{22}Z_{2,t-1} + a_{2t}$

    • 두 시계열은 보면 각각 다른 시계열의 한 시점 이전 (t-1)의 영향을 받고 있음을 알 수 있다.

    • 여기서 $a_{1t}$ 는 평균이 0, 분산 $\sigma_{1}^{2}$,  $a_{2t}$ 는 평균 0, 분산 $\sigma_{2}^{2}$ 인 정규분포를 따른다. $Cov[a_{1t}, a_{2t}]$ = $\sigma_{12}$ 로 표현한다.

    • 최종적으로 다음과 같다. (MVN = multivariate normal)

 

일반화한 VAR 모형은 다음과 같다.

 

 

 

4-2. VAR 분석

VAR은 이전의 AR, MA, ARIMA 계열과 약간은 다른 분석 과정을 거친다.

 

<VAR 분석 과정>

  • 전처리 + 정상성 확인 및 교정 (정상성 판단 조건은 아래와 같이 기존 모형들과 다름)
  • 단일 시계열 내의 auto correlation + 시계열들 간의 correlation 확인
  • Granger Casuality Test
  • VAR 분석
  • 충격반응모형 / 예측오차분산분해

 

위 도식과 같이 본격적인 VAR 분석 이전에 Granger Casuality 분석을 진행해야 한다.

 

자세한 내용은 이제 서술하겠지만 서로 다른 시계열 간 인과관계가 있는지 검정하는 것인데 여기서 인과관계가 드러나지 않는다면 굳이 VAR을 사용하지 않고 시계열 간 별도의 모형으로 분석하면 되기 때문이다.

 

먼저 왼쪽 축인 정상적 시계열일 경우의 과정들을 살펴보자.

 

4-2-1. 정상적 시계열

 

1) 정상성

 

VAR의 정상성을 판단하는 조건은 다음과 같다.

 

  • VAR(1) 정상성 조건

    • 모형 : $z_{t}$ = $\phi_{1}Z_{t-1}$ + $a_{t}$

    • 계수행렬 $\phi_{1}$ 의 고유치 (eigen value)의 크기가 모두 1보다 작아야 한다.

    • $det \phi(x)$ = $det(I - \phi_{1}x)$ = 0의 근들의 크기가 모두 1보다 커야 한다.

  • VAR(p) 정상성 조건

    • 모형 : $z_{t}$ = $\phi_{1}Z_{t-1}$ +  $\phi_{2}Z_{t-2}$ + $\cdots$ + $\phi_{p}Z_{t-p}$ + $a_{t}$

      $\phi(B)z_{t}$ = $a_{t}$, $\phi(x)$ = $I - \phi_{1}x - \cdots - \phi_{p}x^{p}$

    • $det \phi(x)$ = $det(I - \phi_{1}x - \cdots - \phi_{p}x^{p})$ = 0의 근들의 크기가 모두 1보다 커야 한다.

    • $y_{t}$ = $Fy_{t-1}$ + $v_{t}$의 형태에서 행렬 F의 고유치들의 크기가 모두 1보다 작아야 한다.

    • 다음의 예시 참고

 

 2) 단일 시계열 내의 auto correlation + 시계열들 간의 correlation 확인

 

 이전의 모형들과 같은 방식으로 진행하되 VAR에서는 다수의 시계열을 고려하기에 시계열 간의 correlation도 살펴봐야 한다.

 

이 과정은 변수 및 시계열 간의 관계를 확인하기 위한 작업으로 이후의 모형 구축에 참고하지만 정상성 확인 단계에서의 정상성 교정과 같은 후처리 과정은 따르지 않는다.

 

다수의 시계열의 correlation은 Correlation table과 Heatmap을 그려 확인해보면 된다.

 

3) Granger Casuality Test

 

 이전까지의 단계에서는 시계열 A가 시계열 B에 영향을 미쳤는지, 시계열 B가 시계열 A에 영향을 미쳤는지 까지는 알 수 없다. 즉 이전까지의 단계에서는 인과관계의 유무와 방향을 확인할 수 없다.

 

이를 알기 위해서 하는 검정이 Granger Casulity 검정이다.

 

귀무가설 = 두 변수 사이에 Granger Casuality가 없다. = 한 변수가 다른 변수를 예측하는데 도움이 되지 않는다.

 

핵심 아이디어 = $X_{t}$의 과거 값을 사용하여 그렇지 않을 때 보다 $Y_{t}$의 값을 보다 정확하게 예측할 수 있다면 $X_{t}$가 $Y_{t}$에 영향을 미친다고 결론을 내리자! 이를 $X_{t}$가 $Y_{t}$를 Granger Cause 한다고 명명하자!

 

검정 절차는 F-test의 메커니즘과 동일하다.

 

위 핵심 아이디어대로 검정하는 절차는 다음과 같다.

 

  • $Y_{t}$를 자신의 시차변수에 대해 회귀분석하고 RSS, $RSS_{R}$을 구함
    • $Y_{t}$ = $\alpha_{10}$ + $\sum_{j}^{p}\gamma_{j}$ $Y_{t-j}$ + $e_{yt}$

  • $Y_{t}$를 자신과 $X_{t}$의 시차변수에 대해 회귀분석하고 RSS, $RSS_{U}$을 구함
    • $Y_{t}$ = $\alpha_{10}$ + $\sum_{i}^{m}\beta_{i}$ $X_{t-i}$+$\sum_{j}^{p}\gamma_{j}$ $Y_{t-j}$ + $e_{yt}$

  • 가설
    • $H_{0}$ : $\sum_{i}^{m}\beta_{i}$ = 0
    • $H_{1}$ : $\sum_{i}^{m}\beta_{i}$ != 0

  • F - 검정
    • $F$ = $\frac{(RSS_{R} - RSS_{U})/n}{RSS_{U} / (m-k)}$ ~ $F{n, m-k}$

 

 이렇게 설정된 검정 과정을 $X_{t}$의 $Y_{t}$에 대한 영향, $Y_{t}$의 $X_{t}$에 대한 영향 두가지 검정을 실시하고 동시에 lags를 바꾸어 가며 반복해 검정한다. 이 때 lags는 사용자가 적당하다고 생각한 수준까지 휴리스틱하게 설정한다.

 

이렇게 검정을 하면 총 4가지 경우가 생길 수 있고 각각의 해석은 다음과 같다.

 

  • $X_{t}$ --> $Y_{t}$ Casuality O /  $X_{t}$ --> $Y_{t}$ Casuality X : 변수 A가 변수 B에 선행하며 A가 B의 인과요인이다.

  • $X_{t}$ --> $Y_{t}$ Casuality X /  $X_{t}$ --> $Y_{t}$ Casuality O : 변수 B가 변수 A에 선행하며 B가 A의 인과요인이다.

  • $X_{t}$ --> $Y_{t}$ Casuality O /  $X_{t}$ --> $Y_{t}$ Casuality O : 제3의 외부 변수 (Exogenous Variable)이 공통으로 영향을 주었을 가능성이 높다. 이 외부 변수를 알아내야 한다.

  • $X_{t}$ --> $Y_{t}$ Casuality X /  $X_{t}$ --> $Y_{t}$ Casuality X : 쌍방 영향이 없다.

 

마지막 경우와 같이 영향이 없다고 판정되더라도 입력한 lag에 따라 결과는 달라질 수 있어 반드시 영향이 없거나 있다고 확정할 수는 없다. 하지만 어느 정도 신뢰성이 있다고 판단된다면 쌍방의 영향이 없는 상태이기에 VAR 분석을 할 이유가 없다.

 

다시 말해, 마지막 경우에 해당되지 않을 때에만 VAR 분석을 진행한다.

 

4) VAR 분석

 

이전의 다른 모형들과 마찬가지로 VAR 또한 그 파라미터 p값을 정해야 한다.

 

ARIMA의 경우 ACF, PACF 그래프를 살펴보고 그 파라미터들을 정하는 방법이 존재했으나 VAR은 교차 상관관계가 존재해 이 방법으로 파라미터 p를 정하기 쉽지 않다.

 

따라서 정보 기준 (information criteria)를 사용한다.

 

여러 시차에 대해 대표적인 criteria인 AIC, BIC, HQ 등을 산출하고 이 정보 기준 값이 최소인 시차 p를 선택하는 방식인데 실제로 많이 사용되는 방식이다.

 

각 criteria 마다 최소값을 반환하는 p가 다를 수 있지만 여러 지표를 기준으로 최소값을 가장 많이 반환하는 p를 선택해 사용한다.

 

이렇게 구축된 모형의 각 계수와 그 유의성을 확인한 후 분석한 시계열들이 서로 영향을 끼치고 있는가를 확인한다.

 

 

5) 충격반응함수 (IRF, Impulse-Response Function)

 

 충격반응함수, IRF는 한 시계열에 특정시점에서 충격이 발생할 때 다른 시계열에 시간에 따라 어떤 영향을 주는지 분석하기 위해 사용된다.

 

서로 간의 영향력은 4) VAR 분석 결과로 나온 VAR result table의 coefficient를 통해서 확인할 수 있지만 이는 한계가 있기에 IRF를 사용한다.

 

VAR(1) 모형을 다시 상기해보자.

 

  • $Z_{1t}$ = $\phi_{11}Z_{1,t-1} + \phi_{12}Z_{2,t-1} + a_{1t}$

  • $Z_{2t}$ = $\phi_{21}Z_{1,t-1} + \phi_{22}Z_{2,t-1} + a_{2t}$

 

충격과 반응은 다음과 같이 가정해보자.

 

 

충격 = 시점 1에서 $Z_{1t}$에만 $\sigma_{1}$의 충격이 있고 $Z_{2t}$에는 충격이 없음, 다른 시점에는 충격 없음

 

<가정>

  • $a_{11}$ = $\sigma_{1}$, $a_{1t}$ = 0, t > 1
  • $a_{2t}$ = 0, t >= 1
  •  $Z_{10}$ =  $Z_{20}$ = 0

 

반응 / 반응함수 = 시간에 따른 $Z_{1t}$, $Z_{2t}$에의 영향

 

  • t = 1
    • $Z_{11}$ = $a_{11}$ = $\sigma_{1}$ 
    • $Z_{21}$ = $a_{21}$ = 0
    • t=1에서 $Z_{1}$에만 충격이 $\sigma_{1}$ 만큼 있고 $Z_{2}$에는 충격이 없다.

  • t = 2
    • $Z_{11}$ = $\phi_{11}Z_{11}$ + $\phi_{12}Z_{21}$ + $a_{12}$ = $\phi_{11}\sigma_{1}$
    • $Z_{22}$ = $\phi_{21}Z_{11}$ + $\phi_{22}Z_{21}$ + $a_{22}$ = $\phi_{21}\sigma_{1}$
    • t=1에서 $Z_{1}$에 $\phi_{11}\sigma_{1}$ 만큼, $Z_{2}$에는 $\phi_{21}\sigma_{1}$ 만큼 충격이 있다.

  • t = 3
    • $Z_{13}$ = $\phi_{11}Z_{12}$ + $\phi_{12}Z_{22}$ + $a_{13}$ = $(\phi_{11}^{2}+\phi_{12}\phi_{21})\sigma_{1}$
    • $Z_{23}$ = $\phi_{21}Z_{12}$ + $\phi_{22}Z_{22}$ + $a_{23}$ = $(\phi_{21}\phi_{11}+\phi_{22}\phi_{21})\sigma_{1}$

 

이러한 과정으로 분석하는 것을 충격반응함수 IRF라고 한다.

 

위 내용은 간단한 VAR(1) 모형으로 살펴보았는데 t=1이 아닌 모형에 대해 위 과정을 그대로 수행하게 된다면 여러 문제점이 있다.

이에 다음과 같은 모형 변환 과정을 거쳐야 한다.

 

 

MA형태에서 직교오차 MA 형태로 분해하기 위해서는 $\sum$의 분해가 필요하다.

 

이를 위해 다음의 과정을 거친다.

 

  • LDL 분해 : positive definite 대칭행렬 분해 
    • $\sum$ = $PP^{T}$ ($P = LD^{1/2}$)

  • 직교 오차 변환
    • $v_{t}$ = $P^{-1}a_{t}$
    • $Var[v_{t}]$ = $Var[P^{-1}a_{t}]$ = $P^{-1}\sum (P^{-1})^{T}$ = I

위 과정을 거친 후 최종적인 직교오차 MA 형태를 갖게 된다.

 

IRF는 다음과 같이 표기된다.

 

IRF(i, j, s) = j번째 시계열의 충격에 대한 i번째 시계열의 시간 s 이후의 반응 = $\Psi_{s}$ 의 (i,j) 원소

 

6) 예측오차 분산분해

 

 예측오차 분석분해는 미래값을 예측하고 예측오차의 분산을 시계열별로 분해하는 과정을 의미한다.

 

어떤 시계열이 상대적으로 어떤 영향을 끼치고 있는지 중요도를 산출하기 위함인데 위 과정을 통해 소득과 저축이 소비에 모두 영향을 주고 있다고 분석하더라고 소득이 소비에 더 큰 영향을 미치는지, 저축이 더 큰 영향을 미치는지, 즉 어떤 시계열이 더 주요한 영향을 미치고 있는지 파악할 수 있도록 하는 것이 예측오차 분산분해이다.

 

예측 오차에는 여러 시계열 변수들의 충격이 포함되어 있는데 이 예측오차의 분산을 VAR에 구성된 시계열 변수의 오차의 중요성을 파악하는 것으로 그 중요성을 판단하는 것이다.

 

다음과 같이 계산된다.

 

 

 

 

 

4-2-2. 비정상적 시계열

 

 이전까지 다룬 VAR 모형은 정상적 시계열에 대해서만 적용된다.

 

하지만 경제/금융 관련 시계열은 비정상성을 띄는 경우가 많다. 동시에 장기적으로 균형 관계를 갖는 경우가 많은데 소득과 소비가 그 예시이다.

 

소득과 소비 모두 계절성을 띄는 등 여러 이유로 비정상성을 띄게 되는데 직관적으로 이 둘은 장기적으로 균형적인 관계를 갖는다.

 

이런 관계를 공적분 (Cointegration) 관계라 한다. 자세한 내용은 이후에 다루겠다.

 

AR, MA, ARIMA에서 비정상성을 띄는 시계열의 정상성 확보를 위해 대표적으로 쓰이는 방법이 차분이다.

 

VAR에서도 물론 차분을 통해 정상성을 확보할 수 있다.

 

하지만 각각을 차분하여 정상적 시계열로 변환한 후 VAR 분석을 하는 것보다 직접적으로 회귀 모형화하여 분석하는 것이 더 많은 정보를 얻을 수 있다.

 

이는 차분을 하게 되면 변수 간 장기적 관계에 대한 정보를 상실하기 때문이다.

 

여기서 유의할 점은 두가지가 있다.

 

  • 공적분 관계가 없는 비정상적 시계열을 대상으로 회귀분석을 하면 가성 회귀 (Spurious Regression)의 문제가 발생할 수 있다.
    • 가성 회귀 = 실제로 두 변수 간 아무 관련이 없음에도 불구하고 그저 시간이 지남에 따라 증가하는 Trend로 인해서 유의한 관계를 가지고 있다고 잘못 판단하게 되는 것

  • 공적분 분석을 위해서는 각 시계열이 동일 차수의 누적 시계열이여야 함. (후술)

 

1) 누적 (integrated) 벡터 시계열

 

  누적 벡터 시계열은 다음과 같이 정의된다.

 

벡터 시계열 $(x_{t}, t>=1)$에 대해 $((1-B)^{d-1}x_{t}, t>=1)$는 비정상적이나 $((1-B)^{d}x_{t}, t>=1)$이 정상적일 때, 차수 d의 누적벡터 시계열이라고 하며 $(x_{t}, t>=1) ~I(d)$로 표기한다.

 

즉, 어떤 비정상적인 시계열이 1차 차분 후 비정상성을 띄고 2차 차분 후 정상성을 띈다면 이 시계열을 차수 2의 누적벡테 시계열이라고 한다.

 

2) 공적분 (Cointegration)

 

 $I(d)$인 누적벡터 시계열을 선형결합 $\alpha^{T}x_{t}$ 했을 때 이것이 차수 d 미만의 누적벡터시계열이 될 때, 공적분 벡터 $\alpha$를 갖는 공적분 관계에 있다고 한다.

 

이 때 총 m개의 시계열이 있을 때 최대 m-1개의 공적분 벡터가 있을 수 있고 존재하는 공적분 벡터의 최대 갯수를 공적분 랭크라고 한다.

 

3) 오차수정모형 (Error Correction Model, ECM)

 

 공적분을 다룬 이유는 이 ECM 표현을 위해 공적분 관계가 필요충분조건이기 때문이다.

 

이 오차수정모형은 여러 시계열이 공적분 관계가 있을 때 ECM을 통해 시계열 상호간의 미치는 단기, 장기 효과를 분석할 수 있기 때문이다.

 

시계열 간 균형 오차를 구해 오차수정모형으로 검정하면 각 계수(다른 시계열의 영향력)의 유의성이 있는지 확인할 수 있다.

 

ECM을 유도하는 예는 다음과 같다.

 

 

다음은 일반화된 ECM이다.

 

 

이 ECM을 벡터 ECM(VECM)으로 확장하면 다음과 같다.

 

 

4) 공적분 검정

 

 공적분 검정을 위해서는 다음과 같은 두가지 검정이 주로 사용된다.

 

 


Ref