AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

개발 노트 – 파트 0: 예측 파이프라인 구축 전 이해해야 할 핵심 개념

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

데이터 분석

대상자

  • *데이터 과학자, 머신러닝 엔지니어**

- 난이도: 중급 이상 (시계열 예측 기초 개념 설명 포함)

- 관련 분야: 시계열 분석, 예측 모델 설계

핵심 요약

  • 예측 범위(Horizon): 예측 기간을 정의하며, Daily(30일), Monthly(6개월) 등으로 설정
  • Cutoff: 학습 데이터의 마지막 날짜로, 시간 기반 분할(Temporal Split)을 통해 평가
  • Covariates: 시간에 따라 변하지 않는 변수(product category)와 변하는 변수(day of week, temperature)를 구분
  • Lag Feature: y(t-1), y(t-7) 등 과거 값으로 계절성 또는 자기상관관계를 반영

섹션별 세부 요약

1. 예측 범위(Horizon) 정의

  • 시간 단위별 예측 기간 설정: Daily, Weekly, Monthly
  • 예측 범위의 길이가 모델 선택, 오차 누적에 영향
  • 프로젝트에서 예측 범위를 먼저 정의 후 모델 설계에 반영

2. Cutoff(분할 지점)

  • 시간 기반 분할을 통해 학습 데이터(T 이전)와 예측 데이터(T 이후) 분리
  • 실제 예측 시나리오 시뮬레이션 (미래 데이터는 알 수 없음)
  • 여러 Cutoff 지점을 사용해 모델의 일관성 평가

3. 시간 주기(Frequency)

  • Daily: 단기 트렌드 감지 가능, 노이즈 많음
  • Monthly: 경제 지표 분석에 일반적
  • 불규칙 시간戳재샘플링 또는 보간 필요

4. Covariates(공변량)

  • 변하지 않는 변수: product category, store type
  • 변하는 변수: day of week, promotion status
  • 딥러닝 모델에서 복잡한 상호작용 학습에 유리

5. Lag Feature(지연 특성)

  • 과거 값(y(t-1), y(t-7))을 현재 값 예측에 활용
  • 계절성(예: 월요일 수요 급증) 또는 자기상관관계 시 유용
  • 모델 예시: y(t) = f(y(t-1), y(t-2), y(t-3))

6. 계절성(Seasonality)

  • 일일: 점심/저녁 시간대 매출 증가
  • 주간: 평일 vs 주말 패턴
  • 연간: 명절, 학기 일정
  • 시뮬레이션 후 적절한 모델(Prophet, NBEATSx) 선택

7. 외부 변수(Exogenous Variables)

  • 타겟이 아닌 외부 요인: 날씨, 가격, 매크로 경제 지표
  • AutoARIMA, Deep Learning 모델에서 직접 지원 가능

8. 데이터 처리

  • 결측 시간戳: Forward Fill, Interpolation으로 처리
  • 불완전 시리즈: 제거 또는 보완
  • 정기 시간 간격 유지 필요

9. 시간 기반 분할(Temporal Split)

  • 임의 분할 대신 시간 순서 기반 분할
  • 백테스팅(Backtesting)을 통해 실제 예측 성능 시뮬레이션
  • Cutoff 지점 이동으로 모델의 일관성 평가

10. 평가 지표(Evaluation Metrics)

  • MAE: 평균 절대 오차 (간단함)
  • RMSE: 대규모 오차에 민감
  • MAPE: 스케일에 관계 없는 평가
  • sMAPE: 0값 처리에 유리
  • 혼합 지표 사용으로 모델 비교

11. 예측 알고리즘

  • 기초 모델: Naive Forecast (최근 값 반복)
  • 통계 모델: AutoARIMA, ETS (추세/계절성 시리즈)
  • ML 모델: LightGBM, XGBoost (회귀 문제로 풀이)
  • 딥러닝 모델: NBEATSx, NHITS, TFT (고변동 시리즈)

12. 다음 단계

  • 가상 데이터셋 생성 및 그룹 라벨링
  • 예측 범위Cutoff 설정
  • 학습/예측 데이터 분할 시각화
  • 모델 훈련로그 기록SHAP 설명 가능성 구축

결론

  • 시간 기반 분할(Temporal Split)과 백테스팅을 통해 모델의 실무적 성능 검증
  • MAE, RMSE, sMAPE혼합 지표를 사용한 모델 비교
  • 다음 단계에서는 가상 데이터셋 생성과 모델 파이프라인 구축을 진행할 예정