Skip to Content

슬로우페이퍼 - 시계열 (개인용) (1)

시계열 프로젝트의 단계: 시계열 프로젝트의 단계에는 데이터 수집, 탐색적 데이터 분석, 데이터 전처리, 모델 선택, 모델 훈련, 모델 평가, 하이퍼파라미터 조정, 그리고 최종 예측이 포함됩니다. 구조화된 접근 방식을 따르고 문제 및 데이터 특성에 따라 각 단계에 적절한 모델과 기술을 선택하는 것이 중요합니다. 시계열 프로젝트의 목적: 시계열 프로젝트의 목적은 과거 데이터에 기반하여 시간에 따라 변하는 변수의 미래 값을 정확하고 신뢰할 수 있게 예측하는 것입니다. 데이터에 내재된 패턴과 추세를 포착하여 의사결정과 계획에 사용될 수 있는 예측을 만드는 것이 목표입니다.


시계열 분석과 예측 프로젝트를 구축함으로써 실제로 원하는 것을 하면서 배우게 됩니다. 기계 학습 데이터셋에서 다양한 시계열 분석 및 예측 기술을 실제로 구현하는 연습은 기계 학습을 위한 시계열 분석 개념을 숙달하는 데 필수적입니다. 우리가 제시한 프로젝트 아이디어는 실제 실습을 통한 시계열 분석을 제공할 것입니다. 단순히 시계열을 공부하고 문헌을 읽는 것만으로는 기술적인 기술과 이해를 개발할 수 없습니다. 배경 지식은 시계열, 시계열 모델, 요소들, 그리고 가능한 응용 분야에 대한 아이디어를 제공하는 데 중요하지만, 다양한 모델과 기술에 대한 노출을 제공하는 관련 시계열 프로젝트에 참여함으로써 시계열 분석 및 예측 기술을 개발할 수 있습니다. 시계열 분석이란 무엇인가요? 시계열은 일정 기간에 걸쳐 정렬된 데이터 포인트의 순서로 정의될 수 있습니다. 이 경우 시간은 보통 독립 변수로 사용되며, 다른 변수들은 값을 계속 변경합니다. 시계열 데이터는 일정한 시간 간격으로 일정 기간 동안 모니터링됩니다. 시계열 분석은 지정된 시간 동안 데이터셋에서 공통 패턴을 식별하는 과정입니다. 이러한 패턴은 순환 패턴, 계절 패턴, 무작위 패턴, 추세로 분류할 수 있습니다. 시계열 분석 이해하기 시계열 모델은 다음과 같이 분류될 수 있습니다 - 첫 번째는 이동 평균, MA 모델로 단변량 시계열에 사용되는 기본 모델입니다. MA 모델의 출력 변수는 현재 또는 과거 값에 대한 선형 의존성을 가집니다. 새로운 시리즈는 현재/과거 값의 평균을 기반으로 개발됩니다. 이동 평균 시계열 모델을 사용하여 추세를 쉽게 파악할 수 있습니다. 지수 평활, ES 모델도 단변량 시계열에 사용됩니다. 그러나 이 경우 값은 과거 값의 가중 평균에서 결정됩니다. ES 모델을 사용하여 추세와 계절성을 식별할 수 있습니다. 자기회귀 통합 이동 평균, ARIMA는 분석 및 예측을 위해 널리 사용되는 시계열 모델입니다. 이 모델은 두 모델을 결합하여 다변량 분석을 수행합니다.


인공지능 시계열 강의 커리큘럼 이 과정은 시계열 분석에 대한 완벽한 교육 과정으로, 다음과 같은 내용을 포함하고 있습니다:

  1. ETS와 지수 평활: 시계열 데이터에서 패턴을 예측하고 분석하는 기법입니다.
  2. 홀트의 선형 추세 모델 및 홀트-윈터스 모델: 시계열 데이터에서 추세와 계절성을 포착하는 모델입니다.
  3. ARIMA, SARIMA, SARIMAX, Auto ARIMA: 비정상 시계열 데이터를 분석하고 예측하는 고급 모델들입니다.
  4. ACF와 PACF: 자기상관 함수와 부분 자기상관 함수를 통해 데이터의 상관 관계를 분석합니다.
  5. VAR, VMA, VARMA: 다변수 시계열 모델로 시스템 내 여러 시계열 간의 관계를 분석합니다.
  6. 머신 러닝 모델: 로지스틱 회귀, 서포트 벡터 머신, 랜덤 포레스트 등을 시계열 데이터에 적용합니다.
  7. 딥 러닝 모델: 인공 신경망, 합성곱 신경망, 순환 신경망 등을 활용하여 시계열 예측을 수행합니다.
  8. GRU와 LSTM을 이용한 예측: 시계열 데이터에 대한 더 정교한 딥 러닝 기법을 적용합니다.



