錢 俊,王永波
(南方醫(yī)科大學(xué) 生物醫(yī)學(xué)工程學(xué)院,廣州 510515)
20世紀(jì)70年代,Box和Jenkins提出了自回歸移動(dòng)平均模型,即ARIMA模型,也稱Box-Jenkins模型。ARIMA模型被廣泛應(yīng)用于時(shí)間序列資料的分析,成為經(jīng)典的時(shí)間序列分析和預(yù)測(cè)方法,現(xiàn)在一般提的時(shí)間序列模型,指的是該模型或其某種表述形式[1]。ARIMA模型精確度較高但計(jì)算復(fù)雜,一般需借助軟件實(shí)現(xiàn)。目前,常用統(tǒng)計(jì)軟件如SAS、SPSS、R和EVIEWS都有ARIMA建模模塊,這給模型的推廣應(yīng)用提供了強(qiáng)有力的技術(shù)支持[1-4]。
在經(jīng)典的ARIMA模型中,如果時(shí)間序列存在趨勢(shì)且經(jīng)過d階逐期差分可以平穩(wěn),則可以建立ARIMA(p,d,q)模型[3]。設(shè){Xt}為非平穩(wěn)序列,d階差分后的平穩(wěn)序列為{Zt},即有 Zt=▽dXt(t>d),若{Zt}是 ARMA(p,q)序列,則{Xt}稱ARIMA的d階求和序列,并用ARIMA(p,d,q)表示。模型的一般形式:
式(1)中,p、q為自回歸和移動(dòng)平均階數(shù),d為平穩(wěn)化過程中差分的階數(shù);?(B)和θ(B)分別為自回歸算子和移動(dòng)平均算子。若時(shí)間序列存在季節(jié)性周期波動(dòng),則需要加入季節(jié)性算子。對(duì)于包含有季節(jié)和趨勢(shì)的非平穩(wěn)序列,如果可以通過逐期差分和季節(jié)差分使序列平穩(wěn)化,就可運(yùn)用ARIMA(p,d,q)(P,D,Q)S模型,一般形式:
式(2)中,P、Q為季節(jié)性的自回歸和移動(dòng)平均階數(shù),D為季節(jié)差分的階數(shù),s為季節(jié)周期。ΦP(Bs)為季節(jié)性P階自回歸算子;ΘQ(Bs)為季節(jié)性Q階移動(dòng)回歸算子。式(2)稱為SARIMA模型或乘積季節(jié)ARIMA模型,是隨機(jī)季節(jié)模型與ARIMA模型的結(jié)合,用來描述由于季節(jié)性變化(包括季度、月度、周度等變化)或其他一些因素引起的周期性變化的序列[3]。SARIMA模型屬于ARIMA建模中較復(fù)雜的情形,本文以此情形為例闡述其建模過程。
本文利用廣東省2009年1月至2015年12月痢疾的月發(fā)病例數(shù)進(jìn)行時(shí)間序列分析[5]。通過對(duì)發(fā)病例數(shù)的觀察,該數(shù)據(jù)呈明顯的非平穩(wěn)性和季節(jié)性,并伴隨一定的周期性波動(dòng),根據(jù)原始數(shù)據(jù)序列圖以及疾病的發(fā)病特點(diǎn),擬建立SARIMA模型。
將該段觀察時(shí)間序列分為2009年1月至2015年6月和2015年7月至12月兩段,前者用于模型的建立,后者用于評(píng)價(jià)模型預(yù)測(cè)效能。雖然ARIMA建模的操作并不復(fù)雜,但要建立一個(gè)好的或較優(yōu)的模型卻并非易事[6,7]。數(shù)學(xué)理論已證明,ARIMA模型的形式并不唯一。盡管不少軟件中有自動(dòng)建模的程序,如SPSS中的專家建模器以及R軟件的auto.arima()命令,但這些都有局限性。任何軟件都不可能編得很復(fù)雜,不可能對(duì)所有參數(shù)和模型形式都做詳盡的測(cè)試,因此自動(dòng)建模得到的結(jié)果并不一定是“最優(yōu)”,理想的模型仍需研究者自行比較和判斷[1,7]。一般ARIMA建模包含3個(gè)步驟:模型識(shí)別、參數(shù)估計(jì)、模型檢驗(yàn)(診斷),通過對(duì)這3個(gè)步驟的反復(fù)進(jìn)行,篩選出“最優(yōu)”模型并進(jìn)行預(yù)測(cè)[6]。在模型識(shí)別階段,根據(jù)ACF和PACF的圖形特征,判斷ARIMA模型的階數(shù),這是一種直觀方法。另一種方法就是嘗試階數(shù)p和q不同的取值,利用AIC、BIC等準(zhǔn)則,選擇“最優(yōu)”模型[7]。最后得到的模型應(yīng)具備兩個(gè)要素:模型的殘差序列需通過白噪聲檢驗(yàn);在模型參數(shù)的簡(jiǎn)約性和擬合優(yōu)度指標(biāo)的優(yōu)良性方面取得平衡[1]。
下面分別運(yùn)用SAS 9.2、SPSS 20、EVIEWS 6.0、R3.3.2這4種軟件建立SARIMA模型,并對(duì)建模的步驟和計(jì)算結(jié)果進(jìn)行分析。
在SAS/ETS軟件中,ARIMA建??梢酝ㄟ^編程實(shí)現(xiàn),也可以運(yùn)用菜單過程步。一般而言,SAS編程建模更為靈活實(shí)用,也更符合使用習(xí)慣,本文在編程環(huán)境下說明建模的過程:(1)創(chuàng)建數(shù)據(jù)集
導(dǎo)入2009年1月至2015年6月廣東省痢疾的月發(fā)病例數(shù),通過intnx()函數(shù)創(chuàng)建時(shí)間,然后輸入發(fā)病例數(shù)。
input x@@;/*定義月發(fā)病例數(shù)變量*/
t=intnx('month','01jan2009'd,_n_-1);/*創(chuàng)建時(shí)間集*/format t monyy.;cards;353,411…;/*定義時(shí)間格式,導(dǎo)入數(shù)據(jù)*/
(2)模型識(shí)別
調(diào)用程序PROC GPLOT,繪制序列圖{Xt},觀察數(shù)據(jù)的平穩(wěn)性(圖1)。經(jīng)觀察發(fā)現(xiàn)序列呈現(xiàn)一個(gè)略降的長(zhǎng)期趨勢(shì)和一個(gè)周期長(zhǎng)度為一年的穩(wěn)定的季節(jié)變動(dòng)。因此首先消除季節(jié)影響,對(duì)該序列做12步差分,然后為了消除長(zhǎng)期趨勢(shì)的影響,運(yùn)用dif()函數(shù)對(duì)原始序列進(jìn)行差分,發(fā)現(xiàn)一次差分后序列{??12Xt}基本平穩(wěn),則d=1和D=1,s=12。
圖1 廣東省痢疾的月發(fā)病病例數(shù)時(shí)序(SAS)
在SAS中PROC ARIMA程序功能強(qiáng)大,其含有IDENTIFY(模型識(shí)別),ESTIMATE(參數(shù)估計(jì)),F(xiàn)ORECAST(短期預(yù)測(cè))這三條命令。為了進(jìn)一步判斷其平穩(wěn)性,調(diào)用PROC ARIMA程序中IDENTIFY命令對(duì)序列進(jìn)行識(shí)別,考察差分后序列{??12Xt}的ACF和PACF圖,初步判斷模型中階數(shù)p=1,q=1。但為了避免主觀判斷偏差,再運(yùn)行IDENTIFY命令中自動(dòng)識(shí)階選項(xiàng)MINIC(),計(jì)算指定范圍內(nèi)“最優(yōu)”模型的階數(shù)。運(yùn)行得最小BIC(0,1)=7.7388,判斷可能最優(yōu)模型的階數(shù)p=0,q=1。再根據(jù)圖中ACF和PACF圖形在k=12處顯著,k=24處不顯著,初步判斷季節(jié)效應(yīng)的階數(shù)P=1,Q=1。
proc arima; /*建立ARIMA模型*/
identify var=x(1,12)nlag=24 minic p=(0:5)q=(0:5);/*判斷最優(yōu)模型的階數(shù)*/
(3)參數(shù)估計(jì)
調(diào)用PROC ARIMA程序中ESTIMATE命令,對(duì)可能的最優(yōu)模型SARIMA(0,1,1)(1,1,1)12進(jìn)行參數(shù)估計(jì);結(jié)果顯示常數(shù)項(xiàng)以及參數(shù)P=0和Q=0的原假設(shè)檢驗(yàn)P值大于0.05(表1),結(jié)果不顯著。說明此模型并非最優(yōu)模型。
proc arima;estimate p=(12)q=(1)(12);/*擬合帶常數(shù)項(xiàng)的SARIMA模型*/
表1 備選模型的參數(shù)估計(jì)及檢驗(yàn)(SAS)
(4)模型檢驗(yàn)
在延遲6階,12階和18階的Ljung-Box統(tǒng)計(jì)量(LB統(tǒng)計(jì)量)檢驗(yàn)的P值全部顯著大于0.05,此模型的殘差屬于白噪聲序列(表2)。但由于參數(shù)估計(jì)得到的系數(shù)并不符合“顯著性”要求,需對(duì)模型的階數(shù)進(jìn)行調(diào)整。在自動(dòng)識(shí)階的過程,根據(jù)BIC準(zhǔn)則,BIC(0,1)=7.7388最小,BIC(1,0)=7.7498次之,BIC(1,1)=7.7985較??;而季節(jié)模型的階數(shù)P和Q的取值一般不超過2,對(duì)上述參數(shù)組合的取值進(jìn)行試驗(yàn),重復(fù)步驟(3)和步驟(4)進(jìn)行比較。根據(jù)模型參數(shù)估計(jì),擬合效果以及殘差白噪聲檢驗(yàn)的結(jié)果進(jìn)行綜合判斷篩選最優(yōu)模型,則SARIMA(1,1,0)(0,1,1)12為最優(yōu)模型。該模型所有參數(shù)都通過了顯著性檢驗(yàn)(表1);殘差通過白噪聲檢驗(yàn)(表2);擬合優(yōu)度檢驗(yàn)的統(tǒng)計(jì)量中,除指標(biāo)BIC略高,其余各項(xiàng)指標(biāo)值A(chǔ)IC、SBC等均最小(表2),此時(shí)得到“最優(yōu)”模型的數(shù)學(xué)表達(dá)式:
表2 備選模型的殘差白噪聲檢驗(yàn)和擬合優(yōu)度檢驗(yàn)(SAS)
(5)預(yù)測(cè)
運(yùn)用SARIMA(1,1,0)(0,1,1)12模型對(duì)2015年7月至12月痢疾的發(fā)病數(shù)進(jìn)行預(yù)測(cè),可以得到具體預(yù)測(cè)值以及區(qū)間估計(jì)值(圖2)。將實(shí)際值和預(yù)測(cè)值進(jìn)行比較,結(jié)果顯示,各月實(shí)測(cè)值都落入了預(yù)測(cè)值的置信區(qū)間內(nèi),擬合平均相對(duì)誤差MAPE=10.63%,預(yù)測(cè)平均相對(duì)誤差10.33%,該模型具有較好的預(yù)測(cè)效能(見下頁表3)。
proc arima;estimate p=1 q=(12)noconstant;/*擬合不帶常數(shù)項(xiàng)的模型*/
forecast lead=6 id=t out=out;/*預(yù)測(cè)后6個(gè)月的數(shù)據(jù)*/
圖2 SARIMA(1,1,0)(0,1,1)12模型的預(yù)測(cè)值和置信度為95%置信區(qū)間(SAS)
表3 SAS、SPSS、EVIEWS、R軟件操作ARIMA模型的比較
SAS編程建模的過程中,每個(gè)步驟都能得到比較詳盡的結(jié)果,建模方法靈活,功能強(qiáng)大。比如,模型識(shí)別時(shí),可以自動(dòng)識(shí)階;參數(shù)估計(jì)時(shí)可以選擇條件最小二乘法、無約束最小二乘法和最大似然法,nonconstant選項(xiàng)則模型不帶常數(shù)項(xiàng)[8,9]。
SPSS中的ARIMA建模操作簡(jiǎn)單,只需進(jìn)行幾個(gè)參數(shù)的設(shè)置即可運(yùn)行。特別地,SPSS軟件對(duì)時(shí)間序列分析有強(qiáng)大的自動(dòng)建模功能,即“專家建模器”,可以由軟件自動(dòng)生成模型,提高建模速度。
2.2.1 專家建模器建模
(1)導(dǎo)入原始數(shù)據(jù)并創(chuàng)建時(shí)間序列:將數(shù)據(jù)導(dǎo)入數(shù)據(jù)編輯器,設(shè)置痢疾病例數(shù)變量“x”(發(fā)病數(shù))為數(shù)值變量,將時(shí)間變量“t”(日期)定義為日期和時(shí)間變量,設(shè)定為“年、月”,則建立時(shí)間序列{Xt}。
(2)專家自動(dòng)建模:打開菜單項(xiàng)“分析”→“預(yù)測(cè)”→“創(chuàng)建模型”,在“時(shí)間序列建模器”選項(xiàng)卡中確定因變量x(發(fā)病數(shù)),在選項(xiàng)卡的“方法”選項(xiàng)中選擇“專家建模器(僅限ARIMA模型)”,不需要設(shè)置具體參數(shù)。軟件將自動(dòng)計(jì)算,建立模型SARIMA(0,0,2)(1,0,0)12(表4)。
表4 備選模型的參數(shù)估計(jì)結(jié)果(SPSS)
2.2.2 模型識(shí)別與參數(shù)估計(jì)
建模的思路和操作步驟和SAS軟件大致相同,只是調(diào)用菜單項(xiàng)來實(shí)現(xiàn)。
(1)模型識(shí)別
“分析”→“預(yù)測(cè)”→“序列圖”,畫出時(shí)間序列{Xt}以及差分、季節(jié)差分后的時(shí)序圖,判斷平穩(wěn)性;“自相關(guān)”畫出時(shí)間序列{Xt}的ACF和PACF圖形,初步判斷模型的階數(shù)。
(2)參數(shù)估計(jì)和模型檢驗(yàn)
“分析”→“預(yù)測(cè)”→“創(chuàng)建模型”,打開“時(shí)間序列建模器”選項(xiàng)卡,在選項(xiàng)卡的“方法”選項(xiàng)中選擇“ARIMA模型”,輸入自回歸、差分和移動(dòng)平均數(shù)的階數(shù)(包括季節(jié)因子的階數(shù))。SPSS中沒有自動(dòng)識(shí)階的功能,因此需要把所有可能階數(shù)的組合都計(jì)算一遍,建立多個(gè)模型,對(duì)比它們的參數(shù)估計(jì)、擬合優(yōu)度檢驗(yàn)和殘差白噪聲檢驗(yàn)等計(jì)算結(jié)果,選擇“最優(yōu)”模型。本例通過上述計(jì)算,篩選得到模型SARIMA(1,1,0)(0,1,1)12,其參數(shù)估計(jì)的各項(xiàng)結(jié)果符合“顯著性”要求(P<0.05)(表4);模型擬合結(jié)果的標(biāo)準(zhǔn)化BIC值和MAPE最小,決定系數(shù)R2最大(表5)。殘差白噪聲檢驗(yàn)中LB統(tǒng)計(jì)量P值都大于0.05,說明殘差序列為白噪聲序列。但專家建模結(jié)果SARIMA(0,0,2)(1,0,0)12的LB統(tǒng)計(jì)量值為57.36(P<0.001),顯示不是白噪聲序列,模型并不理想。
表5 備選模型的殘差白噪聲檢驗(yàn)和擬合優(yōu)度檢驗(yàn)的結(jié)果(SPSS)
(3)模型預(yù)測(cè)
在上述的“時(shí)間序列建模器”選項(xiàng)卡,選擇“擬合值”以及定義預(yù)測(cè)階段,則可以計(jì)算預(yù)測(cè)值的點(diǎn)估計(jì)和區(qū)間估計(jì),輸出圖形。此例中,兩個(gè)模型各月的實(shí)測(cè)值都落在預(yù)測(cè)值95%置信區(qū)間內(nèi),但專家建模結(jié)果SARIMA(0,0,2)(1,0,0)12模型預(yù)測(cè)值的相對(duì)誤差14.61%,預(yù)測(cè)精度差(表3)。
R軟件提供了彈性、互動(dòng)的環(huán)境分析和數(shù)據(jù)處理功能。它可以輕松地加載以庫或者程序包的形式存在的補(bǔ)充工具,里面含有各種數(shù)學(xué)和統(tǒng)計(jì)計(jì)算的函數(shù),以實(shí)現(xiàn)一些復(fù)雜的建模功能。在R中建立ARIMA模型,需先加載程序包FORECAST、TSERIES、TSA[4,7],編程建模的思路和SAS基本相同:
(1)創(chuàng)建數(shù)據(jù)集
生成時(shí)間序列,定義為月度數(shù)據(jù)。
Xt=ts(c(353,411,…),start=c(2009/01),frequency=12)#建立時(shí)間序列{Xt}
(2)模型識(shí)別
繪制序列圖,分析時(shí)序特性;根據(jù)ACF和PACF等結(jié)果對(duì)序列進(jìn)行識(shí)別、定階。R軟件的程序包TSA中,armasubsets()函數(shù)有自動(dòng)識(shí)階功能,它根據(jù)最小BIC準(zhǔn)則來挑選“最優(yōu)”模型,結(jié)果具有參考價(jià)值。本例中自動(dòng)識(shí)階結(jié)果如下頁圖3,提示模型的階數(shù)p=2,q=1。根據(jù)ACF和PACF圖形特征,結(jié)合自動(dòng)識(shí)階的結(jié)果,可以設(shè)定階數(shù)的取值范圍,建立多個(gè)備選模型進(jìn)行比較。
plot(Xt)#繪制序列圖
acf(as.vector(Xt),lag.max=24)#序列自相關(guān)圖ACF
pacf(as.vector(Xt),lag.max=24)#序列偏相關(guān)圖PACF
resbic=armasubsets(y=Xt,nar=7,nma=7,ar.method='ols')#ARIMA模型自動(dòng)識(shí)階
plot(resbic)#不同ARIMA模型的BIC值
(3)參數(shù)估計(jì)
本例對(duì)階數(shù)p≤2,q≤1,季節(jié)模型階數(shù)P和Q不超過2的情形進(jìn)行參數(shù)組合,建立SARIMA模型,通過(3)和(4)這兩個(gè)步驟反復(fù)進(jìn)行,比較備選模型的各項(xiàng)指標(biāo)值,篩選得“最優(yōu)”模型 SARIMA(1,1,0)(0,1,1)12:
m.Xt=arima(Xt,order=c(1,1,0),seasonal=list(order=c(0,1,1),period=12))#建立模型accuracy(m.Xt)#計(jì)算模型的各項(xiàng)擬合指標(biāo)值
圖3 不同p,q階數(shù)建立的ARIMA模型的BIC值(R軟件)
R軟件的FORECAST程序包還提供了auto.arima()函數(shù),具有自動(dòng)建模功能。本例中調(diào)用函數(shù)auto.arima(Xt),得到最優(yōu)模型SARIMA(1,1,0)(1,0,0)12及參數(shù)估計(jì)的結(jié)果(表6)。但R軟件參數(shù)估計(jì)只提供系數(shù)和標(biāo)準(zhǔn)誤,顯著性檢驗(yàn)需自行計(jì)算統(tǒng)計(jì)量t值(系數(shù)除以標(biāo)準(zhǔn)誤的平方)來推斷。通過計(jì)算,表6中兩個(gè)備選模型的系數(shù)都符合“顯著性”要求(P<0.05)。
表6 備選模型的參數(shù)估計(jì)和模型檢驗(yàn)結(jié)果(R軟件)
(4)模型檢驗(yàn)
R軟件可以計(jì)算各延遲階數(shù)的LB統(tǒng)計(jì)量及P值,并通過圖形直觀表達(dá)。從圖4看出,上述兩個(gè)模型的殘差白噪聲檢驗(yàn),P值均大于0.05,說明所建立模型的殘差通過白噪聲檢驗(yàn)。各延遲階數(shù)的LB統(tǒng)計(jì)量具體值也可以計(jì)算,如lag=18時(shí),SARIMA(1,1,0)(0,1,1)12模型LB統(tǒng)計(jì)量16.405(P=0.5643);自動(dòng)建模SARIMA(1,1,0)(1,0,0)12模型LB統(tǒng)計(jì)量20.83(P=0.2882)。
BOX.test(m.Xt$residuals,lag=18,type=”Ljung-Box”)#計(jì)算LB統(tǒng)計(jì)量
tsdiag(m.Xt,gof=24,omit.initial=F)#LB統(tǒng)計(jì)量對(duì)應(yīng)的P值圖
圖4 備選模型的殘差白噪聲檢驗(yàn)(R軟件)
(5)模型預(yù)測(cè)
預(yù)測(cè)指定時(shí)間范圍序列{Xt}的值和置信區(qū)間,預(yù)測(cè)圖形的繪制比較靈活、輸出美觀。圖5是圖形的輸出,從具體預(yù)測(cè)值計(jì)算,擬合效果SARIMA(1,1,0)(0,1,1)12模型較好,MAPE為8.67%,自動(dòng)建模SARIMA(1,1,0)(1,0,0)12模型預(yù)測(cè)精度較高,平均相對(duì)誤差小,為6.64%(表3)。
圖5 備選模型的預(yù)測(cè)值和置信區(qū)間(R軟件)
EVIEWS是廣泛應(yīng)用的計(jì)量經(jīng)濟(jì)學(xué)軟件,能進(jìn)行傳統(tǒng)的時(shí)間序列分析,建立各種時(shí)序模型[3,10]。使用該軟件可以采用編程建模和菜單過程步建模兩種方式,本文以菜單功能實(shí)現(xiàn)說明ARIMA建模的步驟:
(1)導(dǎo)入數(shù)據(jù)
建立一個(gè)新的 Workfile,“File”→“Workfile Create”,在對(duì)話框輸入起始日期與結(jié)束日期,新建時(shí)間序列,將案例中的數(shù)據(jù)導(dǎo)入,即可建立時(shí)間序列{Xt}。
(2)模型識(shí)別
自相關(guān)和偏自相關(guān)函數(shù)是識(shí)別模型的主要工具。先通過菜單項(xiàng)對(duì)時(shí)間序列{Xt}的時(shí)序特性進(jìn)行識(shí)別,“View”→“Graph Option”,設(shè)置繪制序列對(duì)話框,繪制序列圖、序列差分圖等。再運(yùn)行“Quick”→“Series Statistic”→“Correclogram”,得出序列的ACF和PACF等結(jié)果,可根據(jù)這些信息對(duì)序列模型進(jìn)行識(shí)別、定階,根據(jù)圖6結(jié)果,初步判定p=1和q=1,P=1和Q=1。
圖6 差分后序列{??12Xt}ACF和PACF結(jié)果(EVIEWS)
(3)參數(shù)估計(jì)
EVIEWS中參數(shù)估計(jì)采用非線性算法。建模過程為“Quick”→“Estimate Equation”,打開方程定義對(duì)話框,若擬建立的模型為SARIMA(1,1,0)(0,1,1)12,就輸入相關(guān)的命令行:diffXt ar(1)ma(12),就可得到結(jié)果輸出(diffXt代表差分后序列{??12Xt})。
圖7 SARIMA(1,1,0)(0,1,1)12模型的參數(shù)估計(jì)結(jié)果(EVIEWS)
圖7上半部分是參數(shù)估計(jì)系數(shù)及顯著性結(jié)果,下半部分是模型擬合結(jié)果:R2=0.46,AIC=10.26,SC=10.32。
(4)模型檢驗(yàn)
檢驗(yàn)殘差序列是否為白噪聲,在方程輸出窗口選擇“views”→“Residual Tests”→“Correlogram-Q-Statistics”,在彈出的對(duì)話框中輸入最大的滯后期lag=18,得LB統(tǒng)計(jì)量Q=18.940(P=0.27),其他延遲階數(shù)LB統(tǒng)計(jì)量對(duì)應(yīng)的P值都大于0.05,模型通過白噪聲檢驗(yàn)。
(5)模型預(yù)測(cè)
在方程輸出窗口選擇“forecast”,預(yù)測(cè)方法可以選擇靜態(tài)預(yù)測(cè)或追溯預(yù)測(cè)(Dynamic forecast),動(dòng)態(tài)(向前多步)預(yù)測(cè)。得到擬合結(jié)果的MAPE為8.86%,Theil系數(shù)為0.047等結(jié)果(圖8),預(yù)測(cè)值的平均相對(duì)誤差為14.28%(表3)。
圖8 ARIMA模型的預(yù)測(cè)和擬合結(jié)果(EVIEWS)
4種軟件建模方法和應(yīng)用中:SPSS操作過程最為簡(jiǎn)便,適合非專業(yè)統(tǒng)計(jì)建模的需求。其“專家建模器”操作簡(jiǎn)單,可以快速建模;運(yùn)用菜單項(xiàng)建模也是“按部就班”,不需要復(fù)雜操作,有利于初學(xué)者使用;但算法呆板,靈活性差也是其不足之處。EVIEWS軟件易學(xué)易用,輸出整齊美觀,是計(jì)量經(jīng)濟(jì)學(xué)常用的軟件,但算法和功能不夠全面有時(shí)會(huì)降低建模的精度。SAS軟件提供很多命令和選項(xiàng),建模功能強(qiáng)大,用戶可以根據(jù)自己的需求靈活建模。但SAS輸出不夠美觀,SAS編程有一定難度,需要應(yīng)用者有一定編程基礎(chǔ)。R軟件是免費(fèi)軟件,建模靈活多變,目前的3.3.2版本已具有自動(dòng)識(shí)階、自動(dòng)建模等多種功能;但R軟件中會(huì)不斷更新程序包,一方面使得建模功能越來越強(qiáng)大,另一方面也需應(yīng)用者不斷學(xué)習(xí)探索;也有一定的學(xué)習(xí)難度。
以上運(yùn)用4種軟件進(jìn)行ARIMA建模,不同方法得到了不同的“最優(yōu)”模型和預(yù)測(cè)結(jié)果。在本實(shí)例分析中,SARIMA(1,1,0)(0,1,1)12模型是編程得到的“最優(yōu)”模型,擬合精度若以指標(biāo)MAPE比較,R軟件結(jié)果最佳;預(yù)測(cè)精度以預(yù)測(cè)平均相對(duì)誤差比較,EVIEWS最差。這是因?yàn)榻_^程中,不同軟件提供或默認(rèn)的算法不同,“最優(yōu)”模型盡管形式相同,但參數(shù)估計(jì)的系數(shù)不同,擬合和預(yù)測(cè)的結(jié)果就略有差異。在軟件自動(dòng)建模方面,SPSS專家建模器得到的SARIMA(0,0,2)(1,0,0)12模型雖然參數(shù)估計(jì)結(jié)果均顯著不為0,但殘差白噪聲檢驗(yàn)未通過,因此擬合和預(yù)測(cè)效果都不理想。R軟件自動(dòng)建模得到的SARIMA(1,1,0)(1,0,0)12模型,在模型檢驗(yàn)中各項(xiàng)指標(biāo)AIC、BIC、MAPE等不是最優(yōu),但在此實(shí)例中預(yù)測(cè)精度最高(預(yù)測(cè)平均相對(duì)誤差6.64%)(表3)。無論是SPSS還是R軟件,自動(dòng)建模的結(jié)果僅可做為參考。在編程建模時(shí),結(jié)合ACF、PACF圖和自動(dòng)識(shí)階結(jié)果,篩選“最優(yōu)”模型,避免出現(xiàn)主觀偏差。
總之,不同軟件在ARIMA建模各有特色和優(yōu)點(diǎn),應(yīng)用者可依據(jù)自身專業(yè)背景和建模需求選擇不同的軟件建立ARIMA模型。