해당 글에서는 시계열 데이터의 특징을 정리하고, 시계열의 특성에 맞는 통계 기법에 대해 정리한다.
시계열 데이터
시계열 데이터는 순차적인 시간의 흐름에 따라 기록된 데이터를 의미한다.
시계열 데이터는 크게 4가지 요소로 설명 가능하다.
Y=T+S+C+R
-
추세(Trand) : 시간의 흐름에 따라 점진적이고, 지속적인 변화
-
계절성(Seasonality) : 특정 주기를 따라 일정한 패턴을 갖는 변화
-
싸이클(Cycle) : 경제 또는 사회적 요인에 의한 변화(ex. 경기 변동)이며, 일정 주기가 없고 장기적인 변화
- 일정 주기가 없고, 장기적인 변화라 특정하기 어려워 Y=T+S+R로 묘사하기도 한다.
-
잔차(Residuals) : 설명할 수 없는 변화
시계열 데이터는 대부분 T + S + C로 표현되나, 나머지는 R로 남는다.
- 궁극적으로 시계열 데이터 분석의 목표는 R을 줄이고, 독립적인 형태로 만드는 데 있다.
시계열 데이터 분석의 특징
시계열 데이터를 분석할 때는 현재의 데이터가 이전의 값에 영향을 받았을 것을 가정하고, 회귀 분석을 진행해야 한다.

위의 그림처럼 현실의 시계열 데이터는 이전의 데이터의 영향을 받아, 크게 변화하지 않음. (갑자기 엄청난 급등락을 한다면, 독립적이라고 볼 수도 있음.)
- 이러한 이전 데이터의 영향을 받는 부분이 시계열 분석 시 가장 유의해야 할 부분 중 하나이다.
- 이러한 이전 데이터의 영향을 받는 것을 자기 상관이라고 한다.
시계열 분석 vs. 단순 회귀
| 시계열 분석 | 단순 회귀 |
|---|
| 자기 상관(Autocorrelation) 존재 | 자기 상관(Autocorrelation) 없음 [기본 가정으로 전제] |
| 대표적으로 자기 회귀, 이동 평균, 자기회귀누적이동평균, 벡터자기회귀 모델 등이 존재 | 독립 변수, 종속 변수는 서로 다른 변수일 경우가 많음 |
| 현재 시점에 가까운 데이터일수록 서로 강한 관계를 맺는 경향 존재 | 선형 회귀로 시계열 데이터를 분석하려면 더 까다로운 가정 필요(선형성 가정 필요) |
자기회귀 모델(AR - Auto Regressive)
시계열 모델 중 가장 기본적인 모델 중 하나이다.
AR 모델은 과거의 값에 기반하여 미래의 값이 존재한다는 직관적인 사실에 기반하는 모델이다. (즉, 이전 값의 영향을 받는 것이 특징이다.)
- 따라서 미래 값 예측을 위해 과거 값을 변수로 사용한다.
- 시계열 외의 데이터가 없을 경우, 가장 먼저 시도하는 방법 중 하나
- 현재 데이터에 가장 가까운 데이터가 가장 큰 영향력을 갖는다.
수식
AR(1):yt=α+γ1yt−1+ϵt
AR(2):yt=α+γ1yt−1+γ2yt−2+ϵt
⋮
AR(차수):yt=α+γ1yt−1+γ2yt−2+⋯+ϵt
차수가 1이면 yt(오늘 시점의 y)를 예측하기 위해 yt−1(어제 시점의 y) 활용
- α : 상수항
- ϵ : 잔차 (설명할 수 없는 부분)
- 잔차 외의 나머지는 yt에 명확한 영향력을 주나, 잔차는 어떤 형식의 영향을 주는지 알 수 없는 부분이 된다.
- 모든 시계열 분석은 잔차를 줄이고, 백색잡음으로 만드는 것을 목표로 한다.
대표적인 AR 모델 적용 데이터는 주식 데이터가 있다.
이동평균 모델(MA - Moving Average)
AR 모델과 더불어 가장 기본적이고, 대표적인 모델 중 하나이다.
-
설명 변수가 과거의 예측 오차(최근 오차항)로만 이루어져 있는 특징을 가진다. 따라서, 전체적인 편향성(모델이 설명하지 못하는 부분)만 고려하는 모델이다.
-
즉, 현재 데이터가 이전 데이터의 오차에 의해서 설명되며, 값이 변동을 일으킨 방향에 대해서만 영향을 받는다. (불규칙 변동이 누적되어, 전반적인 평균이 이동하여 평균의 값이 바뀌는 모델이다.)
-
평균과 분산 모두 파라미터 값에 상관 없이 시간에 따라 일정한 값을 가진다는 특징이 있다.
-
강한 평균 회귀를 보임.
-
예측이 평균으로 빠르게 회귀하는 특징이 있다.
- 잔차들이 자기 상관(Auto correlation)이 없는 white noise(백색 잡음)으로 구성된 함수이기 때문이다.
수식
MA(1):yt=θ1ϵt−1+ϵt
MA(2):yt=θ1ϵt−1+θ2ϵt−2+ϵt
차수가 1이면 오늘의 잔차(ϵt)와 어제의 잔차(ϵt−1)를 이용하여 현재 값(yt)을 도출
-
이전 시점 값이 아닌, 이전 시점의 예측 오차에 가중치를 두어 미래의 값을 예측
-
대표적인 예, 비행기 탑승객 추이, 인터넷 보급률 추이
차수
일반적으로 AR, MA 같은 모델들의 차수(p,q)는 자기상관함수(ACF), 편자기상관함수(PACF) 그래프에 기반하여 결정한다.
ARIMA 모델
AR과 MA모델을 동시에 고려하고, 차분까지 고려하는 모델이 ARIMA 모델이다.
-
AR과 MA를 동시에 고려하고, 누적(I)로 추세까지 고려한 모델, '자기 회귀 누적 이동평균 모델'이라고 표현.
-
원 계열의 차분을 구한 뒤, 이동 평균을 누적한 AR 모델으로 설명할 수 있다.
-
누적은 d 만큼의 차수를 가지고 차분이 진행된다.
- 차분은 시계열의 수준에서 나타나는 변화를 제거하는 효과가 있다.
- 데이터를 변동성없는 형태로 변화 시켜, 평균이 시점에 구애받지 않는 형태로 변화시킨다.
- 일반적으로 시계열은 추세 혹은 계절성을 가져, 시점에 따라 평균이 변함.
- 차분을 통해 평균을 시점에 구애받지 않게 만들어, 계절성 및 추세를 제거하는데 매우 효과적이다.
- 즉, 차분을 통해 정상성을 갖는 시계열의 형태로 변환
수식
ARIMA(p,d,q)=AR(p),I(d),MA(q)
-
AR이나 MA만으로는 역동성을 설명하기 어려워, ARMA모델로 결합했다.
- I는 d의 차수만큼 차분하는 것으로 차분 후, AR과 MA 모델로 결합하는 것으로 생각하면 된다.
-
정상성 만족을 위해 차분을 가미하면서, ARIMA가 됨.
정상성
정상성을 나타내는 시계열은 관측치가 시점에 무관해야 한다.
(즉, 시간에 상관없이 일정한 평균과 분산을 갖고 있어야 함.)

