시계열 모델링
Time Series (Sequential Data)
시계열 데이터 분석
- 시간의 흐름에 따른 패턴을 분석
- 흐름을 어떻게 정리하는지가 주 point
모델링
1) 전통적 시계열 모델링
- y의 이전 시점 데이터들로 부터 흐름의 패턴을 추출
- 흐름을 y값에 둠, y만 가지고 모델링
- X변수들은 사용하지 않음
- yt=w1y(t-1)+w2y(t-2)+w0
2) ML 기반 시계열 모델링
- 특정 시점 데이터들과 예측대상시점과의 관계로부터 패턴을 추출하여 예측
- X와 y의 관계!
- feature engineering이 중요
- yt+1=w1x1t+w2x2t+w3x3t+w0
3) 딥러닝 기반 시계열 모델링
- 특정 구간 데이터들과 예측 대상 시점과의 관계로부터 패턴을 추출하여 예측
- 분석단위가 2차원
시계열 전처리
시간정보 인덱스 만들기
사전확인 오류(Look-ahead)
- 특정 시점에 알 수 없는 데이터를 분석단위로 묶어서 분석 및 예측하는 오류
NAN처리
- fill, bfill, .interpolate(사이값으로 채우기)
TimeSeriesSplit cross validation
- Fold수와 validation 사이즈를 결정하여 사용
모델링 절차
1) 모델 생성
전통적 시계열 모델링
- X 변수들은 사용하지 않음
- AR
- MA
- ARMA
- ARIMA
- ARIMA
- SARIMA
- SARIMAX
2) 잔차 분석
3) 검증
4) 평가
4-1) 잔차분석
ACF(자기상관함수)
- yt와 yt-n간의 상관성, 자기상관 O = 패턴 O -> 다시
PACF(편자기상관함수)
정상성 검정
- 정상 데이터이다. (p-value < 0.05)
정규성 검정
- 정규 분포이다. (p-value > 0.05)
- 실제값 = 모델 + 오차(잔차)
- 잔차는 white noise에 가까워야한다, 만약 잔차가 남았다면 남아있는 오차안에 패턴이 남아있는지 분석
White Nosie
- 정규분포, 평균은 0, 분산은 일정, 값들간의 상관성이 없음(ACF, PACF 0)
4-2) ML Metric