ETSformer

https://www.youtube.com/watch?v=nIkX1vHcsug 


  • 엔트로피 개념

엔트로피란 무엇일까? - 정보이론 입문 SERIES 1/3

정보의 양을 어떻게 측정할까?

우리는 매일 정보를 교환합니다. 언어, 문자, 심지어 우리의 행동도 정보를 전달하는 수단입니다. 물리학에서 질량이나 속도를 측정하는 것처럼, 정보 역시 측정할 수 있습니다. 이를 가능하게 하는 개념이 바로 ‘정보량’입니다.

정보량의 시작: 최소 질문 개수

정보량은 어떤 메시지를 전달하기 위해 필요한 최소한의 질문 개수로 정의됩니다. 예를 들어, 동전을 다섯 번 던진 결과를 전기 신호로 전송한다고 생각해 봅시다. 동전의 앞면을 ‘1’, 뒷면을 ‘0’으로 표현하면, 5개의 숫자(예: 10110)로 결과를 전달할 수 있습니다. 이것이 바로 정보량의 기본 아이디어입니다.

Hartley의 정보 이론

R.V.L Hartley는 정보의 양을 수학적으로 표현한 최초의 사람 중 한 명입니다. 그는 정보량을 다음과 같이 정의했습니다: H=nlog(s)=log(sn)H = n \log(s) = \log(s^n) 여기서 nn 은 메시지의 길이(문자 수), ss 는 가능한 각 선택의 결과 수(예: 알파벳의 경우 26)입니다.

엔트로피: 정보의 ‘불확실성’ 측정

엔트로피는 정보의 불확실성을 측정하는 방법입니다. 클로드 섀넌은 엔트로피를 다음과 같이 정의했습니다: H=ipilog2(pi)H = -\sum_{i} p_i \log_2(p_i) 이 식에서 pip_i 는 각 사건의 발생 확률입니다. 엔트로피는 가능한 모든 사건이 같은 확률로 발생할 때 가장 높습니다.

엔트로피의 예: 기계 X와 Y

두 기계 X와 Y가 있다고 가정합시다. 기계 X는 A, B, C, D를 각각 25%의 확률로 출력합니다. 반면 기계 Y는 다른 확률 분포를 가집니다(A: 50%, B: 12.5%, C: 12.5%, D: 25%). 이 경우, 기계 Y의 엔트로피는 기계 X보다 낮습니다. 이는 기계 Y가 기계 X보다 더 예측 가능하다는 것을 의미합니다.

엔트로피의 중요성

엔트로피는 정보의 양과 직결되며, 정보를 얼마나 효율적으로 전달할 수 있는지를 나타냅니다. 엔트로피가 높으면 불확실성이 크고, 엔트로피가 낮으면 정보가 더 명확하고 예측 가능합니다. 이러한 개념은 통신, 데이터 압축, 패턴 인식 등 다양한 분야에서 중요하게 활용됩니다.

  • **적률 - ** 시계열 데이터에서의 ‘적률(Moments)‘은 데이터의 특정 통계적 특성을 나타내는 중요한 지표입니다. 적률은 데이터 분포의 형태와 특성을 이해하는 데 사용되며, 일반적으로 다음과 같은 네 가지 주요 적률이 있습니다:
    1. 평균(1차 적률): 데이터의 중심 위치를 나타냅니다. 시계열 데이터에서 평균은 시간에 따른 데이터 값들의 평균값을 의미합니다.
    2. 분산(2차 적률): 데이터가 평균으로부터 얼마나 퍼져 있는지를 나타냅니다. 시계열에서 분산은 시간에 따라 값들이 얼마나 변동하는지를 보여줍니다.
    3. 왜도(3차 적률): 데이터 분포의 비대칭성을 측정합니다. 시계열 데이터에서 왜도는 값들이 평균을 중심으로 어떻게 비대칭적으로 분포하는지를 나타냅니다. 왜도가 0에 가까우면 정규 분포에 가깝다고 볼 수 있습니다.
    4. 첨도(4차 적률): 데이터 분포의 뾰족한 정도와 꼬리의 두께를 나타냅니다. 시계열 데이터에서 첨도는 값들이 평균 주변에 얼마나 집중되어 있는지, 그리고 극단적인 값들이 얼마나 자주 발생하는지를 보여줍니다. 이러한 적률들은 시계열 데이터의 기본적인 특성을 이해하고, 데이터가 어떤 통계적 특성을 가지고 있는지 분석하는 데 중요한 역할을 합니다. 예를 들어, 금융 시계열 데이터에서는 높은 첨도를 가지는 경우가 많으며, 이는 극단적인 가격 변동이 자주 발생할 수 있음을 의미합니다.

