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
Petunjuk latihan
- Untuk setiap model ARMA, buat sebuah instance dari kelas
ARIMAdengan memberikan data danorder=(p,d,q).padalah orde autoregresif;qadalah orde moving average;dadalah jumlah pembedaan (differencing) pada deret. - Pasangkan model menggunakan metode
.fit(). - Cetak nilai AIC yang terdapat pada elemen
.aicdari 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: ", ___)