灰度預(yù)測(cè)模型

常用的預(yù)測(cè)方法(如回歸分析),需要較大的樣本锯仪,如果樣本較小,常造成較大的誤差趾盐,使預(yù)測(cè)目標(biāo)失效庶喜⌒±埃灰度預(yù)測(cè)模型(Gray Forecast Model)是通過(guò)利用少量的、不完全的信息久窟,建立數(shù)學(xué)模型并做出預(yù)測(cè)的一種預(yù)測(cè)方法秩冈。本文將對(duì)這種預(yù)測(cè)模型進(jìn)行詳細(xì)介紹。由于部分公式書(shū)寫(xiě)麻煩斥扛,本文直接插入了公式圖片入问。

1. 灰度系統(tǒng)理論

灰度系統(tǒng)理論是由華中理工大學(xué)鄧聚龍教授于1982年提出并發(fā)展而成的解決灰色系統(tǒng)的理論和方法,該方法將一般的系統(tǒng)論稀颁、信息論和控制論的觀點(diǎn)與數(shù)學(xué)方法結(jié)合在一起芬失。首先看一下灰度理論中的幾個(gè)概念。

1.1 灰度系統(tǒng)

灰度系統(tǒng)是指“部分信息已知峻村,部分未知”的“小樣本”麸折,“貧信息”的不確定性系統(tǒng)。系統(tǒng)中各因素間有不確定的關(guān)系粘昨。
作為兩個(gè)極端垢啼,如果系統(tǒng)中信息完全確定,則成為白色系統(tǒng)张肾;相反芭析,信息完全不確定的系統(tǒng)為黑色系統(tǒng),只能通過(guò)它與外界的聯(lián)系來(lái)加以觀測(cè)研究吞瞪。區(qū)別白色和黑色系統(tǒng)的重要標(biāo)志是系統(tǒng)中各因素之間是否具有確定關(guān)系馁启。

1.2 灰度系統(tǒng)的特點(diǎn)

灰色系統(tǒng)可以充分利用已知信息尋求系統(tǒng)的運(yùn)動(dòng)規(guī)律,使用灰色數(shù)學(xué)處理不確定量芍秆,使之量化惯疙,因此,灰色系統(tǒng)理論能夠處理貧信息或小樣本的系統(tǒng)妖啥。

2. 灰色預(yù)測(cè)方法

灰度預(yù)測(cè)法是對(duì)灰色系統(tǒng)進(jìn)行預(yù)測(cè)的方法霉颠。通過(guò)關(guān)聯(lián)分析和數(shù)據(jù)處理來(lái)尋找系統(tǒng)變動(dòng)的規(guī)律,生成有較強(qiáng)規(guī)律性的數(shù)據(jù)序列荆虱。然后用來(lái)預(yù)測(cè)兩種不同的目標(biāo)蒿偎,一種是預(yù)測(cè)某時(shí)刻的特征量來(lái)預(yù)測(cè)未來(lái)發(fā)展趨勢(shì)。另一種是固定特征量閾值怀读,通過(guò)分析特征量出現(xiàn)時(shí)刻的規(guī)律诉位,預(yù)測(cè)未來(lái)達(dá)到閾值的時(shí)間點(diǎn)。

2.1 灰色預(yù)測(cè)類型

(1) 數(shù)列預(yù)測(cè)菜枷。用觀察到的反映預(yù)測(cè)對(duì)象特征的時(shí)間序列構(gòu)造灰色預(yù)測(cè)模型苍糠,預(yù)測(cè)未來(lái)某一時(shí)刻的特征量,或達(dá)到某一特征量的時(shí)間啤誊。
(2) 災(zāi)變或異常值預(yù)測(cè)椿息。利用灰度模型預(yù)測(cè)異常值出現(xiàn)的特定時(shí)間歹袁。
(3) 季節(jié)災(zāi)變或異常值預(yù)測(cè)。預(yù)測(cè)災(zāi)變或異常值發(fā)生在一年內(nèi)哪個(gè)時(shí)間區(qū)間或季節(jié)內(nèi)寝优。
(4) 拓?fù)漕A(yù)測(cè)条舔。將原始數(shù)據(jù)做曲線,在曲線上按照閾值尋找發(fā)生的所有時(shí)間點(diǎn)乏矾,并以該時(shí)間點(diǎn)構(gòu)成的序列構(gòu)建預(yù)測(cè)模型孟抗,建立模型預(yù)測(cè)該閾值的時(shí)間點(diǎn)。
(5) 系統(tǒng)預(yù)測(cè)钻心。 通過(guò)對(duì)系統(tǒng)行為特征指標(biāo)建立一組相關(guān)聯(lián)的灰度預(yù)測(cè)模型凄硼,預(yù)測(cè)系統(tǒng)中眾多變量間的相互協(xié)調(diào)關(guān)系的變化。