딥러닝 기반 시계열 예측(Time Series Forecasting) 모델 동향

시계열 데이터 예측은 금융, 기후, 의료, 교통 등 다양한 분야에서 오랜 기간 동안 연구되었다. 전통적으로 ARIMA, VAR 등 계량통계학 기반의 예측 모델들이 있으며, 최근에는 시계열 데이터의 비선형적이고 불규칙적인 특성을 효과적으로 학습하여 미래를 예측하는 딥러닝 모델들이 활발히 연구되고 있다. 딥러닝 모델의 상당수는 저자가 오픈소스로 공개하거나, 연구, 활용 등에서 참조가 빈번한 모델의 경우 개발 프레임워크의 패키지로 제공되어 손쉽게 활용이 가능하다. 본 고에서는 딥러닝 모델 중 RNN 계열의 모델들뿐만 아니라 ODE 및 CDE 기반 모델, 어텐션 기반의 Transformer 계열 모델, 시간 및 공간 정보를 활용하는 GCN 계열 모델 등 시계열 데이터 예측 분야에서 제시된 다양한 딥러닝 모델들을 살펴보고자 한다.

I. 서론

시계열 데이터를 분석하여 미래를 예측하는 것은 금융, 기후, 의료, 교통 등 다양한 분야에서 활발히 연구되었다. 전통적으로 ARIMA(Auto-Regressive Integrated Moving Average), VAR(Vector Auto-Regressive) 등 계량통계학 기반의 다양한 모델들이 제시되었고, 최근에는 RNN(Recurrent Neural Network), GRU(Gated Recurrent Unit), LSTM(Long-Short Term Memory) 등 딥러닝 기반의 예측 모델도 활발하게 연구되고 있다. 본 고에서는 딥러닝 모델 중 RNN 계열의 모델들뿐만 아니라 Transformer, GCN(Graph Convolutional Network) 등 시계열 데이터 예측 분야에서 연구되고 있는 다양한 모델들을 살펴보고자 한다. Transformer 모델은 주로 자연어처리 분야에서 활용되었으며, 최근에는 시계열 데이터 예측에서도 파생 및 개선된 모델들이 제시되고 있다. GCN 모델은 시계열 데이터가 공간(spatial) 정보를 갖고 있는 경우 일반화한 CNN(Convolutional Neural Network)의 콘볼루션(convolution) 개념을 예측 시 활용하는 모델이며, 주로 교통량 예측에서 활발히 연구되고 있다. <자료> Lim, Bryan, and Stefan Zohren, “Time-series forecasting with deep learning: a survey,” Philosophical Transactions of the Royal Society A 379.2194, 2021. [그림 1] 시계열 데이터 예측 모델의 특징

