시계열 모델 종류 (Time Series Model) 및 특징

by ThePupil
시계열 모델 종류

전 블로그 글에서 수요 예측의 목적으로 많이 사용되는 시계열 모델 (Time Series Model) 을 사용하기 위한 과정과 (링크) 사용전 확인해야 하는 부분들에 (링크) 대해 소개 했다. 이번 글은 자주 사용되는 기본적인 시계열 모델 종류 를 크게 세가지로 분류해 간단하게 소개하고자 한다.

  1. AR/MA 조합
  2. Exponential Smoothing
  3. Vector AR/MA 조합

[Autoregressive(AR) Moving Average(MA) 조합]

  • Autoregressive Model

$Y_t = B_0 + B_1Y_{t-1} + …  + e_t$

시계열 분석의 가장 기초가 되는 모델이다. 예측값 $Y_t$이 시간상 이전 예측 값들과 (e.g. $Y_{t-1}$) linear relationship이 있을 때 효과적인 모델이다. 모델에 사용하고자하는 이젠 값들의 갯수를 p로 명시한다. 예를 들면, AR(2)라고 하면 $Y_t = B_0 + B_1Y_{t-1} + B_2Y_{t-2}$ 를 의미한다. Seasonality 가 존재할 경우, 예측값 t-1 보다 더 큰 시차값을 사용 할 떄도 있지만, 일반적으로 trend 와 seasonality 가 존재 하지 않는 시계열 데이터분석시 사용한다.

필요조건: univariate time series data, seasonality X, trend X, stationarity

  • Moving Average Model

$Y_t = M + e_t + B_1e_{t-1} + …  + B_qe_{t-q}$

AR 모델과 비교했을 때 필자가 설명하기 덜 직관적인 모델이다. 수식만을 봤을 때, 예측값 $Y_t$은 고정된 평균값 M과 예측할수 없는 에러들로 설명 가능하다고 가정한 모델이다. 이 에러는 상호 독립적이고 하나의 분포를 공유하고 있다고 가정한다.

결국 현재 예측값을 이전 값들을 통해 설명할 수 있다는 큰그림에서는 AR모델과 비슷하지만, AR 모델과는 달리 MA모델의 변수가 되는 에러값들은 관측이 불가능 하기 때문에 모델을 만드는 과정은 다르다.

필요조건: univariate time series data, seasonality X, trend X, stationarity

  • ARMA & ARIMA

$X_t = a_1X_{t-1} + … + a_pX_{t-p} + e_t + b_1e_{t-1} + … + b_qe_{t-q}$

위에 명시한 AR과 MA 모델을 혼합한 것이 ARMA모델이다. 필자도 공부하면서 이 모델을 어떻게 직관적으로 설명할 수 있는지에 대한 고민을 많이 했지만 아직까지 만족스러운 답변을 찾지 못했다. 대부분 책이나 강의에서는 “예측값이 AR부분과 MA부분에 의해 설명될 수 있다”,  “Time Series 는 analysis 보다는 예측을 위해 사용되기 때문에 직관적인 설명을 억지로 찾을 필요는 없다” 정도로 설명한다.

한 단계 더 나아가 데이터를 stationary 하게 만들기위해 사용하는 differencing method 까지 적용한 모델이 ARIMA다. ARIMA 모델을 만들기 위해서는 AR 변수차수 p MA 변수차수 q 그리고 differencing 차수 d 를 명시해야한다. d 는 시계열 데이터상 stationarity를 보장할 수 있느 최소값으로 설정한다.

필요조건: univariate time series data, seasonality X

  • SARIMA

위에 ARIMA에서 한 단계 더나아가 seasonal effect 까지 분석 가능 한 모델이 SARIMA이다. 기본원리는 ARIMA 모델과 비슷하지만, seasonality를 별도의 ARIMA 모델을 통해 예측한다는 것이다. 즉, non-seasonality 만을 모델한 ARIMA 모델과, 계절효과만을 별도로 모델한 ARIMA을 결합한 형태라고 이해할 수 있다. 자세한 이론적인 설명이 궁금하다면 이 링크를 참고하길 바란다.

필요조건: univariate time series data

[Exponential Smoothing]

  • Simple Exponential Smoothing (SES)

$Y_t  = a X_t + (1 – a) Y_{t -1}$

