平稳序列的预测和拟合之模型优化
目錄
前提
準(zhǔn)則
1、AIC準(zhǔn)則
2、SBC (BIC)準(zhǔn)則
優(yōu)化
小結(jié)
前提
問(wèn)題提出:模型通過(guò)檢驗(yàn),說(shuō)明是有效的,但有效的模型不唯一。
下面我們用一個(gè)例子來(lái)解釋一下:
例4-7:試對(duì)某次化學(xué)反應(yīng)的70個(gè)過(guò)程數(shù)據(jù)序列進(jìn)行擬合。
d<-read.table("D:/桌面/4_7.csv",sep=",",header=T) x<-ts(d$x) plot(x) #時(shí)序圖 adf.test(x) #平穩(wěn)性檢驗(yàn) for(i in 1:2)print(Box.test(x,lag=6*i)) #白噪聲檢驗(yàn) acf(x) #自相關(guān)圖 pacf(x)#偏自相關(guān)圖返回:我只把結(jié)果給大家放在這里,就不一 一給大家解釋了,如果不懂,可以看看之前的文章。
接下來(lái)我們對(duì)上面兩個(gè)模型進(jìn)行擬合:
對(duì)MA(2)擬合:
fit1<-arima(x,order=c(0,0,2)) fit1 #模型顯著性檢驗(yàn) ts.diag(fit1) #參數(shù)顯著性檢驗(yàn) t<-abs(fit1$coef)/sqrt(diag(fit1$var.coef)) t pt(t,length(x)-length(fit1$coef),lower.tail=F)返回:
對(duì)AR(1)擬合:
fit2<-arima(x,order=c(1,0,0)) fit2 #模型顯著性檢驗(yàn) ts.diag(fit2) #參數(shù)顯著性檢驗(yàn) t<-abs(fit2$coef)/sqrt(diag(fit2$var.coef)) t pt(t,length(x)-length(fit2$coef),lower.tail=F)返回:
如圖,結(jié)果顯著
準(zhǔn)則
1、AIC準(zhǔn)則
最小信息量準(zhǔn)則(Akaike Information Criterion)
指導(dǎo)思想:似然函數(shù)值越大越好﹔未知參數(shù)的個(gè)數(shù)越少越好?
缺陷:在樣本容量趨于無(wú)窮大時(shí),由AIc準(zhǔn)則選擇的模型不收斂于真實(shí)模型
2、SBC (BIC)準(zhǔn)則
Akaike: BIC
Schwartz根據(jù)Bayes理論: SBC?
AIC或SBC達(dá)到最小的模型為相對(duì)最優(yōu)模型。
優(yōu)化
接下來(lái)我們對(duì)上述建立的模型進(jìn)行比較
查看一下上面模型的AIC和BIC
data.frame(AIC(fit1),AIC(fit2),BIC(fit1),BIC(fit2))返回:
如圖可知,AR(1)模型優(yōu)于MA(2)模型
R中,forecast程序包提供了auto.arima函數(shù),可自動(dòng)定階
程序包的安裝教程可參考:傳送門(mén)
對(duì)上面例題進(jìn)行自動(dòng)定階
默認(rèn)是 aic
library(forecast) #調(diào)用程序包 auto.arima(x) #自動(dòng)定階返回:
接下來(lái),我們?cè)賹?duì)模型進(jìn)行檢驗(yàn):
fit3<-arima(x,order=c(2,0,0)) fit3 #模型顯著性檢驗(yàn) ts.diag(fit3) #參數(shù)顯著性檢驗(yàn) t<-abs(fit3$coef)/sqrt(diag(fit3$var.coef)) t pt(t,length(x)-length(fit3$coef),lower.tail=F)返回:
再用 BIC 進(jìn)行自動(dòng)定階
auto.arima(x,ic="bic") #自動(dòng)定階返回:
自動(dòng)定階,只是提供一個(gè)參考,不是絕對(duì)的,還需待定而估哦!!!
小結(jié)
1.AIC準(zhǔn)則
2.SBC (BIC)準(zhǔn)則
AIC或SBC達(dá)到最小的模型為相對(duì)最優(yōu)模型。
總結(jié)
以上是生活随笔為你收集整理的平稳序列的预测和拟合之模型优化的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: vue.js上传头像插件_一个基于vue
- 下一篇: 量化信噪比 非均匀量化_达尔优EM910