張新紅,雷素娟
(華僑大學(xué)數(shù)量經(jīng)濟(jì)研究院,福建泉州 362021)
用QCEA優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò)及其在股市預(yù)測(cè)的應(yīng)用
張新紅,雷素娟
(華僑大學(xué)數(shù)量經(jīng)濟(jì)研究院,福建泉州 362021)
采用量子克隆進(jìn)化算法(QCEA)對(duì)徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)的參數(shù)進(jìn)行優(yōu)化學(xué)習(xí),并通過(guò)對(duì)不同樣本容量和量子旋轉(zhuǎn)角的實(shí)驗(yàn),將量子克隆進(jìn)化算法優(yōu)化的徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)應(yīng)用于上證指數(shù)的預(yù)測(cè)分析中.仿真實(shí)驗(yàn)表明:經(jīng)量子克隆進(jìn)化算法優(yōu)化的徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)將全局搜索和局部尋優(yōu)有機(jī)地結(jié)合起來(lái),收斂速度快、種群多樣性好,并可有效抑制早熟現(xiàn)象.
徑向基函數(shù);神經(jīng)網(wǎng)絡(luò);量子克隆進(jìn)化算法;股市;預(yù)測(cè)
徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)是20世紀(jì)80年代末提出的一種具有全局收斂的非線性學(xué)習(xí)算法的前饋網(wǎng)絡(luò),已被廣泛應(yīng)用于時(shí)間序列分析、模式識(shí)別、非線性控制和圖像處理等領(lǐng)域.在RBF神經(jīng)網(wǎng)絡(luò)得到日益廣泛應(yīng)用的同時(shí),也暴露出一些急需解決的問(wèn)題及難點(diǎn).許多研究通過(guò)引進(jìn)進(jìn)化算法來(lái)改進(jìn)RBF神經(jīng)網(wǎng)絡(luò)[1],使其能更好地逼近所要求解的問(wèn)題,而且從理論上也可以證明,進(jìn)化算法能在概率的意義上以隨機(jī)的方式尋求到問(wèn)題的最優(yōu)解[2-4].雖然在進(jìn)化過(guò)程中,進(jìn)化算法盡量維持個(gè)體多樣性和群體收斂性之間的平衡,但是,它沒(méi)有利用進(jìn)化中未成熟的優(yōu)良子群體所提供的信息,收斂速度很慢.如果能在進(jìn)化中引入記憶和定向?qū)W習(xí)的機(jī)制,增強(qiáng)算法的智能性,則可提高搜索效率,解決進(jìn)化算法中的早熟和收斂速度問(wèn)題.本文將進(jìn)化算法和量子理論相結(jié)合,引入量子克隆進(jìn)化算法(QCEA)對(duì)RBF神經(jīng)網(wǎng)絡(luò)的參數(shù)進(jìn)行優(yōu)化.
1.1 量子克隆進(jìn)化算法
量子克隆進(jìn)化算法是結(jié)合克隆算子和量子計(jì)算[5-6]的機(jī)理提出來(lái)的.它建立在量子態(tài)矢量表達(dá)的基礎(chǔ)上,將全局搜索和局部尋優(yōu)有機(jī)地結(jié)合.另外,由于克隆算子的特殊結(jié)構(gòu)及量子疊加態(tài)的結(jié)合,它能夠避免種群陷于一個(gè)局部最優(yōu)解,有效防止早熟.
量子克隆進(jìn)化算法有如下8個(gè)步驟:(1)初始化進(jìn)化代數(shù),t=0;(2)初始化種群Q(t),αti=1/2,初始時(shí)以等概率出現(xiàn);(3)由Q(t)生成P(t),不同的編碼方式采用不同的觀察方式,文中采用進(jìn)制編碼; (4)評(píng)價(jià)種群P(t)的親合度,保存最優(yōu)解;(5)進(jìn)行停機(jī)條件判斷,當(dāng)滿足停機(jī)條件時(shí),輸出當(dāng)前最優(yōu)個(gè)體,算法結(jié)束,否則繼續(xù);(6)克隆Q(t),生成Q′(t);(7)對(duì)Q′(t)進(jìn)行量子變異,生成Q″(t);(8)通過(guò)選擇壓縮Q″(t),生成新個(gè)體Q(t),當(dāng)t=t+1,轉(zhuǎn)到步驟(3).
1.2 RBF神經(jīng)網(wǎng)絡(luò)優(yōu)化的實(shí)現(xiàn)
基于Matlab的徑向函數(shù)網(wǎng)絡(luò),一般采用new rbe()和new rb()函數(shù)設(shè)計(jì)網(wǎng)絡(luò).應(yīng)用new rbe()函數(shù)設(shè)計(jì)網(wǎng)絡(luò)時(shí),徑向基神經(jīng)元的數(shù)目與輸入向量的個(gè)數(shù)相等,在輸入向量較多的情況下,則需要很多的神經(jīng)元.new rb()函數(shù)能更有效地進(jìn)行網(wǎng)絡(luò)設(shè)計(jì),其每1次循環(huán)只產(chǎn)生1個(gè)神經(jīng)元,而每增加1個(gè)徑向基神經(jīng)元,都能最大程度地降低誤差.如果未能達(dá)到精度要求則繼續(xù)增加神經(jīng)元,直至滿足精度要求.
基于量子克隆進(jìn)化算法的 RBF神經(jīng)網(wǎng)絡(luò)是基于new rb()函數(shù)的,網(wǎng)絡(luò)中心ci引入隨機(jī)機(jī)制,寬度σ=log(-0.5)/sp與原算法相同,每1次循環(huán)只產(chǎn)生1個(gè)神經(jīng)元.量子克隆進(jìn)化算法優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)流程,如圖1所示.
1.2.1 染色體編碼 染色體是用來(lái)表示所求問(wèn)題的候選解.文中用它表示1個(gè)RBF神經(jīng)網(wǎng)絡(luò)及其連接權(quán)值,采用量子比特為染色體編碼.在量子進(jìn)化算法中,最小的信息單元為1個(gè)量子比特.1個(gè)量子比特的狀態(tài)可取值為0或1,或任一疊加態(tài),可以表示為|Ψ〉=α|0〉+β|1〉.其中:α,β為相應(yīng)狀態(tài)出現(xiàn)概率的兩個(gè)復(fù)數(shù)(滿足|α|2+|β|2=1);|α|2,|β|2分別為量子比特處于狀態(tài)0和狀態(tài)1的概率.
設(shè)第t代量子染色體的群體為Q(t)=….其中:n為群體大小;t為進(jìn)化代數(shù)為第t代種群中的第j個(gè)染色體.因此,定義
圖1 RBF神經(jīng)網(wǎng)絡(luò)優(yōu)化流程圖Fig.1 Flow to op timize RBF neural network
式(1)中:m為量子位數(shù)目,即量子染色體的長(zhǎng)度.
1.2.2 初始化權(quán)種群體 在初始化群體Q(t)中,量子染色體都被初始化為常數(shù)(1/2),這意味著1個(gè)量子染色體以相同的概率表示了所有可能的線性疊加態(tài).根據(jù)中概率幅的取值情況構(gòu)造長(zhǎng)度為m的二進(jìn)制串即產(chǎn)生[0,1]的1個(gè)隨機(jī)數(shù)R,若R大于,則對(duì)應(yīng)位置取值為1;否則,取值為0,由此得到二進(jìn)制串構(gòu)成的種群為P(t);然后,評(píng)價(jià)P(t)中的各個(gè)個(gè)體,并保留最優(yōu)個(gè)體b.
1.2.3 適應(yīng)度計(jì)算 適應(yīng)度是描述個(gè)體性能的主要指標(biāo).將各個(gè)染色體應(yīng)用于給定的RBF網(wǎng)絡(luò)結(jié)構(gòu)中,對(duì)樣本集進(jìn)行學(xué)習(xí),采用網(wǎng)絡(luò)的實(shí)際輸出值和期望輸出值之間的誤差平方和的倒數(shù)作為適應(yīng)度評(píng)價(jià)函數(shù),即
1.2.4 克隆運(yùn)算 對(duì)當(dāng)代初始群體Q(t)中的染色體進(jìn)行克隆,生成1個(gè)臨時(shí)的克隆群體Q′(t).即對(duì)于每1個(gè)二進(jìn)制串解選擇克隆比例為5.隨機(jī)產(chǎn)生1個(gè)數(shù)r(k),將其與1/m進(jìn)行比較,如果r(k)小于1/m,則bi=1-bi,否則不變.
1.2.5 量子變異 變異可以提高群體中染色體的多樣性,擴(kuò)大搜索的范圍,尋找更優(yōu)秀的個(gè)體,提高適應(yīng)度.為了避免初始群體中優(yōu)秀的染色體受到破壞,變異只作用于克隆后的臨時(shí)群體Q′(t).
用量子旋轉(zhuǎn)門(mén)的旋轉(zhuǎn)角度可以表征量子染色體中的變異操作,進(jìn)而方便地在變異中加入最優(yōu)個(gè)體的信息,加快算法收斂.因此,文中利用量子門(mén)變異來(lái)進(jìn)化量子染色體,對(duì)克隆產(chǎn)生的二進(jìn)制串與最優(yōu)解二進(jìn)制串進(jìn)行比較,確定變異方向,設(shè)計(jì)量子旋轉(zhuǎn)門(mén)[7]為
式(3)中:(αi,βi)為第i個(gè)量子位;θi為旋轉(zhuǎn)角度.將新生成的|αi|2與一隨機(jī)數(shù)進(jìn)行比較,如果該隨機(jī)數(shù)大于|αi|2,則取值為1;否則,取值為0,產(chǎn)生新的克隆群體Q″(t).
1.2.6 克隆選擇 將各二進(jìn)制串解碼,計(jì)算適應(yīng)度,評(píng)價(jià)種群選出最優(yōu)解.
1.2.7 算法終止條件 常使用的算法終止的標(biāo)準(zhǔn)有3種:收斂標(biāo)準(zhǔn)、時(shí)間標(biāo)準(zhǔn)、精度標(biāo)準(zhǔn).文中采用精度標(biāo)準(zhǔn).
2.1 基本步驟
選取股票的每日開(kāi)盤(pán)價(jià)、最高價(jià)、最低價(jià)、收盤(pán)價(jià)、成交金額作為研究對(duì)象,對(duì)股票市場(chǎng)進(jìn)行分析.
2.1.1 樣本數(shù)據(jù)的選取 網(wǎng)絡(luò)所需樣本的數(shù)量主要由兩個(gè)因素決定:一是映射關(guān)系的復(fù)雜程度;二是數(shù)據(jù)中的噪音.映射關(guān)系越復(fù)雜,所需的訓(xùn)練樣本就越多.樣本的數(shù)目將隨著噪音的增大而增加.
通常情況下,選擇樣本遵循如下4點(diǎn)原則[8]:(1)樣本足夠多;(2)樣本要求準(zhǔn)確;(3)樣本具有代表性;(4)樣本分布均勻.根據(jù)以上原則,選取上證2006年6月26日至2006年11月17日共100 d的數(shù)據(jù)作為訓(xùn)練及測(cè)試樣本.
2.1.2 原始數(shù)據(jù)的歸一化處理 系統(tǒng)是根據(jù)第td的數(shù)據(jù)來(lái)預(yù)測(cè)第t+1 d的收盤(pán)價(jià),原始數(shù)據(jù)值的大小往往相差很大,必須對(duì)原始數(shù)據(jù)進(jìn)行歸一化處理.文中采用的算法為
式中:Xmax,Xmin分別為原始數(shù)據(jù)的最大值和最小值.
2.1.3 輸入輸出變量的確定及網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu) 選取第t天的開(kāi)盤(pán)價(jià)、最高價(jià)、最低價(jià)、收盤(pán)價(jià)、成交金額做為網(wǎng)絡(luò)輸入,第t+1 d的收盤(pán)價(jià)做為網(wǎng)絡(luò)輸出.因此,建立的RBF神經(jīng)網(wǎng)絡(luò)的輸入節(jié)點(diǎn)數(shù)為5,輸出節(jié)點(diǎn)數(shù)為1,隱層節(jié)點(diǎn)數(shù)在實(shí)驗(yàn)中調(diào)整.
2.1.4 染色體長(zhǎng)度的確定 染色體的長(zhǎng)度取決于求解的精度[9].設(shè)定求解精度到5位小數(shù),由于區(qū)間[-1,1]長(zhǎng)度為2,必須分為2×106等分.因?yàn)?31 072=217<2×106≤118=262 144,所以,編碼的二進(jìn)制串長(zhǎng)至少需要18位.
2.2 上證收盤(pán)指數(shù)的仿真實(shí)驗(yàn)
確定量子克隆進(jìn)化算法參數(shù):種群規(guī)模為10~80;克隆比例為5;染色體長(zhǎng)度為18;每代種群最大迭代數(shù)為100.
經(jīng)量子克隆進(jìn)化算法優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò),其收斂速度及精度受樣本大小及量子旋轉(zhuǎn)角Δθ的影響較大,所以,分別以不同的樣本容量及不同的旋轉(zhuǎn)角的變異策略做實(shí)驗(yàn).
2.2.1 樣本大小的試驗(yàn) 為了確定最優(yōu)的樣本容量,選取大小不同的樣本進(jìn)行實(shí)驗(yàn).選擇2006年6月26日至2006年10月20日之間80個(gè)樣本作訓(xùn)練集,以及2006年10月23日至2006年11月17日之間的20 d的樣本為檢驗(yàn)集時(shí),擬合效果最佳.通過(guò)對(duì)不同樣本容量的實(shí)驗(yàn),發(fā)現(xiàn)改進(jìn)后的RBF神經(jīng)網(wǎng)絡(luò)克服了原來(lái)網(wǎng)絡(luò)容易陷入局部最小的缺點(diǎn),增強(qiáng)了網(wǎng)絡(luò)的泛化能力,提高了網(wǎng)絡(luò)的訓(xùn)練誤差精度.
2.2.2 量子旋轉(zhuǎn)角的實(shí)驗(yàn) 在量子克隆進(jìn)化算法中,量子旋轉(zhuǎn)角的取值會(huì)影響網(wǎng)絡(luò)模型的收斂速度及精度,因此,選擇不同量子旋轉(zhuǎn)角模型進(jìn)行實(shí)驗(yàn).綜合網(wǎng)絡(luò)的訓(xùn)練誤差、預(yù)測(cè)結(jié)果及預(yù)測(cè)準(zhǔn)確度,得到能更好地?cái)M合上證指數(shù)數(shù)據(jù)變化規(guī)律的量子旋轉(zhuǎn)角策略,如表1所示.
表1 選擇量子旋轉(zhuǎn)角策略Tab.1 Strategy of selecting quantum rotation angle
旋轉(zhuǎn)角度θi的值由s(αiβi)Δθi給出.其中,Δθi控制著算法收斂的速度,s(αiβi)決定了向全局最優(yōu)解收斂的方向.根據(jù)以上測(cè)試,選取訓(xùn)練樣本大小為80,量子旋轉(zhuǎn)角如表1所示.
為了更好地說(shuō)明量子疊加態(tài)的引入能更好地改進(jìn)RBF神經(jīng)網(wǎng)絡(luò),將原始new rb()函數(shù)RBF神經(jīng)網(wǎng)絡(luò)、用克隆遺傳算法改進(jìn)的RBF神經(jīng)網(wǎng)絡(luò)和用量子克隆進(jìn)化算法優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò)的仿真結(jié)果進(jìn)行比較,如圖2~4所示.圖中:F為精度,D為樣本點(diǎn).
圖2 原始new rb()函數(shù)RBF神經(jīng)網(wǎng)絡(luò)的仿真結(jié)果Fig.2 Simulation results of RBF neural network based on new rb()function
圖3 用克隆遺傳算法改進(jìn)的RBF神經(jīng)網(wǎng)絡(luò)的仿真結(jié)果Fig.3 Sim ulation results of RBF neural netwo rk op timized by clonal evolutionary algo rithm
圖4 用量子克隆進(jìn)化算法優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò)的仿真結(jié)果Fig.4 Simulation resultsof RBF neural netwo rk op timized by quantum clonal evolutionary algorithm
通過(guò)對(duì)圖2~4的比較,發(fā)現(xiàn)用克隆遺傳算法改進(jìn)的RBF神經(jīng)網(wǎng)絡(luò)已經(jīng)很大程度地提高了網(wǎng)絡(luò)訓(xùn)練的誤差精度,克服了原RBF神經(jīng)網(wǎng)絡(luò)陷入局部最小的缺點(diǎn).它極大地縮小了網(wǎng)絡(luò)的預(yù)測(cè)誤差范圍,由原來(lái)的5個(gè)數(shù)量級(jí)的誤差減小在(-6 000,9 000)之內(nèi).用量子克隆進(jìn)化算法優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò)則在用克隆遺傳算法改進(jìn)的RBF神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上引進(jìn)量子染色體,加大了種群變異的多樣性,進(jìn)一步提高了網(wǎng)絡(luò)的誤差精度,把預(yù)測(cè)誤差范圍控制在更小的范圍(1 000,2 200)之內(nèi).
通過(guò)引入量子克隆進(jìn)化算法來(lái)優(yōu)化RBF神經(jīng)網(wǎng)絡(luò),并應(yīng)用在上證收盤(pán)指數(shù)的仿真實(shí)驗(yàn),可得出以下幾點(diǎn)結(jié)論.
(1)RBF神經(jīng)網(wǎng)絡(luò)對(duì)訓(xùn)練樣本可以以0誤差逼近,但對(duì)訓(xùn)練樣本外的數(shù)據(jù)進(jìn)行預(yù)測(cè)的能力很不理想.量子克隆進(jìn)化算法的引入改進(jìn)了這一特性,把網(wǎng)絡(luò)預(yù)測(cè)誤差范圍控制在一定的范圍內(nèi);
(2)算法的各種參數(shù)要綜合起來(lái)考慮其對(duì)網(wǎng)絡(luò)的影響,即要有快速收斂的能力,又要避免“過(guò)擬合”現(xiàn)象的出現(xiàn).
(3)用量子克隆進(jìn)化算法優(yōu)化的RBF神經(jīng)網(wǎng)絡(luò)具有比傳統(tǒng)RBF神經(jīng)網(wǎng)絡(luò)更好地逼近性能,且該算法在處理股票數(shù)據(jù)這種非線性時(shí)間序列的預(yù)測(cè)方面,具有很好的推廣能力和應(yīng)用價(jià)值.
[1]杜海峰,焦李成,公茂果,等.免疫克隆選擇算法與進(jìn)化算法[C]∥中國(guó)人工智能學(xué)會(huì)第10屆學(xué)術(shù)年會(huì).廣州:[s. n.],2003:694-699.
[2]BEN TLEY P J,WA KEFIELD J P.Overview of ageneric evolutionary design system s[EB/OL].[1996-05-22].http://www biocle.nuee.nagoy-u.ac.jp/WEC2/.
[3]李敏強(qiáng).遺傳算法的基本理論與應(yīng)用[M].北京:科學(xué)出版社,2002.
[4]BACK T,SCHWEFEL H P.An overview of evolutionary algorithms for parameter optimization[J].Evolutionary Computation,1993,1(1):1-24.
[5]焦李成.免疫優(yōu)化計(jì)算、學(xué)習(xí)與識(shí)別[M].北京:科學(xué)出版社,2006.
[6]李承祖.量子通信和量子計(jì)算[M].長(zhǎng)沙:國(guó)防科技大學(xué)出版社,2004.
[7]王凌.量子進(jìn)化算法研究進(jìn)展[J].控制與決策,2008,23(12):1321-1326.
[8]張新紅.非參數(shù)估計(jì)的小波網(wǎng)絡(luò)經(jīng)濟(jì)預(yù)測(cè)模型[J].華僑大學(xué)學(xué)報(bào):自然版科學(xué)版,2003,24(1):105-108.
[9]王小平,曹立明.遺傳算法:理論、應(yīng)用與軟件實(shí)現(xiàn)[M].西安:西安交通大學(xué)出版社,2002.
(責(zé)任編輯:錢(qián)筠英文審校:司福成)
Optimized RBF Neural Network and Application in Stock Market Based on Quan tum Clonal
ZHANG Xin-hong,LEISu-juan
(Institute of Mathematical Economics,Huaqiao University,Quanzhou 362021,China)
The paper adop ts quantum clonal evolutionary algorithm(QCEA)to op timize the data of radial basis function (RBF)neural network.Based on the practice of testing different samples and quantum rotation angle,the RBF neural network op timized by the QCEA can be applied to analyse the Shanghai stock composite index.The simulation results indicate that the RBF neural network op timized by QCEA can realize the full searching and partial searching for the best, which has a high convergence speed and good group diversity and avoids the premature convergence to some degree.
radial basis function;neural network;quantum clonal evolutionary algorithm;stock market;forecasting
TP 183;F 830.91
A
1000-5013(2011)03-0338-05
2010-11-12
張新紅(1966-),女,教授,主要從事神經(jīng)網(wǎng)絡(luò)理論及其在經(jīng)濟(jì)建模中的應(yīng)用的研究.E-mail:zxhhcz@hqu. edu.cn.
國(guó)務(wù)院僑辦科研基金資助項(xiàng)目(04QSK05);華僑大學(xué)高層次人才科研啟動(dòng)項(xiàng)目(05BS104)