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, kursun bir parçasıdır

Python ile Zaman Serisi Analizi

Kursa Göz Atın

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ı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# 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