[그림 1]은 이러한 모델들이 시계열 데이터에 내재된 의미 있는 정보(hidden state)를 찾는 과정을 간략히 보여준다[1]. [그림 1 (b)]는 RNN 계열의 모델들이 내재된 정보를 찾는 과정, [그림 1 (c)]는 Transformer 계열의 모델들이 내재된 정보를 찾는 과정 그리고 [그림 1 (a)]는 CNN, GCN 등과 같이 콘볼루션 기반 모델들이 내재된 정보를 찾는 과정을 보여준다. 본 고의 구성은 다음과 같다. II장에서는 RNN 계열의 모델들에 대해 간략히 살펴보고, III장에서는 RNN 계열 모델들에 연속성을 부여하기 위해 미분방정식을 도입한 Neural ODE(Ordinary Differential Equation) 및 CDE(Controlled Differential Equation) 기반 모델들과 IV장에서는 Transformer 계열의 시계열 데이터 예측 모델들을, V장에서는 GCN 계열의 모델들을 살펴본다. 마지막으로 VI장에서는 각종 시계열 모델들을 사용할 수 있는 환경에 대해 간략히 설명한다.

II. RNN 계열 모델

RNN 모델은 오랜 시간 동안 연구되고 사용해 왔던 대표적인 딥러닝 기반 시계열 데이터 예측 모델이다. RNN 모델은 [그림 2]와 같이 특정 시점의 은닉 계층 값을 다음 시간의 데이터를 학습할 때 활용할 수 있도록 전달하는 순환 반복적인 구조(recurrent)를 갖는다. RNN 모델은 시간이 흐르며 새롭게 입력되는 데이터가 증가할수록 학습 시 과거 정보가 적절히 반영되지 않는 문제가 있다. 즉, 장기 의존 관계에 있는 데이터를 제대로 학습할 수가 없다. 이러한 문제를 보완한 것이 LSTM(Long-Short Term Memory)과 GRU 모델이다. [그림 2] RNN 모델의 아키텍처

LSTM 모델은 장기 의존 관계를 학습하기 위해 추가 모듈(forget, input, output gate)을 구성한다[2]. 각 모듈은 장기 의존 문제를 일부 해결하며 과거 정보를 적절히 활용할 수 있도록 지원한다. GRU 모델 또한 추가 모듈(reset, update gate)을 구성하는데, LSTM 대비 학습해야 할 파라미터 수가 적어 빠르게 학습할 수 있다[3].

III. ODE/CDE 기반 모델

II장에서 설명한 RNN, LSTM, GRU 등 전통적인 딥러닝 기반의 시계열 데이터 예측 모델들은 불연속적인 데이터를 학습하고, 불연속적으로 데이터에 내재되어 있는 정보를 찾으며 이를 기반으로 미래를 예측한다. 여기서 데이터에 내재되어 있는 정보의 변화(dynamics of hidden state)를 미분방정식 개념을 도입하여 연속적으로 모델링하는 것이 Neural ODE 및 CDE 모델이다[4],[5]. ODE란 단일 변수를 갖는 상미분 방정식을 말한다. 오일러 기법(euler method)은 상미분방정식으로 본 함수(original function)를 찾는 대표적인 방법이다. 오일러 기법은 [그림 3 (a)] 같이 초기값(A0)부터 시작하여 근사치를 찾는 과정을 반복하여 본 함수의 근사치를 찾는다. 오일러 기법에서 각 구간의 변화량을 계산하여 본 함수의 근사치를 구하는 방법은 [그림 3 (b)]와 같이 ResNet의 잔차 연결(residual connection)과 동일하다[6]. 오일러 기법이 각 단계의 변화량을 통해 본 함수를 근사치를 찾는 것이 목적이라면, ResNet은 데이터에 내재된 정보의 변화를 지배하는(governing) 본 함수를 찾는 것이 목적이다. 이는 다음 수식으로 표현할 수 있다. n번째 시간에서의 내재된 정보 hn의 값을 찾는 것은 h1부터 시작하여 hn-1까지 무수히 많은 시간 스텝에서 그 변화량을 더하는 것과 동일하다. <자료> (a) “Euler method,” https://en.wikipedia.org/wiki/Euler_method , 2022. 재구성(b) He, Kaiming, et al., “Deep residual learning for image recognition,” Proceedings of the IEEE conference on computer vision and pattern recognition. 2016. 재구성 [그림 3] 오일러 기법과 잔차 연결

이와 같이 불연속적인 변화량을 무한히 더해 본 함수를 찾는 것과 달리, 무수히 많은 미분 기반의 변화량을 더해 본 함수를 찾는 과정을 Neural Network로 모델링한 것이 Neural ODE 모델이다.

