본문 바로가기
Time Series

Time Series Analysis 개요

by 아르카눔 2025. 4. 23.

개요 

 

Time Series data 시계열 데이터는 이름 그대로 시간의 흐름에 따른 데이터를 의미한다.

 

기온, 주가, 센서 데이터 등등이 시계열 데이터다.

 

시계열 데이터는 다음과 같은 특징을 지닌다.

 

  1. 추세 (Trend): 장기적인 증가 또는 감소의 경향 부동산 가격의 지속적인 상승 등
  2. 계절성 (Seasonality): 일정한 주기(시간 단위)마다 반복되는 패턴 월별 아이스크림 판매량 증가 (여름)
  3. 순환성 (Cyclic): 장기적인 경기 요인에 의한 변화 (비정기적) 경제 호황과 불황
  4. 불규칙성 (Irregular/Noise): 예측 불가능한 요소 자연재해, 갑작스런 정책 변화 등

 

정상성 (Stationary):

시계열 데이터가 시간의 흐름에 따라서 평균과 분산이 변하지 않음을 의미한다.

 

이 정상성을 만족하느냐 아니냐에 따라서 적용 가능한 방법론들이 달라지게 된다.

그리고 전처리를 통해서 정상성을 만족하는 데이터로 변환하기도 한다.

 

 

시계열 데이터의 전처리 

  • 결측값 (missing values) 처리 (interpolation, forward/backward fill 등)
  • 정규화 / 표준화 (scaling)
  • 리샘플링 (resampling): 데이터 주기를 변경 (예: 분 단위 → 일 단위)
  • 시차 특성 생성 (lag features)
  • 차분 (differencing): 추세 제거 용도 

 

시계열 데이터의 분석

 

Spectral Analysis (주파수 분석)

 

시계열 데이터의 주기성을 활용하는 방법이다.

Trend, seaonality, cyclical irregularity를 찾는다. 일종의 decompostion이다. 

 

Harmonics Anaylsis:

다양한 주파수 (frequency)의 성분으로 분해.

Fourier Transform와 spectral density estimation이 대표적인 방법 중 하나다.

 

Non-stationary TS data에 대한 분석 

Wavelet Transform과 STFT (Short-Time Fourier Transform)을 적용 

 

Filtering

잡음 (noise)를 제거하거나 숨겨진 상태를 추정하는 방법이다. 

Kalman Filter, IIR (Infinite Impulse Response), FIR (Finite Impulse Response)

 

 

ARIMA 계열

자기상관성 (autocorrelation)과 이동평균 (moving average)와 차분 (differencing)를 이용한 예측 모델.  

 

  • AR(p)
  • MA(q)
  • ARMA(p, q)
  • ARIMA(p, d, q)
  • SARIMA
  • ARCH
  • GARCH 

 

Estimation
ARIMA나 GARCH 등과 같은 모델의 모수들 (parameters)을 추정한다.

 

 

Stochastic Process

어떤 분포를 따르는 시계열 데이터가 시간의 흐름에 따라서 어떻게 될지를 예측하는 모델이다. 

  • Random Walk
  • Hidden Markov Model (HMM) 
  • Wiener Process (Brownian Motion)
  • Poisson Process

 

Smoothing

노이즈나 작은 스케일의 데이터를 제거하려는 방법론이다.

 

  • Exponential Filtering
  • Kalman Filter
  • Moving Average

 

State-Space Models (SSM)

제어 공학 (Control Engineering)에서 사용하던 방법론으로, 

현재 상태와 외부에서 주어지는 제어 변수의 합으로 현재 상태의 변화율와 현재 결과 (output) 를 예측하는 방법론이다.

다음 상태를 예측하는게 아니라 변화율에 대한 함수기 때문에 미분 방정식의 형태다. 

 

딥러닝에서는 S4와 Mamba 등의 모델로 알게 된 모델이다.

 

 

Regression

  • Linear regression
  • Polynomial regression

 