下面我們對(duì)具體的集中預(yù)測(cè)模型進(jìn)行介紹捷沸。

3. GM(1,1)模型

3.1 數(shù)據(jù)/數(shù)列生成

我們獲取到的未作處理的數(shù)據(jù)被稱為原始數(shù)列摊沉,按照某種要求經(jīng)過(guò)處理后生成的數(shù)列為生成數(shù)列,我們可以從中發(fā)現(xiàn)原始數(shù)列中沒(méi)有表現(xiàn)出的內(nèi)在規(guī)律痒给。
常用的數(shù)據(jù)處理方法有累加生成说墨、累減生成、均值生成苍柏。
(1) 累加生成
通過(guò)依次累加某時(shí)刻之前的數(shù)據(jù)得到新的數(shù)列尼斧,記為AGO(Accumulating Ceneration Operator)。
設(shè)x^(0)為原始序列试吁,既有
![][1]
[1]: http://latex.codecogs.com/svg.latex?$x{(0)}=[x{(0)}(1),x{(0)}(2),...,x{(0)}(n)]$
按照下列公式生成新的累加數(shù)列:
![][2]
[2]: http://latex.codecogs.com/svg.latex?$x{(1)}(k)=\sum_{i=1}{k}x^{(0)}(i);k=1,2,...,n$
則稱x(1)為x(0)的一次累加生成數(shù)列:
![][3]
[3]: http://latex.codecogs.com/svg.latex?$x{(1)}=[x{(1)}(1),x{(1)}(2),...,x{(1)}(n)]$
類似的有r次累加生成:
![][4]
[4]: http://latex.codecogs.com/svg.latex?$x{(r)}(k)=\sum_{i=1}{k}x^{(r-1)}(i);k=1,2,...,n$
(2)累減生成
對(duì)原始數(shù)列的數(shù)據(jù)依次作前后兩個(gè)數(shù)據(jù)相減的運(yùn)算棺棵,記為IAGO(Inverse Accumulating Ceneration Operator)。累減生成可以將累加生成序列還原成非生成序列熄捍。
我們?cè)O(shè)x^(1)為原始序列烛恤,則有
![][5]
[5]: http://latex.codecogs.com/svg.latex?$x{(1)}=[x{(1)}(1),x{(1)}(2),...,x{(1)}(n)]$
如果令:
![][6]
[6]: http://latex.codecogs.com/svg.latex?$x{(0)}(k)=x{(1)}(k)-x^{(1)}(k-1)$
則可生成一次累減序列x^(0):
![][7]
[7]: http://latex.codecogs.com/svg.latex?$x{(0)}=[x{(0)}(1),x{(0)}(2),...,x{(0)}(n)]$
更一般地,有:
![][8]
[8]: http://latex.codecogs.com/svg.latex?$x{(r-1)}(k)=x{(r)}(k)-x^{(r)}(k-1)$
均值生成序列分為鄰均值生成和非鄰均值生成兩種余耽,就暫時(shí)不在本文詳細(xì)介紹了缚柏,以后再補(bǔ)充。

3.2模型建立

