MulaiMulai sekarang secara gratis

Model ARMA Mana yang Terbaik?

Ingat dari Bab 3 bahwa Akaike Information Criterion (AIC) dapat digunakan untuk membandingkan model dengan jumlah parameter yang berbeda. Ukuran ini menilai kesesuaian-model (goodness-of-fit), tetapi memberi penalti pada model dengan lebih banyak parameter untuk mencegah overfitting. Skor AIC yang lebih rendah lebih baik.

Sesuaikan data suhu dengan AR(1), AR(2), dan ARMA(1,1) lalu lihat model mana yang paling sesuai menggunakan kriteria AIC. Model AR(2) dan ARMA(1,1) memiliki satu parameter lebih banyak dibanding AR(1).

Perubahan suhu tahunan tersedia dalam DataFrame chg_temp.

Latihan ini adalah bagian dari kursus

Analisis Deret Waktu dengan Python

Lihat Kursus

Petunjuk latihan

  • Untuk setiap model ARMA, buat sebuah instance dari kelas ARIMA dengan memberikan data dan order=(p,d,q). p adalah orde autoregresif; q adalah orde moving average; d adalah jumlah pembedaan (differencing) pada deret.
  • Pasangkan model menggunakan metode .fit().
  • Cetak nilai AIC yang terdapat pada elemen .aic dari hasil pemodelan.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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

# Fit the data to an AR(1) model and print AIC:
mod_ar1 = ARIMA(chg_temp, order=(___, 0, 0))
res_ar1 = mod_ar1.fit()
print("The AIC for an AR(1) is: ", res_ar1.aic)

# Fit the data to an AR(2) model and print AIC:
mod_ar2 = ARIMA(chg_temp, order=(___, ___, ___))
res_ar2 = mod_ar2.___
print("The AIC for an AR(2) is: ", res_ar2.aic)

# Fit the data to an ARMA(1,1) model and print AIC:
mod_arma11 = ___
res_arma11 = ___
print("The AIC for an ARMA(1,1) is: ", ___)
Edit dan Jalankan Kode