Neural ODE 모델은 연속성을 확보하는 것뿐만 아니라, 역전파(back-propagation) 과정에서 ODE solver를 사용하여 gradient를 계산할 수 있어 순전파(feed-forward)의 파라미터 값을 모두 저장할 필요가 없으며 따라서 메모리 효율이 높다. 시계열 데이터를 연속적으로 모델링하는 Neural ODE 모델은 기존의 다양한 RNN 계열 모델들에 적용되었다. ODE-RNN 모델은 GRU 모델의 은닉 계층 값의 변화량에 ODE 개념을 도입하여 불규칙한 시간 간격을 갖는 시계열 데이터를 효과적으로 처리할 수 있다[7]. <자료> Rubanova, Yulia, Ricky TQ Chen, and David K. Duvenaud, “Latent ordinary differential equations for irregularly-sampled time series,” Advances in neural information processing systems 32, 2019. [그림 4] Latent ODE 모델의 Encoder-Decoder 아키텍처 Latent ODE 모델은 [그림 4]와 같이 VAE(Variational Auto-Encoder) 모델과 같은 인코더-디코더(encoder-decoder) 구조를 갖는데[7], ODE-RNN을 인코더로 사용하였고, ODE를 디코더 구조로 이용하여 불규칙한 시간 간격의 데이터를 효과적으로 처리한다. Neural ODE 모델은 상미분 방정식의 특성으로 인해 초기 조건에 지나치게 의존하는 초기값 문제(initial value problem)가 있는데, 입력 데이터를 매 시점마다 학습하도록 개선한 모델이 Neural CDE이다. 그리고 [그림 5 (a)]와 같이 Neural ODE 모델은 시계열 데이터로부터 직접 불연속적인 내재된 정보(hidden state)를 찾지만 Neural CDE 모델은 [그림 5 (b)]와 같이 시계열 데이터를 연속적인 형태(path X)로 변환한 후 이를 기반으로 데이터에 내재된 정보의 변화를 연속적으로 모델링한다. 여기서 시계열 데이터를 연속적인 형태로 변환하는 과정은 불연속적인(irregular or partially observed) 시계열 데이터를 처리하는데 매우 효과적이다. <자료> Kidger, Patrick, et al., “Neural controlled differential equations for irregular time series,” Advances in Neural Information Processing Systems 33, 2020, 6696-6707. [그림 5] Neural ODE 및 CDE 모델의 Hidden State 추정 과정

Ⅳ. Transformer 계열 모델

Transformer 모델은 RNN 모델에서 그 발전이 시작되었다고 할 수 있다. 시계열 데이터 상에서 RNN 계열의 모델들은 입력 시퀀스 값을 학습하여 미래의 어떤 값을 예측하는데, 이러한 방식은 인코더-디코더 구조 및 context vector 개념 도입을 통해 입력 시퀀스 기반 출력 시퀀스를 예측하는 Seq2Seq 모델로 발전하였다[8]. 하지만 Seq2Seq 모델은 장기 의존성 문제(long-term dependency problem)에 의한 정보 손실이 있었고, 디코더에서 인코더의 입력 시퀀스를 다시 한 번 참고할 수 있도록 어텐션(attention) 개념을 도입하여 이를 개선한 것이 Transformer 모델이다[9]. <자료> Vaswani, Ashish, et al., “Attention is all you need,” Advances in neural information processing systems 30, 2017. [그림 6] Transformer 모델의 Encoder-Decoder 아키텍처 [그림 6]은 Transformer 모델의 인코더-디코더 아키텍처이다. 인코더에서는 입력 시퀀스에 대해 임베딩을 수행하고, 위치 정보를 추가(positional encoding)한다. 그리고 입력 시퀀스에서 특징을 추출하기 위해 multi-head 어텐션을 사용한다. 인코더를 통해 획득한 입력 시퀀스 정보는 디코더의 multi-head 어텐션에 입력되어 디코더의 학습을 지원한다. Transformer 모델은 주로 자연어 처리 분야에서 사용되었는데, 최근에는 시계열 데이터 예측 분야에서도 연구가 활발하게 진행되고 있다. Transformer 모델의 문제점은 지역성을 잘 표현하지 못한다는 점과 메모리 병목 현상을 유발한다는 점인데, 이를 개선한 것이 LogSparse Transformer 모델이다[10]. [그림 7]은 기존 Transformer 모델과 LogSparse Transformer의 셀프 어텐션을 보여준다. LogSparse Transformer 모델은 커널 크기를 k개까지 설정하여 [그림 7 (c)]와 같이 시계열 데이터의 지역성을 효과적으로 분석할 수 있다. <자료> Li, Shiyang, et al., “Enhancing the locality and breaking the memory bottleneck of transformer on time series forecasting,” Advances in neural information processing systems 32, 2019. [그림 7] LogSparse Transformer 모델에서의 셀프 어텐션