給定觀測(cè)數(shù)據(jù)序列
![][9]
[9]: http://latex.codecogs.com/svg.latex?$x{(0)}=[x{(0)}(1),x{(0)}(2),...,x{(0)}(n)]$
經(jīng)過(guò)一次累加后宾添,得到序列:
![][10]
[10]: http://latex.codecogs.com/svg.latex?$x{(1)}=[x{(1)}(1),x{(1)}(2),...,x{(1)}(n)]$
設(shè)x^(1)滿足一階常微分方程
![][11]
[11]: http://latex.codecogs.com/svg.latex?${dx{(1)}}/{dt}+ax{(1)}=u$
其中a是發(fā)展灰數(shù)或發(fā)展系數(shù),u為內(nèi)生控制灰數(shù)或灰作用量柜裸,是對(duì)系統(tǒng)的常定輸入缕陕。該方程滿足當(dāng)初始條件為:
![][12]
[12]: http://latex.codecogs.com/svg.latex?$when:t=t_{0},x{(1)}=x{(1)}(t_0)$
則有解為:
![][13]
[13]: http://latex.codecogs.com/svg.latex?$x{(1)}(t)=[x{(1)}(t_0)-u/a]e^{-a(t-t_0)}+u/a$
對(duì)等間距取樣的離散值,則有
![][19]
[19]: http://latex.codecogs.com/svg.latex?$when:t_0=1\\x{(1)}(k+1)=[x{(1)}(1)-u/a]e^{-ak}+u/a$
由于x(1)對(duì)t求導(dǎo)涉及x(1)的兩個(gè)時(shí)刻值,因此疙挺,x^(1)(i)取前后兩個(gè)時(shí)刻的平均代替更合理扛邑。即有:
![][14]
[14]: http://latex.codecogs.com/svg.latex?$1/2[x{(r)}(i)+x{(r)}(i-1)],(i=2,3,...,N)$
寫(xiě)成矩陣表達(dá)的形式為:
![][15]
[15]: http://latex.codecogs.com/svg.latex?$\begin{bmatrix}x{(0)}(2)\x{(0)}(3)\...\x{(0)}(N)\end{bmatrix}=\begin{bmatrix}-1/2[x{(1)}(2)+x{(1)}(1)]&1\-1/2[x{(1)}(3)+x{(1)}(2)]&1\...\-1/2[x{(1)}(N)+x^{(1)}(N-1)]&1\end{bmatrix}\begin{bmatrix}a\u\end{bmatrix}$
如果用符號(hào)代表上式的向量或矩陣,則有
![][16]
[16]: http://latex.codecogs.com/svg.latex?$y=BU$
其中铐然,
![][17]
[17]: http://latex.codecogs.com/svg.latex?$U=[a,u]{T}\\y=[x{(0)}(2),x{(0)}(3),...,x{(0)}(N)]{T}\\B=\begin{bmatrix}-1/2[x{(1)}(2)+x{(1)}(1)]&1\-1/2[x{(1)}(3)+x{(1)}(2)]&1\...\-1/2[x{(1)}(N)+x^{(1)}(N-1)]&1\end{bmatrix}$
利用最小二乘法估計(jì)上式蔬崩,可得:
![][18]
[18]: http://latex.codecogs.com/svg.latex?\hat{U}=\begin{bmatrix}\hat{a}\\hat{u}\end{bmatrix}=(B{T}B){-1}B^{T}y
將上式得到的估計(jì)值a和u帶入求離散解的公式恶座,得到時(shí)間響應(yīng)方程
![][20]
[20]: http://latex.codecogs.com/svg.latex?\hat{x{(1)}}(k+1)=[x{(1)}(1)-\frac{\hat{u}}{\hat{a}}]e^{-\hat{a}k}+\frac{\hat{u}}{\hat{a}}
當(dāng)k=1,2,...,N-1時(shí),由上式計(jì)算得到的結(jié)果是擬合值沥阳,當(dāng)k>=N時(shí)跨琳,結(jié)果為預(yù)測(cè)值。這是相對(duì)于一次累加序列的擬合值桐罕,用后減運(yùn)算還原脉让,就可得原始序列的擬合值和預(yù)測(cè)值。

3.3 精度檢驗(yàn)

