본문 바로가기
시계열 데이터

시계열 데이터 - ACF, PACF 로 ARIMA 모델 계수, 차수 선택하기

by Tiabet 2023. 5. 27.

저번 방학에 혼자 시계열 데이터를 공부하면서 ARIMA 모델에 대해 다루었다. 그때 당시에 혼자서 공부하다 보니 자세히 몰랐던 부분이 있었는데, 학기 중에 시계열 데이터 수업을 들으면서 확실히 알게 된 내용이 있어 정리하고자 한다. 바로 ACF, PACF 그래프 보고 ARIMA 모델의 차수 p, q 를 선택하는 방법이다.

 

(출처 : 수업자료, 수업자료의 출처는 아래 교재입니다.)

https://www.wiley.com/en-ie/Applied+Econometric+Time+Series,+4th+Edition-p-9781118808566 

 

https://tiabet0929.tistory.com/8

 

시계열 데이터 - AR,MA,ARIMA 모델

시계열 데이터 공부를 시작하고 거의 한 달 만에 ARIMA 모델까지 오게 되었다. 그동안 다른 공부할 거리 때문에 너무 바빴는데, 일 하나가 끝나면 다른 일이 생기고 계속 바쁜 나머지 공부에 많은

tiabet0929.tistory.com

(지금은 글을 짧게짧게 끊어서 쓰고 있지만 이때는 아주 길게 썼다.)

ARIMA 모델의 차수를 선택하는 방법은 위와 같이 표로 간단하게 정리할 수 있었다. 하지만 왜 이런 결과가 나오는지에 대해선 자세히 설명한 자료가 없어서, 혼자서 열심히 머리를 굴려볼 수밖에 없었다. 그 결과 아래와 같은 결과를 혼자서 도출해냈다.

지금 봐도 맞는 말이다. 하지만 나 스스로도 이 설명에 완전히 납득할 수는 없었다. 뭔가 찝찝함이 남았었달까... 당시엔 그냥 받아들이고 넘어갔었는데, 이번에 수업을 들으면서 완전한 해답을 얻을 수 있었다. 

 

찝찝함의 원인은 내가 ARIMA 모델이 수학적 모델임에도 불구하고, 수학적으로 이해하려는 것을 살짝 피했기 때문이었다.

ARIMA 모델은 기본적으로 위와 같은 수학적인 공식이다. 즉 우리가 어떤 데이터를 갖고 ARIMA 모델을 만든다는 의미는 결국 위 수식에 맞는, 적절한 계수들과 적절한 차수들(p,q)를 끼워넣는다는 것이다. 그러면 역으로 생각해보자. 적절한 계수들과 적절한 차수들을 먼저 대입하여 수식을 만든 뒤, 이 수식의 ACF와 PACF를 그려볼 수 있다. 

 

위의 그래프를 보자. MA(1) 모델의 ACF 그래프다. 너무나 당연하게도 시차 1 이후에 이 모델은 어떠한 상관관계도 가질 수가 없다. (백색소음 끼리는 상관관계가 없다.) 그렇다면 PACF는 어떨까?

그래프를 자세히 보면 lag 1 : (0.7)^2 , lag 2 : (0.7)^3 ... 이런 식임을 알 수 있다.

이번엔 점진적으로 감소하는 모습이다. 이를 설명하기 위해서 수학공식 하나를 더 끌고 와 보겠다.

왜 이렇게 되는지, 저 L은 무엇인지 간략하게 설명하고 넘어가겠다.

L은 Lag Operator 로, 간단히 말하자면 t 를 t-1로 바꿔주는 기호이다. 시차를 적용시키는 기호다. 무한제곱급수의 성질과 이 Lag Operator를 사용하여 식을 전개하면, y가 쭉 β에 영향을 받고 있음을 확인할 수 있다. 그래서 PACF 는 곧바로 0이 되는 것이 아닌 서서히 감소하는 모양인 것이다. 

 

다소 인문학적으로 이해해보자면, PACF를 만드려면 시차 사이의 영향을 제거해줘야하는데, MA 과정은 오히려 값들이 랜덤하기 때문에 이 영향을 제거하는 과정에서 저런 간섭이 생긴다고 생각해볼 수도 있을 것이다.

 

AR 모델에 대해선 ACF, PACF 그래프가 MA 모델과 반대로 나타날 것임을 유추해볼 수 있다. 그래서 결론을 정리하면 아래와 같다.

직접 ARMA(1,1) 모델의 ACF, PACF를 확인해보니, 

막상 엄청 뚜렷하게 감소하는 모양이 없다보니, 위처럼 표를 보고 선택하는 것이 썩 좋지 못할 것임을 알 수 있었다. 그래서 ARIMA 모델로 실습을 할 때 auto_arima로 계수를 자동으로 선택해주는 것과 내가 직접 ACF, PACF를 보고 선택했던 것에서 차이가 생겼던 것임을 알게 되었다.