예측 정확도 (Forecast Accuracy)
여러 예측 모델을 만들면서 주로 사용한 것은 과거 데이터와 만들어진 모델간 차이인 잔차(residuals)였고, 보통 이를 가장 작게 만드는, 즉 가장 적합도(goodness-of-fit)가 높은 모델을 찾았다.
그러나 적합도는 얼마나 잘 예측하는지에 대해서는 제대로 반영하지 못하는 경우가 많다. 예측 모델에서 중요한 것은 적합도가 아니라 미래 예측 정확성(accuracy of future forecasts)이다. 이를 표본 외 예측 오류(out-of-sample forecast error)라고도 한다. 즉 적합할 때 사용한 과거 데이터가 아니라 새로운 데이터에 대해서 잘 설명할 수 있어야 좋은 예측 모델이라는 것이다.
평가 지표
• 척도 의존적 평가 지표
예측 모델 성능을 평가할 때 사용하는 일반적 지표인 $1$단계 선행 예측 오차(one-step-ahead forecast error)는 다음과 같다.
$$ e_t(1) = y_t - \hat{y}_t (t-1) $$
여기서 $ \hat{y}_t (t-1) $ 은 한 시점 전에 만든 $ y_t $ 의 예측이다. 만약 $ n $ 개의 관측치가 있고 그에 대해 예측했다면 $ n $ 개의 $1$단계 선행 예측 오차 $ e_t(1) $ 이 생긴다.
아래 예측에 대한 평가 지표들은 $1$단계 선행 예측 오차를 이용한다. 단 아래 지표들은 모두 척도 의존적(scale-dependent) 지표들이기 때문에 예측하는 대상이 어떤 단위를 사용하는지에 따라 값이 달라지기 때문에 서로 다른 시계열이나 기간 간의 비교에는 적합하지 않다.
선행 예측 오차를 이용하여 평균낸 평균 오차(ME, mean error 혹은 average error)는 다음과 같다.
$$ ME = \frac{1}{n} \sum_{t=1}^n e_t(1) $$
평균 오차는 예측 오차의 편향(bias)을 보여주는 것으로 $0$ 에서 벗어날수록 예측에 편향이 존재할 가능성이 높다는 것이다.
오차를 제곱하여 평균낸 평균 제곱 오차(MSE, mean squared error)는 다음과 같다.
$$ MSE = \frac{1}{n} \sum_{t=1}^n [e_t(1)]^2 $$
$ME$와 다르게 편향이 아니라 변동성(variability)을 나타낸다. 일반적으로 많이 사용되는 지표이다. $MSE$가 $1$단계 선행 예측 오차의 분산을 직접 추정하기 때문이다.
$$ \hat{\sigma}_{e(1)}^2 = MSE $$
평균 절대 오차(MAD, maen absolute deviation 혹은 mean absolute error)는 평균 오차에 절댓값을 사용한 지표이다.
$$ MAD = \frac{1}{n} \sum_{t=1}^n \lvert e_t (1) \rvert $$
$MSE$와 마찬가지로 변동성을 나타낸다. 만약 예측 오차가 정규분포를 따른다고 가정할 수 있다면, 다음과 같이 $MAD$를 이용하여 표준편차를 근사할 수 있다.
$$ \hat{\sigma}_{e(1)} \approx \sqrt{\frac{\pi}{2}} \cdot MAD \approx 1.25 \cdot MAD $$
• 상대 평가 지표
앞선 척도 의존적 평가 지표는 서로 다른 시계열이나 기간 간의 비교에 적합하지 않았고, 따라서 이 경우 아래와 같은 상대 오차(RE, relative error)를 사용한다.
$$ re_t(1) = \frac{y_t - \hat{y}_t (t-1)}{y_t} \cdot 100 = \frac{e_t(1)}{y_t} \cdot 100 $$
이를 백분율 예측 오차(percent forecast error)라 한다.
단 상대 오차를 포함하여 아래 상대 오차를 이용한 지표들은 시계열 $ y_t $ 에 $0$ 값이 포함되어 있지 않을 때만 의미가 있다. 당연하게도 $ 0 $ 으로 나눠주지 못하기 때문이다.
평균 백분율 오차(MPE, mean percent forecast error)는 상대 오차를 활용하여 평균내는 것이다. 편향을 나타낸다.
$$ MPE = \frac{1}{n} \sum_{t=1}^n re_t(1) $$
평균 절대 백분율 오차(MAPE, mean absolute percent forecast error)는 절댓값을 활용한다. 덕분에 $MPE$와 다르게 변동성을 나타낸다.
$$ MAPE = \frac{1}{n} \sum_{t=1}^n \lvert re_t(1) \rvert $$
화이트 노이즈 (White Noise)
예측 오차(forecast errors)의 분포는 정규분포로 잘 근사된다는 많은 경험적 근거(empirical evidence)가 있으며, 이론적인 정당성도 일부 존재한다. 이를 더 명확히 확인하려면 예측 오차에 대한 정규확률그림(normal probability plot)을 작성하여 정규성 가정을 시각적으로 검토할 수 있다.
예를 들어, 아래 정규확률그림에서 예측 오차들이 직선으로부터 다소 벗어나긴 하지만 전체적으로 큰 이탈이 없으므로, 정규분포를 가정하는 것이 무리한 해석은 아님을 알 수 있다. 정규성 여부를 보다 정량적으로 판단하고자 한다면, 앤더슨-달링 검정(Anderson–Darling test)과 같은 통계적 검정을 사용할 수 있다.
예측 오차가 정규분포에 근사한다면, 오차가 특정 범위를 벗어날 확률 등 불확실성에 대한 정량적 추정이 가능해진다. 예를 들어, 정규성을 기반으로 신뢰구간(confidence interval)을 설정하거나 이상치(outlier) 판단에 활용할 수 있다.
예측 모델이 이상적으로 작동하려면, 예측값이 관측값의 구조(structure in the observations)를 잘 설명해야 한다. 관측값의 구조를 충분히 반영했다면, 예측 오차는 더 이상 설명 가능한 패턴을 갖지 않고 무작위적이어야 한다. 즉, 예측 오차는 구조가 없는 랜덤한 잡음 형태를 가져야 하며, 표본 자기상관함수(sample ACF) 상에서도 낮은 시차(low lag)에서 유의미한 스파이크(spike)가 나타나지 않아야 한다.
반대로, 예측 오차에 체계적인 패턴(systematic pattern)이나 비무작위성(nonrandomness)이 존재한다면, 이는 ACF 상에서 유의한 스파이크로 나타난다. 이는 모델이 데이터의 구조를 충분히 설명하지 못하고 있음을 의미하며, 예측 모델을 더 정교하게 개선할 수 있는 가능성을 시사한다. 즉, 예측 오차에 남아 있는 구조를 모델로 흡수시킴으로써, 더 정확한 예측이 가능해진다.
만약 시계열 데이터가 상관성이 없고 분산이 일정하다면 이를 화이트 노이즈(white noise)라고 하며, 여기에 더해 관측값이 정규분포를 따른다면 가우시안 화이트 노이즈(Gaussian white noise)라고 한다. 이상적인 예측 오차는 바로 이 가우시안 화이트 노이즈의 특성을 가져야 하며, 이는 모델이 데이터의 구조를 충분히 반영하고, 예측 오차는 설명 불가능한 무작위 요소만으로 구성되어 있다는 것을 의미한다.
검정
• 각 시차별 표본 자기상관계수 검정
시계열이 화이트 노이즈일 경우 시차 $ k $ 에서의 표본 자기상관계수(sample autocorrelation coefficient, 참고링크)의 분포는 표본의 크기 $ T $ 가 충분히 큰 경우에서는 평균이 $ 0 $ 이고, 분산이 $ 1 / T $ 인 정규분포로 근사된다. 즉 다음과 같다.
$$ r_k \sim N \left( 0, \, \frac{1}{T} \right) $$
따라서 다음과 같은 검정 통계량을 사용하여 귀무가설 $ H_0 : \rho_k = 0 $ 을 검정할 수 있다.
$$ Z_0 = \frac{r_k}{\sqrt{1/T}} = r_k \sqrt{T} $$
이때, 이 통계량의 절댓값이 클수록 해당 시차의 자기상관계수가 0이 아닐 가능성이 높다. 반대로 절댓값이 작다면, 자기상관계수가 0이라는 귀무가설을 기각할 근거가 부족하다는 뜻이다. 따라서 이상적인 예측 오차에 대해서 $ Z_0 \approx 0 $ 이다. 검정 시에는 일반적인 방식과 마찬가지로 유의수준 $ \alpha $ 를 설정하여 기각 여부를 결정한다.
이때 이 검정은 각 시차별로 개별적으로 수행되는 일대일 검정(one-at-a-time test)이므로 유의수준은 각 자기상관계수에 개별적으로 적용된다.
• 박스-피어스 검정 (Box-Pierce test)
앞선 검정은 시차별로 개별적으로 수행되지만, 여러 시차의 자기상관계수를 종합적으로 고려하여, 시계열이 화이트 노이즈인지 판단하고자 할 경우에는 박스 피어스 검정을 사용할 수 있다.
앞서 정의한 $ Z_0 $ 의 제곱은 다음과 같이 근사적으로 카이제곱분포를 따른다.
$$ Z_0^2 = r_k^2 T \sim \chi^2(1) $$
그리고 다음과 같이 정의된 박스-피어스 통계량은 귀무가설, 즉 시계열이 화이트 노이즈라는 가정 하에서 자유도 $ K $ 인 카이제곱분포를 근사적으로 따른다.
$$ Q_{BP} = T \sum_{k=1}^K r_k^2 \sim \chi^2(K) $$
이때 유의수준 $ \alpha $ 에 대해 $ Q_{BP} > \chi^2_\alpha (K) $ 라면 귀무가설을 기각한다. 즉 시계열이 화이트 노이즈가 아니라 판단한다.
이 검정을 잔차 자기상관계수(residual ACF)에 적용하는 경우 박스-피어스 통계량은 다음과 같이 자유도를 $ K - p $ 로 설정한다. 여기서 $ p $ 는 모델의 추정된 매개변수 개수이다.
$$ Q_{BP} \sim \chi^2 (K-p) $$
• 융-박스 검정 (Ljung-Box test)
박스-피어스 검정보다 소표본 상황에서 더 적합한 검정으로 다음과 같은 융-박스 통계량이 사용된다.
$$ Q_{LB} = T(T+2) \sum_{k=1}^K \left( \frac{1}{T-k} \right) r_k^2 $$
융-박스 통계량은 박스-피어스 통계량과 매우 유사하지만 시차 $ k $ 에 대해 $ (T+2)/(T-k) $ 로 가중치를 주는 점에서 차이가 있다. 표분 수 $ T $ 가 클수록 이 가중치는 거의 $ 1 $ 에 가까워지므로 두 통계량의 값도 거의 같아진다.
검정 자체는 똑같이 카이제곱분포를 이용한다. 잔차 자기상관계수에 적용할 때 자유도를 $ K - p $ 로 설정하는 것 역시 같다.
'Statistics > Time Series Analysis' 카테고리의 다른 글
[Time Series Analysis] 예측 모델(forecasting model) 모니터링(monitoring) (0) | 2025.03.26 |
---|---|
[Time Series Analysis] 예측 모델(forecasting model) 선택(Choosing) (0) | 2025.03.26 |
[Time Series Analysis] 추세(trend) 및 계절성(seasonal) 조정 (0) | 2025.03.21 |
[Time Series Analysis] 멱변환(power transformation)을 통한 데이터 변환(data transformation) (0) | 2025.03.20 |
[Time Series Analysis] 변이도(variogram) (0) | 2025.03.15 |