Začněte nyníZačněte zdarma

Odhad řádu modelu: informační kritéria

Dalším nástrojem pro určení řádu modelu je Akaikeho informační kritérium (AIC) a Bayesovo informační kritérium (BIC). Tato kritéria měří kvalitu shody modelu s odhadnutými parametry, ale zároveň penalizují za příliš vysoký počet parametrů. Vezmeš simulovaná data AR(2) z předchozího cvičení, uložená jako simulated_data_2, a vypočítáš BIC pro různé hodnoty řádu p v modelu AR(p) od 0 do 6.

Toto cvičení je součástí kurzu

Analýza časových řad v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Importuj modul ARIMA pro odhad parametrů a výpočet BIC.
  • Inicializuj numpy pole BIC, do kterého budeme ukládat hodnotu BIC pro každý model AR(p).
  • Projdi smyčkou řády p pro p = 0,…,6.
    • Pro každé p nafituj data na model AR řádu p.
    • Pro každé p ulož hodnotu BIC pomocí atributu .bic (bez závorek) objektu res.
  • Vykresli BIC jako funkci p (v grafu vynech p=0 a zobraz p=1,…,6).

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Import the module for estimating an ARIMA model
from statsmodels.tsa.arima.model import ARIMA

# Fit the data to an AR(p) for p = 0,...,6 , and save the BIC
BIC = np.zeros(7)
for p in range(7):
    mod = ARIMA(simulated_data_2, order=(___,___,___))
    res = mod.fit()
# Save BIC for AR(p)    
    BIC[p] = res.___
    
# Plot the BIC as a function of p
plt.plot(range(1,7), BIC[1:7], marker='o')
plt.xlabel('Order of AR Model')
plt.ylabel('Bayesian Information Criterion')
plt.show()
Upravit a spustit kód