时间序列 :ARIMA模型-原理
時(shí)間序列是在時(shí)間點(diǎn)上形成的數(shù)值序列,時(shí)間序列預(yù)測(cè)是通過觀察歷史數(shù)據(jù)預(yù)測(cè)未來的值。ARIMA模型(Autoregressive?Integrated?Moving?Average model)是時(shí)間序列預(yù)測(cè)分析方法之一,全稱叫做自回歸差分移動(dòng)*均模型。
本文是看網(wǎng)上博客整理而來,原始文章是:
時(shí)間序列分析(2) ARIMA 模型
羅漢堂主 ARIMA
機(jī)器學(xué)習(xí)(三)——時(shí)間序列法
一,模型的構(gòu)成
ARIMA模型包含3個(gè)部分,即自回歸(AR)、差分(I)和移動(dòng)*均(MA),它們的含義分別是:
- AR表示自回歸(Auto Regression),
- I 表示單整階數(shù)(Integration),時(shí)間序列必須是*穩(wěn)的,才能建立計(jì)量模型。對(duì)時(shí)間序列進(jìn)行單位根檢驗(yàn),如果是非*穩(wěn)序列,那么需要通過差分轉(zhuǎn)化為*穩(wěn)序列,經(jīng)過幾次差分轉(zhuǎn)化為*穩(wěn)序列,就稱為幾階單整;
- MA表示移動(dòng)*均模型(Moving Average)
ARIMA模型記作ARIMA(p,d,q),p為自回歸項(xiàng)數(shù);q為滑動(dòng)*均項(xiàng)數(shù),d為使之成為*穩(wěn)序列所做的差分次數(shù)(階數(shù))?!安罘帧笔顷P(guān)鍵步驟,采用ARIMA模型預(yù)測(cè)的時(shí)序數(shù)據(jù),必須是穩(wěn)定的(*穩(wěn)性),不穩(wěn)定的數(shù)據(jù),是無法捕捉到時(shí)序規(guī)律的。
ARIMA模型實(shí)際上是AR模型和MA模型的組合,ARIMA模型與ARMA模型的區(qū)別:ARMA模型是針對(duì)*穩(wěn)時(shí)間序列建立的模型,而ARIMA模型是針對(duì)非*穩(wěn)時(shí)間序列建立的模型。換句話說,非*穩(wěn)時(shí)間序列要建立ARMA模型,首先需要經(jīng)過差分轉(zhuǎn)化為*穩(wěn)時(shí)間序列,然后建立ARMA模型。
- 模型的優(yōu)點(diǎn)是:模型簡(jiǎn)單,只需要內(nèi)生變量而不需要借助其他外生變量。
- 模型的缺點(diǎn)是:要求時(shí)序數(shù)據(jù)是穩(wěn)定的,或者通過差分化之后是穩(wěn)定的;本質(zhì)上只能捕捉線性關(guān)系,不能捕捉非線性關(guān)系。
1,AR模型
描述當(dāng)前值與歷史值之間的關(guān)系,用變量自身的歷史時(shí)間數(shù)據(jù)對(duì)自身進(jìn)行預(yù)測(cè),自回歸模型必須滿足*穩(wěn)性的要求
一般情況下,p階自回歸過程的公式定義:
yt是當(dāng)前值,u是常數(shù)項(xiàng),P是階數(shù),ri是自相關(guān)系數(shù),et是誤差,即 白噪聲。
公式展開:
如果隨機(jī)擾動(dòng)項(xiàng)是一個(gè)白噪聲(?
?),即 u=0, 則稱AR模型為一個(gè)純AR(p)過程,記為:從公式中可以看出,當(dāng)前值是通過歷史值來預(yù)測(cè)的,p是自回歸模型中的一個(gè)階數(shù),表示用幾期的歷史值來預(yù)測(cè)當(dāng)前值。
自回歸模型的限制:
- 1、自回歸模型是用自身的數(shù)據(jù)進(jìn)行預(yù)測(cè)
- 2、時(shí)間序列數(shù)據(jù)必須具有*穩(wěn)性
- 3、必須具有相關(guān)性,如果自相關(guān)系數(shù)(φi)小于0.5,則不宜采用
- 4、自回歸只適用于預(yù)測(cè)與自身前期相關(guān)的現(xiàn)象(時(shí)間序列的自相關(guān)性)
移動(dòng)*均模型關(guān)注的是自回歸模型中的誤差項(xiàng)的累加,在AR模型中,如果?
?不是一個(gè)白噪聲,通常認(rèn)為它是一個(gè)q階的移動(dòng)*均。其中?
?表示白噪聲序列。特別的,當(dāng)?
?,即時(shí)間序列當(dāng)前值與歷史值沒有關(guān)系,而只依賴于歷史白噪聲的線性組合,就得到MA模型:需要指出一點(diǎn),AR模型中歷史白噪聲的影響是間接影響當(dāng)前預(yù)測(cè)值的(通過影響歷史時(shí)序值)。
q階自MA模型的公式定義:
移動(dòng)*均法能有效地消除預(yù)測(cè)中的隨機(jī)波動(dòng)。
3,ARMA模型
將AR(p)與MA(q)結(jié)合,得到一個(gè)一般的自回歸移動(dòng)*均模型ARMA(p,q):
該式表明:
(1)一個(gè)隨機(jī)時(shí)間序列可以通過一個(gè)自回歸移動(dòng)*均模型來表示,即該序列可以由其自身的過去或滯后值以及隨機(jī)擾動(dòng)項(xiàng)來解釋。
(2)如果該序列是*穩(wěn)的,即它的行為并不會(huì)隨著時(shí)間的推移而變化,那么我們就可以通過該序列過去的行為來預(yù)測(cè)未來。
4,ARIMA 模型
ARIMA中的AR和MA,分別是AR模型和MA模型,I是差分法,差分計(jì)算保證了數(shù)據(jù)的穩(wěn)定性。
自回歸模型(AR)、移動(dòng)*均模型(MA)和差分法(I)結(jié)合,我們就得到了差分自回歸移動(dòng)*均模型 ARIMA(p、d、q),其中 d 是需要對(duì)數(shù)據(jù)進(jìn)行差分的階數(shù),ARIMA是經(jīng)過差分后的ARMA模型。
二,模型的特征
第一個(gè)特征是:自相關(guān)性
通常來講,時(shí)間序列一般由固定趨勢(shì)、季節(jié)性變動(dòng)和隨機(jī)因素組成。如果時(shí)間序列的隨機(jī)因素在各時(shí)間點(diǎn)上完全獨(dú)立沒有任何聯(lián)系,那么我們很難對(duì)這一部分進(jìn)行建模。幸運(yùn)的是,對(duì)于一般的時(shí)間序列,在剔除固定趨勢(shì)和季節(jié)效應(yīng)后,時(shí)間序列在不同時(shí)點(diǎn)上是存在相關(guān)性的,這種自相關(guān)特征是我們對(duì)時(shí)間序列建模的基礎(chǔ)。
在統(tǒng)計(jì)學(xué)中,我們用相關(guān)系數(shù)表示兩個(gè)變量之間的相關(guān)性,在時(shí)間序列中一個(gè)重要問題是研究序列之間是如何相互影響的。與統(tǒng)計(jì)學(xué)的相關(guān)系數(shù)類似,在時(shí)序分析中采用相似的方法來表示時(shí)間序列的自相關(guān)特征。通過自相關(guān)函數(shù)圖可以清楚地看到時(shí)間序列的自相關(guān)特征,這種特征是建模的基礎(chǔ)。
自相關(guān)函數(shù) (AutocorrelationFunction, ACF):相關(guān)系數(shù)度量了兩個(gè)向量的線性相關(guān)性,而在*穩(wěn)時(shí)間序列 {rt} 中,我們有時(shí)候很想知道,rt 與它的過去值 rt-i 的線性相關(guān)性。 這時(shí)候我們把相關(guān)系數(shù)的概念推廣到自相關(guān)系數(shù)。
rt 與 rt-l 的相關(guān)系數(shù)稱為 rt 的間隔為 l 的自相關(guān)系數(shù),通常記為 ρl。具體的:
這里用到了弱*穩(wěn)序列的性質(zhì):
則函數(shù):
?稱為rt 的樣本自相關(guān)函數(shù)(ACF)。當(dāng)自相關(guān)函數(shù)中所有的值都為0時(shí),我們認(rèn)為該序列是完全不相關(guān)的;因此,我們經(jīng)常需要檢驗(yàn)多個(gè)自相關(guān)系數(shù)是否為0。
第二個(gè)特征是:白噪聲
白噪聲是由一組0均值,不變方差,相互獨(dú)立的元素構(gòu)成,當(dāng)然可以對(duì)該元素的分布進(jìn)行假設(shè)(如高斯分布)。白噪聲如同他的名字聽起來一樣是雜亂無章的,各元素之間沒有任何聯(lián)系。由白噪聲組成的序列是隨機(jī)游走,隨機(jī)游走序列的自相關(guān)特點(diǎn)是其自相關(guān)函數(shù)幾乎為1并且衰減很慢,這種特征我們稱為長(zhǎng)記憶性。
白噪聲表示數(shù)據(jù)之間沒有相關(guān)性,如果時(shí)間序列都是由白噪聲數(shù)據(jù)構(gòu)成的,那么時(shí)間序列的數(shù)據(jù)就不能是自相關(guān)的。
第三個(gè)特征是:*穩(wěn)性
事件序列的*穩(wěn)性可以分為強(qiáng)*穩(wěn)和弱*穩(wěn)。為什么*穩(wěn)性對(duì)事件序列建模如此重要?為什么要有強(qiáng)、弱兩種*穩(wěn)?
弱*穩(wěn)的時(shí)間序列需滿足兩個(gè)條件:均值函數(shù)是常數(shù)函數(shù)且協(xié)方差函數(shù)僅與時(shí)間差相關(guān)。*穩(wěn)性的實(shí)質(zhì)是對(duì)時(shí)間*移的不變性做了假設(shè),有了這種假設(shè)通過歷史數(shù)據(jù)去預(yù)測(cè)未來才有了基礎(chǔ),否則歷史數(shù)據(jù)的統(tǒng)計(jì)特征對(duì)未來預(yù)測(cè)毫無作用。
強(qiáng)*穩(wěn)是事實(shí)上的*穩(wěn),它要求時(shí)間序列的點(diǎn)同分布,它過于嚴(yán)格而且不好驗(yàn)證和使用;弱*穩(wěn)則是退而求其次只要求前兩階矩*穩(wěn)(均值和方差),這樣使得弱*穩(wěn)有了明顯的統(tǒng)計(jì)意義。
因此,為了能夠?qū)r(shí)間序列進(jìn)行建模,必須進(jìn)行*穩(wěn)性檢驗(yàn),檢驗(yàn)方法有ADF、*穩(wěn)序列的自相關(guān)和偏自相關(guān)。若非*穩(wěn),則通過差分去除趨勢(shì),直到通過*穩(wěn)性檢驗(yàn)。
三,*穩(wěn)性檢查
*穩(wěn)就是圍繞著一個(gè)常數(shù)上下波動(dòng)且波動(dòng)范圍有限,即有常數(shù)均值和常數(shù)方差。如果有明顯的趨勢(shì)或周期性,那它通常不是*穩(wěn)序列。
時(shí)間序列必須是*穩(wěn)的,才能建立計(jì)量模型。*穩(wěn)是指數(shù)據(jù)圍繞著一個(gè)常數(shù)上下波動(dòng)且波動(dòng)范圍有限,即有常數(shù)均值和常數(shù)方差。如果有明顯的趨勢(shì)或周期性,那它通常不是*穩(wěn)序列。*穩(wěn)性是指經(jīng)由樣本時(shí)間序列所得到的擬合曲線在未來一段時(shí)間內(nèi)仍能順著現(xiàn)有的形態(tài)慣性地延續(xù)下去。
*穩(wěn)性要求序列的均值、方差和協(xié)方差不發(fā)生明顯變化,通常從三個(gè)方面分析:均值,方差和協(xié)方差, 這三個(gè)指標(biāo)都不會(huì)隨著時(shí)間而發(fā)生明顯的變化。
1,均值 均值不應(yīng)該是關(guān)于時(shí)間t的函數(shù),而應(yīng)該是一個(gè)常數(shù)。2,方差
方差不應(yīng)該是時(shí)間的函數(shù),即方差需要有:同方差性
3,協(xié)方差
i時(shí)刻與i+m時(shí)刻協(xié)方差不應(yīng)該是時(shí)間的函數(shù):
檢查*穩(wěn)性,一般有三種方法:
(1)直接畫出時(shí)間序列的趨勢(shì)圖,看趨勢(shì)判斷。
(2)畫自相關(guān)和偏自相關(guān)圖:*穩(wěn)的序列的自相關(guān)圖(Autocorrelation)和偏相關(guān)圖(Partial Correlation)要么拖尾,要么是截尾。
(3)單位根檢驗(yàn):檢驗(yàn)序列中是否存在單位根,如果存在單位根就是非*穩(wěn)時(shí)間序列。
在項(xiàng)目中,通常使用前兩種方法來檢查時(shí)間序列的*穩(wěn)性。 單位根檢驗(yàn)對(duì)時(shí)間序列進(jìn)行單位根檢驗(yàn),如果是非*穩(wěn)序列,那么需要通過差分轉(zhuǎn)化為*穩(wěn)序列,不穩(wěn)定的數(shù)據(jù),是無法捕捉到時(shí)序規(guī)律的。
單位根(unit root)檢驗(yàn)是指檢驗(yàn)序列中是否存在單位根,因?yàn)榇嬖趩挝桓褪欠?穩(wěn)時(shí)間序列了。單位根就是指單位根過程,可以證明,序列中存在單位根過程就不*穩(wěn),會(huì)使回歸分析中存在偽回歸。而擴(kuò)展迪基-福勒檢驗(yàn)(Augmented Dickey-Fuller test可以測(cè)試一個(gè)自回歸模型是否存在單位根,通過ADF檢測(cè)的ADF值和p_value值看是否滿足*穩(wěn)性要求。
1)ADF值判斷*穩(wěn)性需要根據(jù)1%、%5、%10不同程度拒絕原假設(shè)的統(tǒng)計(jì)值:
- 1%:嚴(yán)格拒絕假設(shè);
- 5%:拒絕原假設(shè);
- 10%類推。
ADF值越小,越拒絕原假設(shè),越說明序列不存在單位根,那么時(shí)間序列越*穩(wěn)。
2)p_value值要小于一個(gè)顯著值,時(shí)間序列就是*穩(wěn)的,一般以0.01為顯著值。
四,參數(shù)值的確認(rèn)
ARIMA模型含有三個(gè)參數(shù):p,d,q。
- p:代表預(yù)測(cè)模型中采用的時(shí)序數(shù)據(jù)本身的滯后數(shù)(lags) ,也叫做AR/Auto-Regressive項(xiàng)
- d:代表時(shí)序數(shù)據(jù)需要進(jìn)行幾階差分化,才是穩(wěn)定的,也叫Integrated項(xiàng)。
- q:代表預(yù)測(cè)模型中采用的預(yù)測(cè)誤差的滯后數(shù)(lags),也叫做MA/Moving Average項(xiàng)
1,參數(shù)d的確認(rèn)
差分是求時(shí)間序列{rt}在 t時(shí)刻和t-1時(shí)刻的差值,把rt 與 t-1 時(shí)刻的值r(t-1) 的差值記做 dt,則得到了一個(gè)新序列{dt},為一階差分;對(duì)新序列{dt}再做同樣的操作,則為二階差分。通常非*穩(wěn)序列可以經(jīng)過d次差分,處理成弱*穩(wěn)或者*似弱*穩(wěn)時(shí)間序列。d就是差分的階數(shù),d階差分就是相距d期的兩個(gè)序列值之間相減。
如果一個(gè)時(shí)間序列經(jīng)過差分運(yùn)算后具有*穩(wěn)性,則該序列為差分*穩(wěn)序列,可以使用ARIMA模型進(jìn)行分析。也就是說,如果對(duì)時(shí)間序列做d次差分后得到一個(gè)*穩(wěn)序列,那么可以使用ARIMA(p,d,q)模型,其中d是差分次數(shù)。
首先通過ADF檢驗(yàn),檢查原始時(shí)間序列的*穩(wěn)性,如果原始時(shí)間序列是*穩(wěn)的,那么d=0;如果原始數(shù)據(jù)不*穩(wěn),那么做差分運(yùn)算,通過ADF檢驗(yàn)直到時(shí)間序列*穩(wěn),一般差分次數(shù)不超過2次。
舉個(gè)例子,當(dāng)序列不*穩(wěn)時(shí),需要通過差分使時(shí)間序列變*穩(wěn),如下圖所示,第一張圖是原始數(shù)據(jù),第二張圖是一階差分,第三張圖是二階差分:
很明顯差分階數(shù)越大序列越*穩(wěn),一般一階差分即可。除了看圖,也可通過ADF檢驗(yàn)去檢驗(yàn)*穩(wěn)性。
2,參數(shù)p、q的確認(rèn)
通常在時(shí)間序列分析中,采用自相關(guān)函數(shù)(ACF)、偏自相關(guān)函數(shù)(PACF)來判別ARMA(p,q)模型的系數(shù)和階數(shù)。
- 自相關(guān)函數(shù)(ACF)描述時(shí)間序列觀測(cè)值與其過去的觀測(cè)值之間的線性相關(guān)性。
- 偏自相關(guān)函數(shù)(PACF)描述在給定中間觀測(cè)值的條件下時(shí)間序列觀測(cè)值與其過去的觀測(cè)值之間的線性相關(guān)性。
具體判別過程如下面的表格所示:
p由顯著不為0的偏自相關(guān)系數(shù)的數(shù)目決定,此時(shí)序列的偏自相關(guān)函數(shù)表現(xiàn)為拖尾性,即當(dāng)k>p時(shí),偏自相關(guān)系數(shù)的值都在置信區(qū)間以內(nèi); q由顯著不為0的自相關(guān)系數(shù)的數(shù)目決定,此時(shí)序列的自相關(guān)函數(shù)表現(xiàn)為截尾性,即當(dāng)k>p時(shí),自相關(guān)系數(shù)的值都在置信區(qū)間內(nèi)。 這里的拖尾是指以指數(shù)率單調(diào)或振蕩衰減,截尾是指從某個(gè)開始非常小(不顯著非零)。 在*穩(wěn)時(shí)間序列中,應(yīng)用自相關(guān)函數(shù)和偏自相關(guān)函數(shù)在初步判斷ARMA模型的階數(shù)p和q的基礎(chǔ)上,然后通過最小信息準(zhǔn)則AIC進(jìn)行定階。 ARMA模型中p和q的的最佳估計(jì)可以通過AIC準(zhǔn)則給出,AIC比較適合在被觀察樣本數(shù)據(jù)較少的情況下使用。?
做出上面時(shí)間序列的ACF和PACF,圖中橫線為0±兩倍標(biāo)準(zhǔn)差,可以判斷ACF和PACF是否顯著非零。
可以看出ACF呈拖尾狀,PACF第2個(gè)后截尾,可初步斷定序列適合AR(2)模型。
3,拖尾和截尾
拖尾指序列以指數(shù)率單調(diào)遞減或震蕩衰減,而截尾指序列從某個(gè)時(shí)點(diǎn)變得非常小:
p,q階數(shù)的確定
?
五,模型優(yōu)化
AIC和BIC準(zhǔn)則
在所有通過檢驗(yàn)的模型中,使得AIC和BIC函數(shù)達(dá)到最小的模型是相對(duì)最優(yōu)的模型。
參考文檔:
時(shí)間序列分析(2) ARIMA 模型
羅漢堂主 ARIMA
機(jī)器學(xué)習(xí)(三)——時(shí)間序列法
總結(jié)
以上是生活随笔為你收集整理的时间序列 :ARIMA模型-原理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html产品720度旋转,720度全视角
- 下一篇: 【组网】NAT类型为Udpblocked