[TimeSeries] 시계열의 성질: Trend, Seasonality, Cycle

jul ee·2025년 5월 22일

데이터 성장기

목록 보기
107/139

🖇  시계열 데이터란?
🖇  시계열 데이터를 왜 따로 다뤄야 할까?
🖇  시계열 데이터의 주요 특징
🖇  시계열 데이터를 다룰 때 유의할 점


시계열 데이터는 시간의 흐름에 따라 관측된 연속적인 데이터다. 대부분의 시계열 데이터는 시간의 흐름에 따라 의미 있는 구조적 패턴을 갖고 있으며, 이를 분석하고 활용하기 위해서는 이 구조를 정확히 이해할 필요가 있다.

시계열의 구조를 이루는 가장 기본적인 세 가지 요소는 추세(Trend), 계절성(Seasonality), 주기성(Cycle)이다. 이 세 가지는 시계열 데이터를 해석하고 예측 모델을 설계할 때 가장 먼저 고려해야 할 분석 대상이다.

이 글에서는 각 요소의 개념, 예시, 특징을 정리하고, 실제 데이터에서 이를 어떻게 구분하고 활용할 수 있는지까지 정리해 보았다.



🖇  추세 (Trend)

추세(Trend)는 시계열 데이터가 장기적으로 증가하거나 감소하는 경향성을 의미한다.

이는 반복적인 패턴이 아니며, 일정한 방향을 가진 지속적인 변화 흐름을 뜻한다. 보통 '데이터가 전반적으로 상승세냐 하락세냐'를 판단할 때 사용하는 개념이다.

  • 반드시 직선일 필요는 없다. 완만한 곡선 형태의 추세도 존재한다.
  • 단기적 변동을 무시하고, 장기적인 방향성을 본다.
  • 보통 몇 개월에서 수년에 걸쳐 나타나는 지속적인 패턴이다.

예시

  • 온라인 쇼핑몰의 연간 매출이 해마다 증가 → 산업의 장기 성장세
  • 지구 평균 기온이 수십 년간 꾸준히 상승 → 기후 변화의 장기적 추세
  • 유튜브 채널의 구독자 수가 매달 증가 → 콘텐츠 영향력 확산

추세는 시계열 분석에서 기초선 역할을 한다. 분석 또는 예측 시 추세를 제거한 후 계절성이나 변동성을 따로 모델링하는 경우도 많다.



🖇  계절성 (Seasonality)

계절성(Seasonality)은 시계열 데이터가 일정한 주기로 반복되는 규칙적인 패턴을 의미한다. 계절이라는 단어 때문에 1년 단위의 계절적 변화로만 오해할 수 있지만, 실제로는 하루, 일주일, 한 달 단위의 반복 주기도 모두 계절성에 포함된다.

  • 주기가 고정되어 있고, 규칙적이며 예측 가능하다.
  • 보통 단기 반복(주간, 월간, 연간 등)에 해당한다.
  • 해당 요인이 외부 환경이나 습관, 제도적 요인일 수 있다.

예시

  • 여름철 아이스크림 판매량 증가 → 계절별 패턴
  • 매주 금요일 밤 편의점 매출 상승 → 요일별 패턴
  • 매일 오전 9시·오후 8시에 웹 트래픽 증가 → 시간대 패턴

계절성은 예측 모델에서 정기적으로 반복되는 패턴을 반영하기 위해 반드시 고려되어야 한다. 특히 Prophet, SARIMA 등의 모델은 계절성을 반영하는 매개변수를 별도로 갖고 있다.



🖇  주기성 (Cycle)

주기성(Cycle)은 계절성과 비슷하지만 더 불규칙하고 긴 기간을 가지고 반복되는 패턴을 의미한다. 일반적으로는 경제, 사회, 환경의 장기적인 변화로 인해 발생하며, 주기와 진폭이 일정하지 않고 예측도 어렵다.

  • 반복은 있지만, 주기가 고정되어 있지 않다.
  • 예측이 어렵고 진폭(상승·하락 폭)이 일정하지 않다.
  • 외부 요인(정책, 사회경제 흐름 등)의 영향을 받는다.

예시

  • 경기 호황과 불황의 반복: 수년 단위 반복 (경기 순환)
  • 부동산 가격의 장기 상승·하락 주기: 7~10년 주기
  • 태양 흑점 수의 증감 주기: 11년 (자연현상 기반)

Cycle은 계절성과의 차이를 명확히 구분해야 한다.

💡 계절성은 주기가 명확히 고정되어 있고 반복되는 패턴이다.
그 원인은 외부 환경(계절, 요일, 시간대 등)이나 사회적 습관, 제도뿐만 아니라 시스템 내부의 구조적 특성이나 반복되는 운영 방식 등 다양한 요소일 수 있다.

💡 주기성은 주기와 진폭이 일정하지 않고 예측이 어렵다. 주로 경기, 정책, 사회적 구조 변화처럼 비교적 큰 외부 요인에 의해 발생하는 경우가 많다.




🖇  하나의 시계열에서 구조 이해하기

많은 실제 시계열 데이터는 이 세 가지 성분을 동시에 포함하고 있다.
예를 들어, 어떤 전자상거래 회사의 월별 매출 데이터를 가정해 보자.

Trend
: 2010년부터 2025년까지 매출이 꾸준히 증가했다 → 장기 성장 추세

Seasonality
: 매년 12월마다 크리스마스 시즌으로 매출 급증 → 고정된 연간 반복

Cycle
: 3~5년 간격으로 외부 경제 불황이 발생 → 일시적 매출 감소

이런 복합 구조를 파악하지 못한 채 단순한 평균 또는 선형 모델을 적용할 경우, 예측은 크게 왜곡될 수 있다. 분석 초기 단계에서 반드시 시계열을 분해(Decomposition)하여 각 성분을 분리해 보는 작업이 필요하다.




🖇  시계열 분석에서 구조 파악이 왜 중요한가?

시계열 데이터 분석의 목적은 데이터를 구성하는 내재적 패턴을 파악하고 해석함으로써 의미 있는 인사이트를 도출하는 것이다.

  • 모델링 정확도 향상: 추세나 계절성이 제거되지 않은 상태에서 모델을 학습하면 과적합 가능성이 커진다.

  • 예측 가능성 판단: 계절성이 뚜렷한 경우 예측력이 높아지고, 주기성이 강한 경우에는 변동성이 크므로 보수적 접근이 필요하다.

  • 비정상성 대응 전략 마련: 추세 또는 주기성으로 인해 데이터가 비정상적일 경우에는 차분이나 변환을 통해 정상성을 확보해야 한다.

특히 ARIMA 계열 모델은 정상성을 전제로 하기 때문에 추세와 계절성을 제거하는 전처리가 모델링의 성능을 좌우할 수 있다.




인사이트 및 회고

시계열 데이터는 시간의 흐름 속에서 패턴을 읽어내는 데이터다. 그 패턴이 무엇인지 파악하지 못하면 분석과 예측 모두 신뢰성 있고 유의미한 결과를 도출할 수 없다.

시계열 분석을 본격적으로 진행하기 전에 이 개념을 정확히 이해한 후, 직접 데이터를 분해하고 해석하는 경험을 쌓는 것이 중요하겠다.

profile
AI에 관심을 가지고, 데이터로 가치를 만들어 나가는 과정을 기록합니다.

0개의 댓글