(1) 殘差檢驗(yàn):預(yù)測(cè)得到的一次累加序列進(jìn)行累減計(jì)算功炮,得到原始序列估計(jì)值溅潜,再計(jì)算其與原始序列的絕對(duì)殘差序列和相對(duì)殘差序列。
殘差:
![][21]
[21]: http://latex.codecogs.com/svg.latex?E(k)=x{(0)}(k)-\hat{x{(0)}}(k),k=2,3,...N;
相對(duì)殘差:
![][22]
[22]: http://latex.codecogs.com/svg.latex?e(k)=[x{(0)}(k)-\hat{x{(0)}}(k)]/x^{(0)}(k),k=2,3,...N;
(2) 后驗(yàn)差檢驗(yàn):分別計(jì)算
原始序列x^(0)的均值:
![][23]
[23]: http://latex.codecogs.com/svg.latex?\bar{X}=\frac{1}{N}\sum_{k=1}{N}x{(0)}(k)
原始序列x^(0)的方差:
![][24]
[24]: http://latex.codecogs.com/svg.latex?S_1=\sqrt{\frac{1}{N}\sum_{k=1}{N}[x{(0)}(k)-\bar{X}]^2}
殘差的均值:
![][25]
[25]: http://latex.codecogs.com/svg.latex?\bar{E}=\frac{1}{N-1}\sum_{k=2}^{N}E(k)
殘差的方差:
![][26]
[26]: http://latex.codecogs.com/svg.latex?S_2=\sqrt{\frac{1}{N-1}\sum_{k=2}{N}[E(k)-\bar{E}]2}
后驗(yàn)差比值:
![][27]
[27]: http://latex.codecogs.com/svg.latex?C=\frac{S_2}{S_1}
小誤差概率:
![][28]
[28]: http://latex.codecogs.com/svg.latex?P=P{|E(k)-\bar{E}|<0.6745S_1}
對(duì)比精度等級(jí)對(duì)照表薪伏,如下表所示滚澜。
![][29]
[29]: http://latex.codecogs.com/svg.latex?\begin{array}{c|lcr}level&\text{P}&\text{C}&\text{Level}\\hline1&{\textgreater0.95}&{\textless0.35}&Good\2&{\textgreater0.80}&{\textless0.45}&Qualified\3&{\textgreater0.70}&{\textless0.5}&Barely-passing\4&\leq0.70&\geq0.65&Unqualified\end{array}
評(píng)價(jià)模型的指標(biāo)C越小越好,P越大越好嫁怀,一般按照Max{P的level,C的level}來(lái)確定模型的精度級(jí)別设捐。
(3) 關(guān)聯(lián)度檢驗(yàn)
關(guān)聯(lián)度分析時(shí)根據(jù)因素之間發(fā)展態(tài)勢(shì)的相似或相異程度,分析事物動(dòng)態(tài)關(guān)聯(lián)的特征和程度眶掌。后期再作補(bǔ)充挡育。


由于灰度預(yù)測(cè)模型是給予一階常微分方程建立的,故被稱為一階一元灰色模型朴爬,記為GM(1,1)即寒。特別注意,原始數(shù)據(jù)中如果有負(fù)數(shù)召噩,需要先進(jìn)行“數(shù)據(jù)整體提升”處理母赵,再做一次累加,避免累加時(shí)正負(fù)抵消具滴。


4. GM(1,1)殘差模型

如果用原始時(shí)間序列建立的GM(1,1)模型檢驗(yàn)不合格或精度不理想時(shí)凹嘲,要對(duì)建立的模型進(jìn)行殘差修正,可以提高模型的預(yù)測(cè)精度构韵。
我們?cè)O(shè)
![][30]
[30]: http://latex.codecogs.com/svg.latex?\varepsilon{(0)}=(\varepsilon{(0)}(1),\varepsilon{(0)}(2),...,\varepsilon{(0)}(n))
其中周蹭,我們稱
![][31]
[31]: http://latex.codecogs.com/svg.latex?\varepsilon(k)=x{(0)}(k)-\hat{x}{(1)}(k)
為X^(1)的殘差序列。若存在k0滿足如下條件
![][32]
[32]: http://latex.codecogs.com/svg.latex?1.\forall{k}\gek_0,\varepsilon^{(0)}(k)\textless0or*\varepsilon^{(0)}\textgreater0;\\****2.when:n-k_0\ge4;
則稱
![][33]
[33]: http://latex.codecogs.com/svg.latex?(|\varepsilon{(0)}(k_0)|,|\varepsilon{(0)}(k_0+1)|,...,|\varepsilon^{(0)}(n)|)
為可建模殘差尾段疲恢,仍記為
![][34]
[34]: http://latex.codecogs.com/svg.latex?(\varepsilon{(0)}(k_0),\varepsilon{(0)}(k_0+1),...,\varepsilon^{(0)}(n))
對(duì)其進(jìn)行一次累加凶朗,得到序列
![][35]
[35]: http://latex.codecogs.com/svg.latex?(\varepsilon{(1)}(k_0),\varepsilon{(1)}(k_0+1),...,\varepsilon^{(1)}(n))
利用GM(1,1)建模后的時(shí)間響應(yīng)式為:
![][36]
[36]: http://latex.codecogs.com/svg.latex?\varepsilon{(1)}(k+1)=(\varepsilon{(0)}(k_0)-\frac{\hat{u}}{\hat{a}})e^{[-a(k-k_0)]}+\frac{\hat{u}}{\hat{a}},{k}\ge{k_{0}}
則殘差尾段的模擬序列為:
![][37]
[37]: http://latex.codecogs.com/svg.latex?\hat{\varepsilon}{(0)}=(\hat{\varepsilon}{(0)}(k_0),\hat{\varepsilon}{(0)}(k_0+1),...,\hat{\varepsilon}{(0)}(n))
其中
![][39]
[39]: http://latex.codecogs.com/svg.latex?\hat{\varepsilon}{(0)}(k+1)=-\hat{a}(\hat{\varepsilon}{(0)}(k_0)-\frac{\hat{u}}{\hat{a}})e^{[-\hat{a}(k-k_0)]},k\ge{k_0}
如果用上式修正X^(1),則稱修正后的時(shí)間響應(yīng)式為
![][38]
[38]: http://latex.codecogs.com/svg.latex?\hat{\varepsilon}{(1)}(k+1)=\left{\begin{array}{ll}(x{(0)}(1)-\frac{u}{a})e{-ak}+\frac{u}{a},k\textless{k_0};(1)\\(x{(0)}(1)-\frac{u}{a})e{-ak}+\frac{u}{a}\pm\hat{a}(\varepsilon{(0)}(k_0)-\frac{\hat{u}}{\hat{a}})e^{[-\hat{a}(k-k_0)]},k\ge{k_0};(2)\end{array}\right.
因此為殘差修正GM(1,1)模型显拳,簡(jiǎn)稱殘差GM(1,1)