[그림 8 (a)]는 Transformer 모델의 셀프 어텐션 방식을 보여주는데, 어텐션 시 과거 모든 데이터를 참조함으로써 입력 값의 길이가 증가함에 따라 공간 복잡도가 급격히 증가한다. 하지만 [그림 8 (b)]와 같이 LogSparse 셀프 어텐션 메커니즘을 보면 참조하는 과거 데이터의 간격이 기하급수적으로 증가하는 형태로 공간 복잡도가 감소한다. [그림 8 (c)]와 [그림 8 (d)]도 LogSparse를 기반으로 참조하는 과거 데이터의 양을 기존 셀프 어텐션 방식 대비 전략적으로 감소시킨다. 해당 논문에서는 일부 데이터에 대한 실험을 통해 기존 방식보다 높은 성능을 보였다. <자료> Li, Shiyang, et al., “Enhancing the locality and breaking the memory bottleneck of transformer on time series forecasting,” Advances in neural information processing systems 32, 2019. [그림 8] LogSparse 기반 셀프 어텐션

Transformer 모델은 시계열 데이터 예측에서 상당한 잠재력을 갖고 있지만, 시간 복잡도와 메모리 사용량이 높고, 인코더-디코더 구조의 한계 등으로 장기 시계열 예측에 한계가 있다. Informer 모델은 이러한 문제들을 개선하기 위해 [그림 9]와 같이 ProbSparse 셀프 어텐션 메커니즘을 제시한다[11]. ProbSparse 셀프 어텐션은 각 키(key)들에 대해 의미있는 쿼리(query)들만 집중할 수 있도록 하여 연산량 및 메모리 사용량을 감소시킨다. <자료> Zhou, Haoyi, et al., “Informer: Beyond efficient transformer for long sequence time-series forecasting,” Proceedings of the AAAI Conference on Artificial Intelligence, Vol.35. No.12. 2021. [그림 9] Informer 모델의 Encoder-Decoder 아키텍처

[그림 9]에서 인코더를 보면 ProbSparse 셀프 어텐션들을 수행하며 지식 증류(knowledge distilling)를 통해 모델 크기를 감소시킨다. 이에 따라 메모리 사용량도 감소한다. 디코더에서는 인코더를 통해 생성한 특징 맵(feature map) 기반 가중치 어텐션을 구성하여 장기 시계열 입력 값에서 미래 값을 예측한다. 앞서 언급한 모델들은 Transformer 모델의 셀프 어텐션을 효율적으로 사용하는 방법을 제시하였다면, autoformer 모델은 fast fourier transform 기반 auto-correlation 메커니즘을 통해 sub-series 사이의 의존성을 찾아 Transformer 모델을 개선하였다[12]. [그림 10]은 autoformer 모델의 아키텍처이다. 인코더는 시계열 데이터를 입력받아 분해작업(series decomposition)을 수행한다. 이를 통해 시계열 데이터가 갖는 트렌드 성질을 제거하고, 계절성 패턴을 모델링 한다. 디코더는 잠재적인 트렌드 및 계절성을 생성하고, 인코더로부터 전달받은 시계열 데이터의 트렌드 정보를 활용하여 학습을 수행한다. <자료> Wu, Haixu, et al., “Autoformer: Decomposition transformers with auto-correlation for long-term series forecasting,” Advances in Neural Information Processing Systems 34, 2021, 22419-22430. [그림 10] Autoformer 모델의 Encoder-Decoder 아키텍처

