🖇 시계열 데이터란?
🖇 시계열 데이터를 왜 따로 다뤄야 할까?
🖇 시계열 데이터의 주요 특징
🖇 시계열 데이터를 다룰 때 유의할 점
현실의 많은 데이터는 시간과 밀접한 관계를 맺고 있다.
주가, 기온, 환율, 소비자의 월별 구매량, 웹사이트의 일간 방문자 수, 병원 중환자의 심박수처럼 일정한 시간 간격으로 수집되는 데이터는 시계열(Time Series) 데이터에 해당한다.
그렇다면 시간에 따라 나열된 숫자들을 수집하면 모두 시계열 데이터일까? 그렇지 않다. 시계열 데이터에는 '시간적 순서'와 '이전 값과의 관계'라는 중요한 특성을 가지고 있어야 한다.
이 글에서는 시계열 데이터란 무엇인지, 주요 특성, 분석 시 유의사항 등을 개괄적으로 정리한다.
시계열 데이터는 일정한 시간 간격을 두고 순서대로 기록된 데이터를 말한다. 일반적인 표 형태의 데이터셋과 달리 시계열 데이터는 순서를 바꿀 수 없으며, 그 순서 자체가 데이터의 해석과 분석에 중요한 영향을 미친다.
다음과 같은 데이터는 대표적인 시계열 데이터라고 할 수 있다.
이처럼 시계열 데이터는 항상 시간 축(time axis)을 기준으로 해석되어야 하며, 데이터 간에는 시간에 따른 연관성이 존재한다.
따라서 일반적인 회귀나 분류와는 다른 접근 방식이 필요하다.
“과거는 미래에 어떤 영향을 주는가?”,
“지금의 변화는 과거의 어떤 흐름과 관련이 있는가?”
시계열 분석은 시간 순서대로 관측된 데이터를 바탕으로 패턴을 식별하고, 미래를 예측하거나 과거를 설명하는 작업이다.
미래 예측만을 목적으로 하는 것이 아니라 변화의 원인을 진단하거나, 이상 행동을 감지하고, 시스템을 이해하는 데도 활용된다.
시계열 데이터는 일반적인 데이터와 달리 시간에 따라 순차적으로 기록되며, 각 관측값이 시간적으로 서로 연결되어 있다는 특성을 갖는다는 것을 알 수 있었다.
이로 인해 데이터를 구성하는 요소들 간에는 시간 의존성이 존재하고 과거의 값이 미래에 영향을 미치는 구조를 가진다. 예를 들어 어제의 주가는 오늘의 주가에 영향을 줄 수 있고, 계절이나 주기에 따른 반복적인 패턴도 나타날 수 있다. 이러한 구조는 일반적인 회귀나 분류 모델에서 가정하는 '독립항등분포'(i.i.d.) 조건과 충돌하기 때문에 시계열만의 분석 방식이 필요하다.
💡 i.i.d. 조건이란?
각 데이터 포인트가 서로 영향을 주지 않고 같은 확률 분포에서 생성되었다는 가정을 말한다 (독립적이고 동일한 분포). 이 조건이 깨질 경우 모델의 추정, 검정, 예측이 모두 왜곡될 수 있다. 시계열은 이 i.i.d. 가정을 충족하지 않기 때문에 전용 분석 기법이 필요하다.
또한 대부분의 시계열은 평균이나 분산이 일정하지 않은 비정상성(non-stationarity)을 가진다. 이를 분석 가능하도록 만들어야 하기 때문에 정상성을 확보하기 위한 차분이나 변환 등의 전처리 과정도 요구된다.
시계열 데이터를 일반적인 방식으로 처리할 경우, 시간 순서를 무시한 데이터 누수나 잘못된 모델 평가로 이어질 수 있다. 따라서 시계열 데이터는 시간 축을 중심으로 구조적 특성과 시간 의존성을 고려한 별도의 방법론으로 접근해야 한다.
정형 데이터와 달리 시간 자체가 분석의 핵심이 되는 데이터이기 때문에 따로 다루어야 하는 것이다.
시계열 데이터에서 발견할 수 있는 특징이 있다.
이전 시점의 값이 다음 시점의 값에 영향을 줄 수 있다. 어제의 기온이 오늘의 기온에 영향을 주듯이 독립적인 관측값들이 아님에 유의해야 한다.
데이터가 장기적으로 상승하거나 하락하는 방향성을 가진다. 단기 변동이 아닌 전체적인 방향성을 보는 것이 중요하다.
일정한 주기를 갖고 반복되는 패턴이다. 예를 들어 여름마다 증가하는 에어컨 판매량, 연말마다 증가하는 소비 지출 등이 이에 해당한다.
추세나 계절성으로 설명할 수 없는 예측 불가능한 변동이다. 모든 시계열은 일정 수준의 불확실성을 포함하고 있다. 의미 있는 패턴이 없어야 이상적인 Residual이라고 할 수 있다.
시계열 데이터에는 주기성(Cycle)이라는 성질도 존재할 수 있다. 다만 주기성은 데이터가 충분히 길거나 경제적 맥락처럼 특별한 경우에 분석되기 때문에 이 글에서는 기초적인 시계열의 핵심 요소인 추세, 계절성, 잔차 중심으로 정리하였다.
시계열 데이터는 고유한 성격을 지니기 때문에 분석 과정에서 주의해야 할 사항이 있다.
지금까지 시계열 데이터가 무엇인지와 시계열 분석에서 반드시 이해해야 할 개념들을 정리해 보았다.
시계열 데이터는 시간 축을 따라 순차적으로 관측된다는 특성 때문에 일반적인 데이터와는 접근 방식이 다르다는 것을 알 수 있었다.
시간 의존성, 추세, 계절성, 불규칙성 같은 구조적 특성을 파악하는 것이 중요하고, 정상성 여부를 확인하여 적절한 전처리를 적용하는 것은 이후 예측 모델의 성능에 직접적인 영향을 주게 된다.
시계열 데이터도 마찬가지지만 어떤 데이터를 다루든 모델부터 고민하지 말고 데이터의 특성과 문제의 목적을 제대로 정의하는 것이 중요하구나 또 한 번 이해하게 되었다.