10.4 하향식 접근 방식

하향식 접근 방식들(Top-down approaches)은 그룹화된 구조에서는 쓸 수 없고, 엄밀한 계층 합산 구조에서만 쓸 수 있습니다. 하향식 접근 방식에서는 먼저 전체 시계열 \(y_t\)에 대해 예측값을 내고, 그 다음에 계층 구조를 따라 나눠나갑니다.

\(p_1,\dots,p_{m}\)을 “전체(Total)” 시계열의 예측값이 어떻게 분배되는지 나타내는 분배비율(disaggregation proportion)의 집합이라고 둡시다. 합산 구조의 밑바닥 수준에서 각 시계열에 대해 예측값을 얻기 위해 분배비율의 집합이 필요합니다. 예를 들면 그림 10.1의 계층 구조에 대해 비율값 \(p_1,\dots,p_{5}\)을 사용하면 다음과 같은 식을 얻습니다. \[ \ytilde{AA}{t}=p_1\hat{y}_t,~~~\ytilde{AB}{t}=p_2\hat{y}_t,~~~\ytilde{AC}{t}=p_3\hat{y}_t,~~~\ytilde{BA}{t}=p_4\hat{y}_t~~~\text{and}~~~~~~\ytilde{BB}{t}=p_5\hat{y}_t. \] 행렬 표기법을 가지고 \(m\)-차원 벡터 \(\bm{p}=(p_1,\ldots,p_{m})'\)에서의 비율값을 모을 수 있고, 다음과 같이 적습니다. \[ \tilde{\bm{b}}_{t}=\bm{p}\hat{y}_t. \] 밑바닥 수준의 \(h\)-단계 앞 예측값을 내면, 나머지 시계열에 대한 일관된 예측값을 내기 위해 이 값들을 계층 구조에서 합산합니다. 일반적으로 특정한 비율값의 집합에 대해 하향식 접근 방식을 다음과 같이 쓸 수 있습니다. \[ \tilde{\bm{y}}_h=\bm{S}\bm{p}\hat{y}_t. \]

가장 흔한 하향식 접근 방식 두 가지에서는 데이터의 과거 분배비율값에 근거하여 비율을 정합니다. 이러한 방식들은 Gross & Sohl (1990) 의 연구에서 잘 작동했습니다.

과거 비율값을 평균하기

\(j=1,\dots,m\)에 대해, \[ p_j=\frac{1}{T}\sum_{t=1}^{T}\frac{y_{j,t}}{{y_t}} \] 입니다. 각 비율 \(p_j\)은 전체 합산치 \(y_t\)에 관하여 기간 \(t=1,\dots,T\)에 따라 밑바닥 수준 시계열 \(y_{j,t}\)의 과거 비율값의 평균을 반영합니다.

forecast() 함수에서 method="tdgsf"로 두고 이 방식을 구현합니다. 여기에서 tdgsf는 “top-down Gross-Sohl method A”의 약자입니다.

과거 평균값의 비율

\(j=1,\dots,m\)에 대해, \[ p_j={\sum_{t=1}^{T}\frac{y_{j,t}}{T}}\Big/{\sum_{t=1}^{T}\frac{y_t}{T}} \] 입니다. 각 비율 \(p_j\)은 전체 합산치 \(y_t\)의 평균값에 관하여 밑바닥 수준 시계열 \(y_{j,t}\)의 평균 과거값을 잡아냅니다. forecast() 함수에서 다음과 같이 method="tdgsf"로 두고 이 접근 방식을 구현합니다. 여기에서 tdgsf는 “top-down Gross-Sohl method F”의 약자입니다.

이러한 하향식 접근 방식의 장점은 단순하다는 것입니다. 꼭대기 수준 시계열에 대해 모델링하고 예측값을 내야할 필요만 있다고 합시다. 일반적으로 이러한 접근 방식은 합산 수준에 대한 꽤 신뢰할만한 예측값을 내는 것처럼 보이고 수효를 센 값이 작은 데이터를 다룰 때 유용합니다. 반면에, 한 가지 단점은 합산 과정 때문에 정보 손실이 있다는 것입니다. 이러한 하향식 접근 방식으로는, 시간 동역학이나 특별한 사건 같은 시계열 각각의 속성(attribute)의 장점을 잡아내거나 고려할 수 없습니다.

예측 비율값

분배에 사용된 과거 비율은 이러한 비율이 시간에 따라서 변할 수도 있다는 것을 고려하지 못하기 때문에, 과거 비율에 근거한 하향식 접근 방식은 상향식 접근 방식에 비해 계층 구조에서 수준이 낮아질 수록 덜 정확한 예측값을 내는 경향이 있습니다. 이 문제를 다루기 위해, 과거 데이터 대신에 예측값에 근거한 비율을 사용할 수 있습니다 (Athanasopoulos, Ahmed, & Hyndman, 2009).

계층 구조에서 한 수준을 생각해 봅시다. 먼저 모든 시계열에 대해 \(h\)-단계-앞 예측값을 냅니다. 이러한 예측값을 직접적으로 사용하지 않습니다. 그리고 이러한 예측값은 일관되지 않습니다(올바른 방식으로 더한 것이 아니기 때문에). 이것을 “초기(initial)” 예측값이라고 부릅시다. 밑바닥 수준에서 각 \(h\)-단계-앞 초기 예측값의 비율을 가지고 이 수준에서의 \(h\)-단계-앞 모든 초기 예측값의 합산값까지 계산합니다. 이것을 예측비율(forecast proportion)이라고 부르고, 꼭대기 수준의 \(h\)-단계-앞 초기 예측값을 분배하기 위해 사용합니다. 이렇게 사용하는 목적은 전체 계층 구조에 대해 일관된 예측값을 내기 위해서 입니다.

\(K\)-수준 계층 구조에 대해 꼭대기부터 밑바닥까지 가는 각 마디에 대해 이 과정을 반복합니다. 이 과정을 적용하여 예측비율값(forecast proportion)을 얻기 위한 다음과 같은 일반적인 규칙을 얻습니다. \[ p_j=\prod^{K-1}_{\ell=0}\frac{\hat{y}_{j,h}^{(\ell)}}{\hat{S}_{j,h}^{(\ell+1)}} \] 여기에서 \(j=1,2,\dots,m\)이고, \(\hat{y}_{j,h}^{(\ell)}\)은 마디 \(j\) 위의 \(\ell\) 수준인 마디와 관련된 시계열의 \(h\)-단계-앞 초기 예측값이고, \(\hat{S}_{j,h}^{(\ell)}\)은 마디 \(j\) 위의 \(\ell\) 수준인 마디 아래와 해당 마디에 직접적으로 연결된 마디 아래의 \(h\)-단계-앞 초기 예측값의 합입니다. 이러한 예측 비율값은 “전체” 시계열의 \(h\)-단계-앞 기준 예측값을 밑바닥 수준 시계열의 \(h\)-단계-앞 일관된 예측치로 분리합니다.

이 표기법을 설명하기 위해 그리고 이 일반적인 규칙을 어떻게 얻는지 나타내기 위해 그림 10.1의 계층 구조를 이용할 것입니다. 계층 구조에서 각 시계열에 대해 초기 예측값을 냈다고 가정합시다. 어떤 하향식 접근 방식에 대해 꼭대기 수준의 “전체” 시계열에 대해 \(\tilde{y}_{h}=\hat{y}_{h}\)라는 것을 떠올려봅시다. 위의 표기법을 사용하는 몇 가지 예제를 살펴보겠습니다.

  • \(\hat{y}_{\text{A},h}^{(1)}=\hat{y}_{\text{B},h}^{(1)}=\hat{y}_{h}= \tilde{y}_{h}\);
  • \(\hat{y}_{\text{AA},h}^{(1)}=\hat{y}_{\text{AB},h}^{(1)}=\hat{y}_{\text{AC},h}^{(1)}= \hat{y}_{\text{A},h}\);
  • \(\hat{y}_{\text{AA},h}^{(2)}=\hat{y}_{\text{AB},h}^{(2)}= \hat{y}_{\text{AC},h}^{(2)}=\hat{y}_{\text{BA},h}^{(2)}= \hat{y}_{\text{BB},h}^{(2)}=\hat{y}_{h}= \tilde{y}_{h}\);
  • \(\Shat{AA}{h}{1} = \Shat{AB}{h}{1}= \Shat{AC}{h}{1}= \yhat{AA}{h}+\yhat{AB}{h}+\yhat{AC}{h}\);
  • \(\Shat{AA}{h}{2} = \Shat{AB}{h}{2}= \Shat{AC}{h}{2}= \Shat{A}{h}{1} = \Shat{B}{h}{1}= \hat{S}_{h}= \yhat{A}{h}+\yhat{B}{h}\).

계층 구조의 가장 왼쪽으로 이동하면 일관된 예측값은 다음과 같이 주어집니다. \[ \ytilde{A}{h} = \Bigg(\frac{\yhat{A}{h}}{\Shat{A}{h}{1}}\Bigg) \tilde{y}_{h} = \Bigg(\frac{\yhat{AA}{h}^{(1)}}{\Shat{AA}{h}{2}}\Bigg) \tilde{y}_{h} \] 그리고 \[ \ytilde{AA}{h} = \Bigg(\frac{\yhat{AA}{h}}{\Shat{AA}{h}{1}}\Bigg) \ytilde{A}{h} =\Bigg(\frac{\yhat{AA}{h}}{\Shat{AA}{h}{1}}\Bigg) \Bigg(\frac{\yhat{AA}{h}^{(1)}}{\Shat{AA}{h}{2}}\Bigg)\tilde{y}_{h} \] 결과적으로, \[ p_1=\Bigg(\frac{\yhat{AA}{h}}{\Shat{AA}{h}{1}}\Bigg) \Bigg(\frac{\yhat{AA}{h}^{(1)}}{\Shat{AA}{h}{2}}\Bigg). \] 다른 비율값을 비슷하게 얻을 수 있습니다.

모든 하향식 예측 방식의 한 가지 단점은 (Hyndman, Ahmed, Athanasopoulos, & Shang, 2011) 에서 보인 것처럼 예측값이 편향이 없는 일관된 예측값을 내지 않는다는 것입니다.

forecast() 함수에서 다음과 같이 method="tdfp"로 두고 이 접근 방식을 구현합니다. 여기에서 tdfp 는 “top-down forecast proportions”의 약자입니다.

참고 문헌

Athanasopoulos, G., Ahmed, R. A., & Hyndman, R. J. (2009). Hierarchical forecasts for Australian domestic tourism. International Journal of Forecasting, 25, 146–166. https://robjhyndman.com/publications/hierarchical-tourism/

Gross, C. W., & Sohl, J. E. (1990). Disaggregation methods to expedite product line forecasting. Journal of Forecasting, 9, 233–254. https://doi.org/10.1002/for.3980090304

Hyndman, R. J., Ahmed, R. A., Athanasopoulos, G., & Shang, H. L. (2011). Optimal combination forecasts for hierarchical time series. Computational Statistics and Data Analysis, 55(9), 2579–2589. https://robjhyndman.com/publications/hierarchical/