[그림 11]은 앞서 언급했던 Transformer 모델의 어텐션, LogSparse 어텐션 그리고 auto-correlation의 특징을 보여준다. Transformer 모델의 어텐션은 시계열 데이터의 모든 포인트를 참조하고, LogSparse 어텐션은 시계열 데이터 상에서 과거로 갈수록 기하급수적으로 참조하는 데이터의 간격을 증가시킨다. 반면에 auto-correlation 기법은 과거 특정 구간들에서 탐지되는 sub-series 사이의 관계성을 참조한다. <자료> Wu, Haixu, et al., “Autoformer: Decomposition transformers with auto-correlation for long-term series forecasting,” Advances in Neural Information Processing Systems 34, 2021, 22419-22430. [그림 11] Transformer 계열 모델별 어텐션 기법

[표 1]은 Transformer 계열 시계열 데이터 예측 모델들의 시간 및 공간 복잡도를 보여준다. ProSparse 셀프 어텐션 메커니즘을 사용하는 informer 모델이 Transformer 및 LogSparse Transformer 대비 시간 및 공간 복잡도가 낮음을 알 수 있다. [표 1] Transformer 모델별 Time and Space Complexity

모델TrainingTesting
TimeMemorySteps
TransformerO(L2)O(L2)L
LogSparse TransformerO(LlogL)O(L2)1
InformerO(LlogL)O(LlogL)1

<자료> Wen, Qingsong, et al., “Transformers in time series: A survey,” arXiv preprint arXiv:2202.07125, 2022, 재구성 [표 2]은 각 모델을 EETm2 데이터로 학습 및 예측을 수행하였을 때 MSE(Mean Squared Error)를 보여준다[13]. EETm2 데이터에 대해 예측 길이(output length)가 가장 짧은 경우는 informer 모델이 가장 우수한 성능을 보였고, 예측 길이가 가장 긴 경우는 Transformer 모델이 가장 우수한 성능을 보였다. [표 2] Transformer 모델별 MSE(Mean Squared Error)

모델Output Length
96192336720
Transformer0.6041.0601.4132.672
LogSparse Transformer0.7680.9891.3343.048
Informer0.3650.5331.3633.379
Autoformer0.5810.4032.6323.058

<자료> Wen, Qingsong, et al., “Transformers in time series: A survey,” arXiv preprint arXiv:2202.07125, 2022. 재구성

Ⅴ. GCN 계열 모델

Spatio-Temporal Time-series Forecasting은 시계열 데이터 간 상호 관계, 시간의 흐름에서 획득할 수 있는 정보 등을 파악하여 해당 데이터가 미래 시점에 어떻게 변화할지 예측하는 연구 분야이다. 이러한 연구 분야에서 대표적으로 사용하는 모델이 GCN이다. GCN 모델은 CNN 모델을 일반화하여 그래프 형태의 데이터에 적용한 것으로 [그림 12]는 GCN 모델에서 다루는 데이터의 형태를 의미하는데, 그래프의 각 노드, 노드의 특징, 노드 사이의 관계, 관계의 특징 등을 대상으로 학습 및 예측을 수행한다. 본 장에서는 대표적인 GCN 기반 예측 모델들을 소개한다. <자료> 금융결제원 자체 작성 [그림 12] GCN 계열 모델의 입력 형식

DCRNN(Diffusion Convolutional Recurrent Neural Network) 모델은 인코더-디코더 형태의 아키텍처로 diffusion graph convolution layer를 GRU 방식으로 사용한다[14]. 인코더-디코더 구조를 기반으로 장기(long-term) 예측이 가능하며, diffusion graph convolution을 순환 반복적으로 사용함으로써 교통량의 변화를 확산(diffusion) 프로세스로 모델링하고, 시계열 데이터에서 spatial-temporal 의존성을 찾을 수 있다. [그림 13]은 DCRNN 모델의 아키텍처이다. <자료> Li, Yaguang, et al., “Diffusion convolutional recurrent neural network: Data-driven traffic forecasting,” arXiv preprint arXiv:1707.01926, 2017. [그림 13] DCRNN 모델의 아키텍처

