Data Analysis & ML/시계열분석

[시계열분석] 시계열 알고리즘 - 선형확률과정의 분석사이클

YSY^ 2021. 9. 26. 17:15

분석싸이클 정리(Non-seasonal)

1. 분석싸이클 제시: <박스-젠킨스 방법론>

1) 모형의 모수추정(Model Identification):

- 시계열 데이터의 정상성을 확인하고 계절변동이 있는지도 확인
- ACF/PACF 를 사용해서 자기회귀이동평균 모형 p,q 차수를 결정

2) 모델링 및 검증(Parameter Estimation):

- 회귀분석과 기계학습 등의 검증지표를 마찬가지로 사용
- 모형 추정은 최소제곱방법과 유사하지만 가우스-뉴튼 아이디어에 기초한 수치해석방법을 적용

3) 잔차진단(Model Diagnostics):

- 자기회귀이동평균 모형을 적용시키고 남은 잔차의 정상성을 확인하는데 중점
- 잔차가 서로 독립이고 시간에 따라 평균과 분산이 일정한지 검증
- 시계열 데이터의 자기상관을 검정하기 위해 다양한 검정통계량을 사용하는데,
Ljung-Box 통계량, 평균과 분산이 일정한지, ACF/PACF 사용하여 추가적으로 모형에 누락된 것이 없는지 검정

2. 분석싸이클 일반화

0) 데이터 전처리 및 시각화를 통해 Outlier 확인/변경/제거

1) 비정상 과정에서 정상 과정 추출

  • 결정론적 추세(추세의 기울기가 시간에 따라서 변하지 않을 것이라는 가정)나 확률적 추세(변할 수 있고 추정된 증가량에는 과거 기간 동안 평균 증가만 가정)가 있는지 확인
    • 결정론적 추세는 회귀분석, 다항식 등으로 모형화 후 이를 분리
    • 확률적 추세인 경우, 즉 ARIMA 모형인 경우에는 ADF(Augmented Dickey Fuller) 검정을 사용하여 적분차수(Order of Integration)을 알아내서 차분

2) 정규성 확인

  • 정규성 검정을 통해 자료의 분포가 정규 분포인지 확인
    • 일반 선형 확률 과정인 경우에는 전체 시계열이 가우시안 백색 잡음의 선형 조합으로 이루어지기 때문에 시계열 자체도 가우시안 정규 분포
    • ARIMA 모형 등의 일반 선형 확률 과정으로 모형화하려면 우선 정규성 검정(Normality Test)을 사용하여 분포가 정규 분포인지 확인
  • 만약 시계열 자료의 분포가 로그 변환이나 Box-Cox 변환을 사용하여 정규성이 개선된다면 이러한 변환을 사용 가

3) 정상 과정에 대한 ARMA / SARIMA 모형 차수 결정

  • ACF/PACF 분석으로 AR(p) 모형 또는 MA(q) 모형 결정
    • ACF가 특정 차수 이상에서 없어지는 경우(Cut-off)에는 MA 모형을 사용 가능
    • PACF가 특정 차수 이상에서 없어지면 AR 모형을 사용 가능
    • ACF와 PACF 모두 특정 차수 이상에서 없어지는 현상이 나타나지 않는다면 ARMA 모형을 사용
  • ARMA 모형인 경우 모수 추정시 AIC/BIC 값을 이용하여 차수 결정 및 모수추정도 동시에 이루어 짐

4) ARMA **/ SARIMA 모형의 모수 추정**

  • MM(Method of Modent)/LS(Least Square)/MLE(Maximum Likelihood Estimation) 등의 방법론으로 모수 추정
  • ADF(Augmented Dickey Fuller) 검정을 사용하여 해당 수식에 대한 계수 즉 모수 값을 추정
  • 부트스트래핑을 사용하여 모수의 표준 오차 추정

5) 잔차 진단(모형 진단)

: 모형이 추정된 다음 진단(Diagnosis) 과정을 통해 추정이 올바르게 이루어졌는지 검증
: 기본적으로 잔차(Residual)가 백색 잡음이 되어야 하므로 잔차에 대해 다음을 조사

  • 잔차에 대한 정규성 검정
  • 잔차에 대한 ACF 분석 또는 Ljung-Box Q 검정으로 모형 차수 재확인
    : 잔차가 백색잡음이 아니면 새로운 모형으로 위 모든 단계(04단계)를 새로 시작
    : 잔차가 백색잡음이면 일단은 예측력을 확인 -> 예측력이 낮을 시 새로운 모형으로 위 모든 단계(04단계)를 새로 시작

3. 분석싸이클 비교

 

해당 포스팅은 패스트캠퍼스의 <파이썬을 활용한 시계열 데이터 분석 A-Z 올인원 패키지> 강의를 듣고 정리한 내용입니다

728x90
반응형