Saya telah mencoba mempelajari dan menerapkan model ARIMA. Saya telah membaca teks yang bagus tentang ARIMA oleh Pankratz - Peramalan dengan Kotak Univariat - Model Jenkins: Konsep dan Kasus . Dalam teks, penulis terutama menekankan prinsip kekikiran dalam memilih model ARIMA.
Saya mulai bermain dengan auto.arima()
fungsi dalam R paket perkiraan . Inilah yang saya lakukan, saya mensimulasikan ARIMA dan kemudian menerapkannya auto.arima()
. Di bawah ini adalah 2 contoh. Seperti yang dapat Anda lihat dalam kedua contoh, auto.arima()
diidentifikasi dengan jelas model yang banyak orang anggap non-pelit. Terutama dalam contoh 2, di mana auto.arima()
diidentifikasi ARIMA (3,0,3) ketika sebenarnya ARIMA (1,0,1) akan cukup dan pelit.
Di bawah ini adalah pertanyaan saya. Saya akan sangat menghargai saran dan rekomendasi.
- Apakah ada panduan kapan menggunakan / memodifikasi model yang diidentifikasi menggunakan algoritma otomatis seperti
auto.arima()
? - Apakah ada jurang jatuh hanya menggunakan AIC (yang saya pikir
auto.arima()
menggunakan) untuk mengidentifikasi model? - Dapatkah algoritma otomatis dibangun yang pelit?
Ngomong-ngomong saya menggunakan auto.arima()
contoh saja. Ini akan berlaku untuk semua algoritma otomatis.
Di bawah ini adalah Contoh # 1:
set.seed(182)
y <- arima.sim(n=500,list(ar=0.2,ma=0.6),mean = 10)
auto.arima(y)
qa <- arima(y,order=c(1,0,1))
qa
Di bawah ini adalah hasil dari auto.arima()
. Harap dicatat bahwa semua koefisien tidak signifikan. yaitu, nilai <2.
ARIMA(1,0,2) with non-zero mean
Coefficients:
ar1 ma1 ma2 intercept
0.5395 0.2109 -0.3385 19.9850
s.e. 0.4062 0.4160 0.3049 0.0878
sigma^2 estimated as 1.076: log likelihood=-728.14
AIC=1466.28 AICc=1466.41 BIC=1487.36
Di bawah ini adalah hasil dari menjalankan reguler arima()
dengan pesanan ARIMA (1,0,1)
Series: y
ARIMA(1,0,1) with non-zero mean
Coefficients:
ar1 ma1 intercept
0.2398 0.6478 20.0323
s.e. 0.0531 0.0376 0.1002
sigma^2 estimated as 1.071: log likelihood=-727.1
AIC=1462.2 AICc=1462.28 BIC=1479.06
Contoh 2:
set.seed(453)
y <- arima.sim(n=500,list(ar=0.2,ma=0.6),mean = 10)
auto.arima(y)
qa <- arima(y,order=c(1,0,1))
qa
Di bawah ini adalah hasil dari auto.arima()
:
ARIMA(3,0,3) with non-zero mean
Coefficients:
ar1 ar2 ar3 ma1 ma2 ma3 intercept
0.7541 -1.0606 0.2072 0.1391 0.5912 0.5491 20.0326
s.e. 0.0811 0.0666 0.0647 0.0725 0.0598 0.0636 0.0939
sigma^2 estimated as 1.027: log likelihood=-716.84
AIC=1449.67 AICc=1449.97 BIC=1483.39
Di bawah ini adalah hasil yang berjalan teratur arima()
dengan pesanan ARIMA (1,0,1)
Series: y
ARIMA(1,0,1) with non-zero mean
Coefficients:
ar1 ma1 intercept
0.2398 0.6478 20.0323
s.e. 0.0531 0.0376 0.1002
sigma^2 estimated as 1.071: log likelihood=-727.1
AIC=1462.2 AICc=1462.28 BIC=1479.06