Výběr správného modelu

Analýza časových řad v Pythonu

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

Určení řádu AR modelu

  • Řád modelu AR(p) bývá zpravidla neznámý
  • Dvě techniky pro určení řádu
    • Parciální autokorelační funkce
    • Informační kritéria
Analýza časových řad v Pythonu

Parciální autokorelační funkce (PACF)

Analýza časových řad v Pythonu

Vykreslení PACF v Pythonu

  • Stejné jako ACF, ale místo plt_acf použijte plot_pacf
  • Import modulu
    from statsmodels.graphics.tsaplots import plot_pacf
    
  • Vykreslení PACF
    plot_pacf(x, lags= 20, alpha=0.05)
    
Analýza časových řad v Pythonu

Srovnání PACF různých AR modelů

  • AR(1)

  • AR(3)

  • AR(2)

  • Bílý šum

Analýza časových řad v Pythonu

Informační kritéria

  • Informační kritéria: upravují kvalitu shody dle počtu parametrů
  • Dvě oblíbené upravené míry kvality shody
    • AIC (Akaikeho informační kritérium)
    • BIC (Bayesovské informační kritérium)
Analýza časových řad v Pythonu

Informační kritéria

  • Výstup odhadu
Analýza časových řad v Pythonu

Informační kritéria ze statsmodels

  • Dříve jste se naučili, jak odhadnout AR model
    from statsmodels.tsa.arima_model import ARIMA
    mod = ARIMA(simulated_data, order=(1,0))
    result = mod.fit()
    
  • Úplný výstup
    result.summary()
    
  • Nebo jen parametry
    result.params
    
  • Získání AIC a BIC
    result.aic
    result.bic
    
Analýza časových řad v Pythonu

Informační kritéria

  • Odhadnutí simulovaného AR(3) různými modely AR(p)
  • Výběr p s nejnižším BIC
Analýza časových řad v Pythonu

Pojďme si procvičit!

Analýza časových řad v Pythonu

Preparing Video For Download...