5. GM(n,h)模型

GM(n,h)模型是微分方程模型棚愤,可用于對(duì)描述對(duì)象做長(zhǎng)期、連續(xù)、動(dòng)態(tài)的反映宛畦。從原則上講瘸洛,某一灰色系統(tǒng)無(wú)論內(nèi)部機(jī)制如何,只要能將系統(tǒng)原始數(shù)據(jù)表示為原始時(shí)間序列次和,并保證值非負(fù)反肋,則可用GM模型對(duì)系統(tǒng)表示和預(yù)測(cè)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末斯够,一起剝皮案震驚了整個(gè)濱河市囚玫,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌读规,老刑警劉巖抓督,帶你破解...
    沈念sama閱讀 212,542評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異束亏,居然都是意外死亡铃在,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)碍遍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)定铜,“玉大人,你說(shuō)我怎么就攤上這事怕敬〈Э唬” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,021評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵东跪,是天一觀的道長(zhǎng)畸陡。 經(jīng)常有香客問(wèn)我,道長(zhǎng)虽填,這世上最難降的妖魔是什么丁恭? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,682評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮斋日,結(jié)果婚禮上牲览,老公的妹妹穿的比我還像新娘。我一直安慰自己恶守,他們只是感情好第献,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,792評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著兔港,像睡著了一般庸毫。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上押框,一...
    開(kāi)封第一講書(shū)人閱讀 49,985評(píng)論 1 291
  • 那天岔绸,我揣著相機(jī)與錄音理逊,去河邊找鬼橡伞。 笑死盒揉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的兑徘。 我是一名探鬼主播刚盈,決...
    沈念sama閱讀 39,107評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼挂脑!你這毒婦竟也來(lái)了藕漱?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,845評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤崭闲,失蹤者是張志新(化名)和其女友劉穎肋联,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體刁俭,經(jīng)...
    沈念sama閱讀 44,299評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡橄仍,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,612評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了牍戚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片侮繁。...
    茶點(diǎn)故事閱讀 38,747評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖如孝,靈堂內(nèi)的尸體忽然破棺而出宪哩,到底是詐尸還是另有隱情,我是刑警寧澤第晰,帶...
    沈念sama閱讀 34,441評(píng)論 4 333
  • 正文 年R本政府宣布碟摆,位于F島的核電站垛吗,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜泻云,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,072評(píng)論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望纱皆。 院中可真熱鬧募壕,春花似錦、人聲如沸纺非。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,828評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)烧颖。三九已至弱左,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間炕淮,已是汗流浹背拆火。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,069評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人们镜。 一個(gè)月前我還...
    沈念sama閱讀 46,545評(píng)論 2 362
  • 正文 我出身青樓币叹,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親模狭。 傳聞我的和親對(duì)象是個(gè)殘疾皇子颈抚,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,658評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容