Data Analysis & ML/시계열분석

[시계열분석] 시계열 알고리즘 - 선형확률과정의 분석사이클 자동화 (Auto ARIMA)

YSY^ 2021. 9. 26. 17:30

분석싸이클 자동화(Non-seasonal)

  • "Hyndman-Khandakar algorithm for automatic ARIMA modelling"
  • 차수가 높지않은 SARIMA 알고리즘을 자동화 한 것으로 Hyndman-Khandakar 알고리즘(2008)을 기반으로 함
    정상성변환(Unit Root Calculation), 검증지표 최적화(AIC) 및 MLE 방법을 사용한 모수추정을 모두 포함

자동화 과정: 일반화 분석싸이클의 2~4단계만 자동화

1. KPSS 검정통계량(정상성 테스트)을 사용한 독립변수(Y_t)의 적분차수/차분차수 결정(0 ≤ d ≤ 2)

2. 차분된 독립변수 (1 - L)^d Y_t에 AIC를 줄여가며 초기모형 후보들 적합을 통한 Base모형의 차수 p와 q를 선택

  • 만약 d ≤ 1, 초기모형 후보 5종
    • ARIMA(0,d,0) without constant
    • ARIMA(0,d,0) with constant
    • ARIMA(0,d,1) with constant
    • ARIMA(1,d,0) with constant
    • ARIMA(2,d,2) with constant
  • 만약 d = 2, 초기모형 후보 4종
    • ARIMA(0,d,0) without constant
    • ARIMA(0,d,1) without constant
    • ARIMA(1,d,0) without constant
    • ARIMA(2,d,2) without constant

3. Base모형의 파라미터 튜닝을 통한 Agile모형 선택

    1) Base모형에서 p와 q를 ±1 변화시키며 AIC들을 추정
    2) p와 q 변경 및 상수항(Constant) 반영/미반영하며 AIC들을 추정
    3) 최적의 Agile모형 선택

4. 최종 모형 선택

    1) 추정된 Agile모형을 Base모형으로 변경
    2) AIC가 더이상 줄어들지 않을 때까지 3번의 과정을 반복하여 Agile모형 재추정
    3) 최종 Agile모형이 최종 선택된 시계열모형

fit = auto_arima(Y_train, stationary=False,
                 trend='c', start_p=0, start_q=0, max_p=5, max_q=5, max_d=3,
                 seasonal=True, start_P=0, start_Q=0, max_P=5, max_Q=5, m=seasonal_diff_order,
                 stepwise=True, trace=True)

 

 

728x90
반응형