본문 바로가기
데이터/데이터

[내 머리로 시계열분석] 시계열 데이터의 정상성의 의미 - 평균이 일정, 시점에는 의존하지 않는다에 대하여

by 단단_SINCE 2023 2025. 2. 1.

 

 

 

 

지난 시간에 시계열데이터의 정상성에 대해서 살펴봤다.

 

https://bornketer.tistory.com/168

 

[내 머리로 시계열분석] 시계열데이터의 정상성 획득 그리고 차분

1. 시계열 데이터의 정상성/비정상성 예시 🧭시계열 데이터를 분석하려면, 데이터가 "정상적"인지 "비정상적"인지 확인하는 것이 중요하다. 여기서 "정상성"은 데이터를 관찰했을 때 시간이 지

bornketer.tistory.com

 

 

여기서 정상성이란 들쑥날쑥하지않고 차분을 통해 어느정도 일정해진 데이터를 말한다.

 

그렇다면 시계열데이터의 정상성의 의미,

1) 평균이 일정해야 한다

는 대충 이해할 수 있다.

 

1월에는 100만원을 팔다가 12월에는 10억을 파는 커머스데이터가 있다면 이는 평균이 일정하지 않다.

이런 데이터는 시점(크리스마스 등)의 영향을 크게 받기 때문에

차분을 통해서 일정한 범위안에서 움직이는 정상성 데이터로의 변환이 필요하다.

 

2) 분산이 시점에 의존하지 않는다

 

라는 말도 1)과 맥을 같이한다. 시계열데이터의 시점이란 어느 한 시점을 말하는 것으로서, 월별 판매액 데이터가 있다고 쳤을 때 1월~12월이 시점을 뜻하고, 정상적인 데이터는 특정시점(연휴, 주말, 휴가철, 크리스마스 등)에 영향을 받지 않는것을 뜻한다.

 

3) 공분산은 단지 시차에만 의존하고 시점에는 의존하지 않는다

 

라는 말도 1) 2)와 궤를 같이하는 이야기다. 여기서의 시차는 1월 2월 사이의 데이터 사이의 거리만을 뜻한다. 1월 2월 3월 이렇게 간격에 따라 데이터는 달라질 수 있지만, 2)와 마찬가지로 특정시점(블랙프라이데이 등)에 의존해서는 안된다. 

 

처음 시계열을 공부할때는 특정시점에 숫자가 뛰는게 당연하고(마케터의 자부심) 그걸 배제하여 분석한다는게 이해가 잘 안갔다. 하지만 공부를 하다보니 이런 이해를 하게됐는데, 요약하자면 '특정시점에 비정상으로 뛴 매출등의 데이터를 그대로 사용하면 추후 예측을 하는데 오류를 가져올 수 있기 때문이다' 

 


 

🎯 비정상 데이터를 그대로 분석하면 왜 문제가 될까?

현실에서는 주말마다 매출 증가, 연말마다 매출 상승 같은 패턴이 반복된다. 그러면, 이런 데이터를 그대로 분석하는 게 맞지 않을까? 하지만, 비정상 데이터를 분석하면 몇 가지 문제가 생길 수 있다.

 

1️⃣ 트렌드(Trend)와 계절성(Seasonality) 때문에 데이터 해석이 어려워짐

  • 주말과 평일의 매출 차이를 고려하지 않고 모델을 만들면 잘못된 패턴을 학습할 위험이 있다.
  • 예를 들어, "일요일 매출이 높다"는 사실을 무시한 채 단순 예측하면, "월요일 매출이 급감하는 이상 현상"이라고 오해할 수도 있다.

2️⃣ 수학적으로 분석하기 어려운 데이터가 됨

  • ARIMA 같은 전통적인 시계열 모델은 데이터가 정상성을 만족해야 올바르게 작동한다.
  • 비정상 데이터를 그대로 넣으면 모델이 잘못된 패턴을 학습하거나, 예측이 불안정해질 수 있다.

3️⃣ 모델이 특정 시점에 과도하게 의존할 수 있음

  • 예를 들어, 블랙 프라이데이 매출이 갑자기 높아진다고 해서 "평소에도 이런 매출 패턴이 반복될 것"이라고 잘못 해석할 수도 있다.
  • 따라서, 일반적인 매출 트렌드와 특정 이벤트 효과를 구분해서 분석하는 게 더 정확한 예측을 만드는 방법.

🔍 그렇다면, 어떻게 분석하는 게 좋을까?

 

1️⃣ 비정상 데이터를 정상 데이터로 변환한 후 분석 (정상성 변환)

  • 차분(Differencing) → 트렌드를 제거하고 변화율만 분석
  • 로그 변환(Log Transformation) → 데이터의 급격한 변화를 부드럽게 조정
  • 계절 조정(Seasonal Adjustment) → 주말, 명절 등의 영향 제거

2️⃣ 비정상성을 유지하면서 분석하는 방법도 있음

  • 머신러닝 모델(Random Forest, XGBoost, LSTM 등)은 정상성을 가정하지 않아도 된다!
  • 이 경우, "주말 여부", "연말 여부", "프로모션 여부" 같은 변수(Feature)를 추가해서 분석하면 가능.
  • 예를 들어, 트렌드와 계절성을 고려한 Prophet 모델도 많이 사용한다.

🏆 결론: 비정상 데이터를 바로 분석할 수도 있지만, 정상화하면 더 좋은 분석이 가능하다!

✅ 비정상 데이터를 바로 분석할 수도 있지만, 트렌드와 계절성을 제거하면 더 정확한 패턴을 찾을 수 있다.
✅ 하지만 요즘은 딥러닝이나 머신러닝 모델이 발전하면서 굳이 정상성을 강제하지 않고도 분석할 수 있는 방법도 많아졌다
✅ 즉, 어떤 방법을 사용할지는 데이터와 분석 목적에 따라 다르다!

 

 


 

 

그러하다. 시계열분석의 가장 큰 목적은 예측이다. 그러기 위해서는 특정시점에 의존하기 보다는(나의 경우에는 스타트업시절 갑자기 유튜버가 우리 상품을 소개해서 사이트 트래픽이 엄청나게 증가한 경우가 있었음) 특정시점의 데이터를 배제하고 평균적이고 일정한 흐름을 보는것이 중요하다.