Panel Analysis

횡단면 (cross-sectional) 데이터와 시계열 데이터를 모두 활용한 분석 방법 

 

  • Fixed Effects
  • Random Effects

 

Deep Learning based Models

 

RNN, LSTM, Transformer, S4, Mamba, 구글의 날씨 예측 모델 Nowcasting 등 

 

 

그외

Facebook의 Prophet

 

Unsuperivsed Machine Learning

  • Classification
  • Clustering
  • Segmentation

위 내용은 분석 방법론이라기 보단 분석의 태스크 혹은 목적이다.

 

Frequency Domain and Time Domain

 

Time Domain에서는 시간이 독립변수가 되어서 시간의 흐름에 따른 종속변수가 시그널의 값으로 해석한다.

 

Frequency Domain에서는 frequency 주파수에 따라서 어떻게 distributed 분포하는지를 알아보게 된다.

프리퀀시 도메인에서 푸리에 변환을 비롯한 온갖 수학적인 테크닉을 많이 사용하게 된다. 

 

 

 

 

여담

 

지금까지 배웠던 시계열 데이터 분석을 정리해보면,

 

1. 기본적인 ARIMA와 ACF, PACF 보는 방법,

 

2. 회귀분석의 경우 통계학과와 경제학과의 계량경제학 (Econometrics)에서 배운 OLS와 5가지 기본 가정,

그리고 이분산성에 대한 Goldfeld-Quandt test, Breusch–Pagan test, White test, 다중공선성과 VIF, 

자기공선성에 대한 Durbin-Watson test, Breusch-Godfrey LM test, GLS, FGLS, Cochran-Orcutt's iteration, 

Instrumental Variables (IV) 등등 

 

3. HMM, Wiener Process과 같은 확률과정

 

4. SSM 계열 - S4, HiPPO

 

5. RNN, LSTM, Transformer 등 딥러닝 모델들 

 

이정도인듯하다.

 

 

SSM 계열이나 Fourier Transform이나 Kalman filter 이쪽은 공부는 했는데 애매하게 알고 있어서 복습이 필요하다.

 

Dynamic Time Warping (DTW)이랑 Panel analysis도 대략적인 개념을 들어봤는데 더 깊은 공부가 필요하다.

 

Poisson process나 GARCH도 어떤 모델인지 궁금한데 언제 공부할지는 모르겠다. 

 

 

 

 

 

 

References:

https://en.wikipedia.org/wiki/Time_series

Time Series Analysis and Its Applications With R Examples, Robert H. Shumway, and David S. Stoffer, Springer

https://www.lgresearch.ai/blog/view?seq=427

https://kr.mathworks.com/help/dsp/ug/spectral-analysis.html

https://medium.com/enjoy-algorithm/pre-processing-of-time-series-data-c50f8a3e7a98

https://medium.com/totalenergies-digital-factory/time-series-the-problem-with-resampling-7baea5a3873c

https://en.wikipedia.org/wiki/Smoothing

https://en.wikipedia.org/wiki/Stationary_process

https://en.wikipedia.org/wiki/Stochastic_process

https://en.wikipedia.org/wiki/State-space_representation

https://huggingface.co/blog/lbourdois/get-on-the-ssm-train

https://blog.naver.com/vnf3751/220866129578

https://slowsteadystat.tistory.com/7

https://velog.io/@ssmkja61792635/%EC%8B%9C%EA%B3%84%EC%97%B4-%EC%8B%9C%EA%B3%84%EC%97%B4-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D-%EA%B0%9C%EC%9A%94

https://en.wikipedia.org/wiki/Time_domain

https://en.wikipedia.org/wiki/Frequency_domain

 

 

'Time Series' 카테고리의 다른 글

ARIMA 계열 모델들 - 작성중  (0) 2025.05.18
HiPPO (2020) 논문 리뷰  (0) 2025.05.17
Wave 파동 기본 개념 정리  (0) 2025.04.28