-
ACF 그래프는 각 지점마다의 데이터(yt−i)와 현 데이터(yt)의 상관계수로 표현되며, 일반적으로 상관계수의 분포가 빠르게 파란색 범위로 진입할 경우, 자기 상관을 없앨 수 있는 부분이 많음
-
차분 후 ACF 그래프를 살펴보면, 차분하여 정상성을 확보했기에, 현 데이터와 다른 시점의 데이터가 상관성이 없음을 확인할 수 있다. (물론, 객관적인 지표로 표현하는 다른 방식으로 한번도 검정이 필요)
시계열 분석 순서

- 정상성은 시계열 분석 시 꾸준히 확인해 주어야 한다.
- 여기서는 시계열 요소 분해 방법으로 설명한다.
과정 설명
- 원계열 시도표란, yt의 시계열이 있을 때, 추세 & 계절성을 분리하지 않은 경우의 데이터에 해당한다.
- 원계열 시도표에서 추세 및 계절성을 분리하여, 잔차를 확인했을 때, 잔차가 백색 잡음인지를 확인
- 백색잡음이 아니라면, 추가적으로 분리할 수 있는 것을 고려해야 함.
(불규칙 변동 분리 ex. 싸이클 effect, 홀리데이 effect)
- 싸이클은 위에서도 언급한, 장기적인 패턴 및 흐름을 의미
- 홀리데이는 예를 들어 월드컴 시즌 등의 일반적이지 않은 흐름을 의미
- 백색 잡음이 나오거나, 추가적으로 불규칙 변동을 분리하여 백색 잡음을 더 줄인다면, 시계열 분석시 더 성능이 좋은 분석 절차를 만들 수 있음
- 이후, 모델을 선택하여, 결과를 확인 및 해석하면 된다.
➡️ 결국, 시계열 분석을 통해 백색 잡음을 최대한 줄여, 모델 분석을 하는 것이 주요 과정이다.
실습 코드