시계열 모형은 대부분 정상성을 전제로 합니다. 그래서 예측의 첫 단계는 모형을 고르는 일이 아니라 자료를 정상으로 만드는 일입니다.
풀고 시작
문제 1. 해마다 꾸준히 늘어나는 매출 시계열에 ARMA 모형을 바로 적용하기 어려운 이유와 처방으로 가장 알맞은 것은?
추세가 있으면 평균이 시점마다 달라 정상성이 깨집니다. 이웃한 값의 차이를 구하는 차분을 하면 추세가 사라져 정상에 가까워지고, 이렇게 차분을 포함한 모형이 ARIMA입니다.
시계열과 정상성
시계열(time series)은 시간 순서대로 관측한 자료입니다. 월별 매출, 일별 주가, 시간별 전력 사용량이 모두 시계열이죠. 보통의 표본과 달리 이웃한 관측값이 서로 관련되어 있다는 점이 핵심입니다. 어제 기온을 알면 오늘 기온을 어느 정도 짐작할 수 있는 것처럼요.
시계열 모형은 대부분 정상성(stationarity)을 전제로 합니다. 정상 시계열은 평균이 시점과 관계없이 일정하고, 분산도 일정하며, 두 시점의 공분산이 시점이 아니라 시차에만 달려 있습니다. 쉽게 말해 어느 구간을 잘라 봐도 통계적 성질이 비슷한 자료입니다.
정상성이 깨졌다면 먼저 고칩니다. 평균이 변하는 추세는 이웃한 값의 차이를 구하는 차분(differencing)으로 없애고, 분산이 수준에 따라 커지면 로그 변환으로 안정시킵니다. 해마다 같은 달에 반복되는 계절성은 12개월 전 값과의 차이를 구하는 계절 차분으로 다룹니다.
시계열을 이루는 네 가지 요소
시계열은 흔히 네 요소로 나눠 봅니다. 장기적으로 오르거나 내리는 추세, 달력처럼 고정된 주기로 반복되는 계절 요인, 경기 순환처럼 주기가 일정하지 않은 긴 오르내림인 순환 요인, 그리고 설명되지 않는 불규칙 요인입니다. 계절과 순환을 가르는 기준은 주기가 고정되어 있느냐입니다.
요소를 합치는 방식도 두 가지입니다. 계절 변동의 폭이 수준과 상관없이 일정하면 요소를 더하는 가법 모형, 매출이 커질수록 계절 변동의 폭도 커지면 요소를 곱하는 승법 모형을 씁니다. R에서는 decompose나 stl로 분해해 봅니다.
평활: 들쭉날쭉함을 걷어 내기
이동평균은 일정한 기간의 평균을 한 칸씩 옮겨 가며 구해 불규칙한 변동을 걷어 냅니다. 지수평활은 과거 값을 모두 쓰되 최근 값일수록 큰 가중치를 주고, 먼 과거로 갈수록 가중치를 지수적으로 줄입니다. 평활 계수가 1에 가까울수록 최근 값을 강하게 반영해 변화에 빨리 반응합니다. 추세까지 담으면 홀트(Holt) 방법, 추세와 계절을 모두 담으면 홀트-윈터스(Holt-Winters) 방법입니다.
AR, MA, ARIMA
자기회귀 모형(AR)은 현재 값을 자신의 과거 값으로 설명합니다. p개 시점 전까지 쓰면 AR(p)입니다. 이동평균 모형(MA)은 현재 값을 과거의 예측 오차로 설명하며, q개까지 쓰면 MA(q)입니다. 평활의 이동평균과 이름이 같지만 다른 개념이니 조심하세요. 둘을 합친 것이 ARMA이고, 여기에 d번의 차분을 더한 것이 ARIMA(p, d, q) 입니다. ARIMA(1, 0, 1)은 차분이 없으니 ARMA(1, 1)과 같습니다.
차수는 자기상관함수(ACF)와 부분자기상관함수(PACF)의 모양으로 짐작합니다.
모형
ACF
PACF
AR(p)
천천히 줄어듭니다
p 시차 뒤에 끊깁니다
MA(q)
q 시차 뒤에 끊깁니다
천천히 줄어듭니다
박스와 젠킨스(Box & Jenkins)가 정리한 절차는 식별, 추정, 진단, 예측의 네 단계입니다. ACF와 PACF로 차수를 식별하고, 계수를 추정하고, 잔차가 백색잡음(평균 0, 분산 일정, 자기상관 없음)인지 진단한 뒤 예측합니다. 잔차에 자기상관이 남아 있으면 모형이 아직 설명하지 못한 패턴이 있다는 뜻입니다.
y <- ts(sales, start = c(2020, 1), frequency = 12) # 월별 시계열
acf(diff(y)); pacf(diff(y)) # 차분 뒤 차수 식별
fit <- arima(y, order = c(1, 1, 0))
predict(fit, n.ahead = 6) # 여섯 달 예측
인출 문제
문제 1. 정상 시계열의 조건이 아닌 것은?
꾸준히 커진다는 것은 추세가 있어 평균이 변한다는 뜻이라 정상성이 깨진 상태입니다. 나머지 셋이 정상 시계열의 조건입니다.
문제 2. 계절 요인과 순환 요인을 가르는 기준으로 옳은 것은?
계절 요인은 매년 같은 달에 반복되는 것처럼 주기가 정해져 있고, 순환 요인은 경기 흐름처럼 주기가 일정하지 않은 긴 변동입니다.
문제 3. ACF가 천천히 줄어들고 PACF가 2 시차 뒤에 끊겼습니다. 가장 알맞은 모형은 무엇입니까?
AR(p) 모형은 ACF가 천천히 줄고 PACF가 p 시차 뒤에 끊깁니다. 반대로 ACF가 끊기고 PACF가 천천히 줄면 MA 모형입니다.
문제 4. 박스-젠킨스 절차의 진단 단계에서 확인하는 것은 무엇입니까?
잔차에 자기상관이 남아 있으면 모형이 아직 담지 못한 패턴이 있다는 뜻입니다. 잔차가 백색잡음이어야 모형이 자료의 구조를 다 설명했다고 봅니다.
더 풀기
출제기준의 세부항목을 따라 이 강의 범위에서 새로 낸 문제입니다. 모의고사도 여기에서 뽑습니다.
묶음 1
문제 1. 시계열 자료가 보통의 표본과 가장 다른 점은 무엇입니까?
시계열은 시간 순서로 관측되어 어제 값과 오늘 값이 서로 관련됩니다. 그래서 관측값이 서로 독립이라는 보통의 가정을 그대로 쓸 수 없습니다.
문제 2. 추세 때문에 평균이 변하는 시계열을 정상으로 만드는 방법으로 가장 알맞은 것은?
이웃한 값의 차이를 구하면 꾸준히 오르는 추세가 사라집니다. 로그 변환은 분산이 수준에 따라 커질 때 씁니다.
문제 3. 매출 수준이 커질수록 변동 폭도 함께 커지는 시계열에서 분산을 안정시키는 방법으로 알맞은 것은?
로그를 취하면 큰 값이 크게 줄어 수준에 비례해 커지던 변동 폭이 고르게 됩니다. 평균이 변하는 문제는 그다음 차분으로 다룹니다.
문제 4. 월별 자료에서 해마다 같은 달에 반복되는 계절성을 없애는 방법으로 알맞은 것은?
계절 차분은 한 주기 전, 곧 월별 자료라면 12개월 전 값과의 차이를 구해 매년 반복되는 패턴을 없앱니다.