본문 바로가기
시계열 자료분석/시계열 회귀모형

Distributed lag models

by be-favorite 2021. 3. 5.

❗️블로그 옮김:  https://www.taemobang.com

 

방태모

안녕하세요, 제 블로그에 오신 것을 환영합니다. 통계학을 전공으로 학부, 석사를 졸업했습니다. 현재는 가천대 길병원 G-ABC에서 Data Science를 하고있습니다. 통계학, 시계열, 통계적학습과 기계

www.taemobang.com

 

prerequisite

ARIMA 모형

허구적 회귀

ARIMA 오차 회귀모형
More to read
Tutorials on distributed lag models in R

 

이번에는 여러 개의 시계열에 대한 분석방법 중 하나인 분포시차모형(distributed lag models, 이하 DLM)을 소개하려고 합니다. DLM은 모델링하고자 하는 시계열을 동시차의 여러 시계열들로 모형화하는 ARIMA 오차 회귀모형과는 달리, 현 시점의 반응변수($y$, 모델링하고자 하는 시계열)를 이전 시점의 독립변수[각주:1]로 모델링하는 것이라 할 수 있겠습니다. 이러한 이유에서 모형 이름에 "distributed lag"라는 표현이 들어갑니다. 물론 현시점의 독립변수도 모형식에 포함이 가능하나, 이전 시점의 독립변수만으로 모형화하는 것이 실제 예측에 매우 편리하겠죠? 왜냐하면, 반응변수의 모델링에 같은 시점의 독립변수를 포함시킬 경우 해당 독립변수에 대한 예측도 필요로 되기 때문이죠. 아울러, 만약 이전 시차의 반응변수까지 예측변수에 포함시킬 수도 있고, 이를 우리는 자기회귀 분포시차모형(autoregressive distributed lag models, 이하 ARDLM)이라 부릅니다. ARIMA 모형, ARIMA 오차 회귀모형에 대한 정리가 머릿 속에 잘 되있다면 DLM의 이해에 관한 내용은 이정도면 충분할겁니다.

 

이러한 분포시차모형의 적용 전에는 교차상관분석(cross-correlation function analysis, 이하 CCF 분석)이라는 것이 선행되어야 합니다. CCF 분석은 여러 시계열 간의 관계를 파악하는 방법으로, 시계열 간의 선행(lead) 도는 후행(lag) 관계가 존재하는지 알아냅니다. 예를 들어, 실업률 급증 한 달 전에 대중교통의 수요가 증가한다거나, 실업률 증가 3개월 후 주택 가격이 하락하고 여행 취소가 증가하는 등을 파악한 사례가 있습니다.[각주:2] 전자의 경우 대중교통 수요는 실업률의 선행지표이며, 후자의 경우 주택 가격은 실업률의 후행지표입니다. 선행지표는 특정시계열의 예측변수로 활용될 수 있고, 후행지표는 관련된 정책수립 등에 이용될 수 있겠죠? 이제 이러한 CCF 분석에 대해 좀 더 자세하게 소개해보겠습니다.😃

 

CCF 분석

CCF 분석은 2개 또는 그이상의 시계열 간의 관계를 파악하는데 유용하다고 했습니다. 예를 들어, 두 개의 시계열($y_t$, $x_t$) 간의 관계에서 $y_t$가 $x$-계열의 과거 시차와 관계될 수 있겠죠. CCF(cross-correlation function)는 이러한 $y_t$의 예측에 유용하게 사용될 수 있는 $x$-변수의 시차(lags)를 찾는데 유용합니다.

 

CCF는 시차 $h = 0, \pm 1, \pm 2, \cdots, \pm p$에 대해 $x_{t+h}$와 $y_t$ 간의 상관계수의 집합으로 정의됩니다. 예를 들어, $h$가 음수인 경우 $t$보다 이전 시점의 $x$ 변수와 $t$ 시점의 $y$ 변수간의 상관을 의미하는 것이죠. 즉, 우리는 상황에 따라 다음과 같이 표현할 수 있습니다:

 

  • 한 개 또는 그 이상의 $x_{t+h}$가 $y_t$의 예측변수로 사용되고 h가 음수일 때: "$x$가 $y$를 선행함(x leads y)"
  • 한 개 또는 그 이상의 $x_{t+h}$가 $y_t$의 예측변수로 사용되고 h가 양수일 때: "$x$가 $y$를 후행함(x lags y)"

CCF 분석은 어떤 변수가 선행 또는 후행하는 변수인지 찾는데 목적이 있고, 미래의 $y$ 값을 예측하는 것이 목적인 경우에는 선행하는 $x$ 변수를 찾는 것이 유용합니다. R에서 CCF 분석은 ccf() 함수로 진행 되는데, 자세한 과정은 More to read를 참고해주세요.

CCF 분석에서 주의해야 할 사항

마지막으로 CCF 분석에서 주의해야할 사항을 짚고 글을 마무리 하겠습니다. 계절성이 강한 두 시계열 간의 CCF 분석의 경우 두 시계열의 강한 계절성으로 인해 허구적 상관이 발생할 가능성이 있습니다. 허구적(spurious) 상관이란, 간단하게 말하면 실제로는 서로 독립적인(아무 관련이 없는) 비정상 시계열 간에 상관이 통계적으로 유의미하게 나오는 경우를 말합니다. 그래서 우리는 CCF 분석 그리고 차후의  DLM을 통한 모델링 등을 수행할 예정이라면, 이러한 허구적 상관, 허구적 회귀에 매우 주의를 기하여야합니다. 계절성이 강한 두 계열 간에 실제로 상관이 존재하는지 확인하는 방법은 간단합니다. 사전에 계절 차분을 통한 일종의 백색화(whitening)를 수행하는 것이죠. 이렇게 사전 백색화를 수행한 뒤에 CCF 분석을 수행하면 계절성이 간한 두 계열간의 순수한 선형적 연관을 확인할 수 있습니다.[각주:3]

 

📝 참고 문헌
나종화, R 응용 시계열분석, 자유아카데미(2020)


  1. Independent variables, 예측변수라고도 칭하며 기계학습에서는 features라고 칭함 [본문으로]
  2. UN Global Pulse에서 수행한 CCF 분석 [본문으로]
  3. 백색화는 선형 연산이기 때문에 백색화를 수행하여도 원 계열 간에 존재하는 선형 관계는 보존해줌 [본문으로]

'시계열 자료분석 > 시계열 회귀모형' 카테고리의 다른 글

[FPP3] 7.4 시계열 회귀모형의 유용한 예측변수  (0) 2021.08.25
Distributed lag non-linear models  (0) 2021.04.02
ARIMA 오차 회귀모형  (2) 2021.03.05
허구적 회귀  (0) 2021.03.05
Prophet 모형  (0) 2020.07.06

댓글