해당 논문에서는 도로 네트워크에서 교통량 예측을 중심으로 실험을 진행하였지만 동 모델은 다양한 spatial-temporal 모델링에 적용이 가능하다[14]. STGCN(Spatio-Temporal Graph Convolutional Networks) 모델은 교통량 예측 문제뿐만 아니라 일반적인 spatial-temporal 예측을 위한 모델링에서도 사용될 수 있다[15]. STGCN 모델은 일반적으로 convolution layer를 반복된(recurrent) 구조가 아닌, graph convolution과 gated temporal convolution을 결합한 형태로 모델링 한다. 이를 통해 더 적은 파라미터 수로 더 빠르게 spatial-temporal 데이터를 학습 및 예측할 수 있다. [그림 14]는 STGCN 모델의 아키텍처이다. STGCN 모델은 두 개의 ST-Conv(Spatio-Temporal Convolutional) block과 output layer(fully connected)로 구성되어 있다. 각각의 ST-Conv block은 temporal 및 spatial graph-conv(convolutional) layer로 구성되어 있는데, 이를 기반으로 spatial-temporal 의존성을 찾을 수 있다. <자료> Yu, Bing, Haoteng Yin and Zhanxing Zhu, “Spatio-temporal graph convolutional networks: A deep learning framework for traffic forecasting,” arXiv preprint arXiv:1709.04875, 2017. [그림 14] STGCN 모델의 아키텍처

AGCRN(Adaptive Graph Convolutional Recurrent Network) 모델은 앞서 설명한 GCN 모델들과 다르게 사전 정의된 그래프 구조 없이 시계열 데이터에서 spatial-temporal 의존성을 파악할 수 있다[16]. AGCRN 모델은 그래프 내 노드의 패턴을 찾는 NAPL(Node Adaptive Parameter Learning) 모듈과 서로 다른 트래픽 사이의 의존성을 추론하는 DAGG(Data Adaptive Graph Generation) 모듈로 구성되어 있다. NAPL 모듈은 대규모 파라미터를 직접 학습하지 않고, matrix factorization을 수행하여 작은 규모의 파라미터 matrix 두 개로 분할한 후 학습한다. DAGG 모듈은 그래프의 구조를 학습 가능하도록 하여 사전 정의된 그래프가 갖는 단점(불충분한 의존성 정보, 관련 연구 도메인에 대한 사전지식 등)을 보완한다. [표 3]은 각 모델을 PeMSD4 및 PeMSD8 데이터로 학습 및 예측을 수행하였을 때 MSE, RMSE(Root Mean Square Error), MAPE(Mean Absolute Percentage Error)를 보여준다[16]. PeMSD4 데이터에 대해서는 STGCN이 MAE 및 MAPE 지표 기준으로 가장 우수한 성능을 보였고, PeMSD8 데이터에 대해서는 DCRNN이 가장 우수한 성능을 보였다. [표 3] GCN 모델별 MSE/RMSE/MAPE

모델PeMSD4PeMSD8
MSERMSEMAPEMSERMSEMAPE
DCRNN21.2233.4414.17%16.8226.3610.92%
STGCN21.1634.8913.83%17.5027.0911.29%
AGCRN19.8332.2612.97%15.9525.2210.09%

Ⅵ. 결론

본 고에서는 RNN, Neural ODE/CDE, Transformer, GCN 등 다양한 딥러닝 모델 기반의 시계열 데이터 예측 모델들의 특징을 살펴보았다. 전통적인 RNN 계열 모델들은 은닉 계층 값을 순환 반복적으로 활용하여 예측 시 사용하였고, ODE/CDE 기반 모델들은 시계열 데이터를 연속적으로 모델링할 수 있다. 또한, Transformer 계열 모델들은 어텐션 메커니즘을 통해 과거 시계열 데이터 상에서 중요한 정보들을 찾고, GCN 계열 모델들은 temporal 정보에 spatial 정보까지 추가하여 시계열 예측에 활용한다. 본 고에서 살펴본 모델의 대부분은 개발 프레임워크 패키지(pytorch 등)를 통해 사용할 수 있거나, 각 논문의 저자가 GitHub 상에 구현된 모델의 소스코드를 공유하였다. 따라서 시계열 데이터 분석 및 예측을 원한다면 각 모델들을 쉽게 활용하여 실험해볼 수 있다.