딥러닝을 이용한 시계열 분석
딥러닝 기반 시계열 예측(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 추정 과정