SES 모델은 현재 예측값을 과거값을 이용해 유추한다는 면에서는 AR 모델과 흡사하지만, 더 최근의 값에 무게를 둔다는 점은 다르다.  여기서 a 를 흔히 smoothing coefficient 라고 부르는데, 결국 최근값에 얼마만큼의 비중을 줄 것인지 정하는 변수다. 1에 가까울수록 변동성이 심한 reactive model이, 0에 가까울수록 완만한 곡선을 그리는 smooth model 이 나온다.

필요조건: univariate time series data, seasonality X, trend X

  • Holt-Winters’ Model

위에 명시한 기본 모델과 원리는 비슷하지만, trend와 seasonality 또한 감안할 수 있는 모델이다. 또한 linear과 exponential trend 둘다 모델링이 가능하다. 자세한 이론은 이 링크에서 확인할 수 있다.

필요조건: univariate time series data

[Vector Autoregression(AR) Moving Average(MA) 조합]

  • VAR, VMA, VARMA

VAR/VMA/VARMA 는 AR/MA/ARMA 와 같은 원리지만, univariate 이 아닌 multivariate 이라는 점이 큰 차이점이다. 즉, 같은 시간 간격속에 여러개의 연관된 시계열 데이터 값이 존재할 때 사용하는 시계열 모델 종류 다. 예를 들면, inflation rate 과 unemployment rate을 같이 예측하는 것이다. 그렇기 때문에 autocorrelation 뿐만 아니라 cross correlation 도 고려해야한다. AR/MA 과 마찬가지로 p,q 를 통해 현재값 예측시 활용되는 vector의 수를 지정할 수 있다.

필요조건: multivariate time series data, seasonality X

  • VARMAX

이름에서도 유추할 수 있듯, VARMAX 는 VARMA 모델 위에 exogenous variable 을 추가한 형태다. 다시 말해 예측 vector $Y_T$ 는 이전 값들 뿐만 아니라 (e.g. $Y_{t-1}, Y_{t-2}$) 독립변수 $X_t$의 영향도 받는다는 가정하에 설계된 모델이다.

필요조건: multivariate time series data

[모델은 모델일 뿐]

이번 글에서는 Time Series Analysis시 자주 사용되는 시계열 모델 종류 들을 소개했다. 위에 소개된 모델들 이외에도 시계열 데이터 분석 목적에 따라 (e.g. 수요 예측) 기타 머신러닝 모델들도 사용될 수 있다. 이전 글들에서 강조했듯이, 현재 해결하고자 하는 문제에 적합한 모델들을 선택하는 것이 중요하다. 모델 선택 이후에도 끊임없이 가다듬고 목적을 달성하는지 확인해야한다.

글을 마무리 하며 직장생활하며 깨달은 점을 한가지 공유하고 싶다. 데이터 사이언티스트라고 하면 흔히 모델을 만드는 직무라고 생각하는 사람들이 많다. 필자도 통계학과를 졸업할 때까지만 해도 훌륭한 모델로 먹고 사는 직업이라는 생각을 했다. 하지만 단순이 모델을 fit 하는 작업들은 많이 자동화 되고 있는 추세고, 실제로 업계에서 원하는 데이터 사이언티스트의 모습은 어떤 비즈니스 문제를 데이터에 근거해서 해결할 수 있는 사람들이다. 예를 들면, “제 모델은 수요 예측 정확도를 10% 올릴 수 있습니다”에서 더 나아가 “제 모델은 X라는 문제를 Y에 근거해서 해결하는데, 정확도는 기존대비 10% 상승하고, 그것은 궁극적으로 Z의 비즈니스 가치가 있습니다” 라고 논리정연하게 말할 수 있는 사람. 그러므로 필자가 남긴 이번 글에서 소개한 여러가지 모델들이 어떤 상황에서 사용되는지, 어떤 가정에 근거하는지, 어떤 비즈니스 use case들이 있는지 스스로 더 나아가 공부하기를 추천한다.

[추가 정보 링크]

https://campus.datacamp.com/courses/introduction-to-time-series-analysis-in-python/moving-average-ma-and-arma-models?ex=7

https://otexts.com/fpp2/

https://ademos.people.uic.edu/Chapter23.html

You may also like