BaşlayınÜcretsiz Başlayın

Hangi ARMA Modeli En İyi?

  1. Bölümden hatırlarsan Akaike Bilgi Kriteri (AIC), farklı sayıda parametreye sahip modelleri karşılaştırmak için kullanılabilir. Uyum iyiliğini ölçer, ancak aşırı uyumu engellemek için daha fazla parametreye sahip modellere bir ceza uygular. Daha düşük AIC daha iyidir.

Sıcaklık verilerini AR(1), AR(2) ve ARMA(1,1) modellerine uydur ve AIC ölçütünü kullanarak hangisinin en iyi uyumu verdiğine bak. AR(2) ve ARMA(1,1) modelleri, AR(1)’e göre birer fazla parametre içerir.

Yıllık sıcaklık değişimi chg_temp adlı bir DataFrame’dedir.

Bu egzersiz

Python ile Zaman Serisi Analizi

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Her ARMA modeli için, ARIMA sınıfından bir örnek oluştur; veriyi ve order=(p,d,q) değerini geç. p otoregresif derecedir; q hareketli ortalama derecesidir; d ise serinin fark alındığı sayıdır.
  • Modeli .fit() yöntemiyle uydur.
  • Sonuçların .aic ögesinde bulunan AIC değerini yazdır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# 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: ", ___)
Kodu Düzenle ve Çalıştır