国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于遺傳算法的BP神經(jīng)網(wǎng)絡(luò)時(shí)間序列預(yù)測(cè)算法及其應(yīng)用

2016-01-05 12:28楊同滿郭雨
電腦知識(shí)與技術(shù) 2015年31期
關(guān)鍵詞:時(shí)間序列BP神經(jīng)網(wǎng)絡(luò)遺傳算法

楊同滿 郭雨

摘要:對(duì)遺傳算法以及BP神經(jīng)網(wǎng)絡(luò)算法的基本原理進(jìn)行分析,并將具有良好全局搜索能力的遺傳算法與能以任意精度逼近非線性函數(shù)的神經(jīng)網(wǎng)絡(luò)算法相結(jié)合,利用遺傳算法的特點(diǎn)對(duì)BP算法進(jìn)行優(yōu)化,構(gòu)建基于遺傳算法的BP神經(jīng)網(wǎng)絡(luò)的時(shí)間序列預(yù)測(cè)算法。并用該算法對(duì)股市交易的收盤數(shù)據(jù)做預(yù)測(cè)。應(yīng)用結(jié)果表明,該方法具有穩(wěn)定性好,精確度高的特點(diǎn)。

關(guān)鍵詞:遺傳算法;BP神經(jīng)網(wǎng)絡(luò);時(shí)間序列;預(yù)測(cè);

中圖分類號(hào):TP18 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)31-0160-03

Application of Time Series Prediction based on the Genetic Algoriths and BP Neural Network

YANG Tong-man1,GUO Yu2

(1.College of Meteorology and Oceanography, PLA Univ. of Sci. & Tech. ,Nanjing 211101,China;2.Anhui University of Science and Technology,Huainan 232001,China)

Abstract: The basic principles of genetic algorithms and BP neural network algorithm for analysis, and will have good global search capability of genetic algorithm and can be arbitrary precision approach nonlinear function of neural network algorithm, genetic algorithms to optimize the characteristics of the BP algorithm , time series forecasting algorithm based on genetic algorithm BP neural network build. And use the algorithm to do the closing stock market trading data prediction. Application results show that this method has good stability, high precision characteristics.

Key words:genetic algorithm;BP neural network;time series;prediction

隨著經(jīng)濟(jì)、科學(xué)技術(shù)等的快速發(fā)展,每天來自商業(yè)、社會(huì)、科學(xué)、工程、醫(yī)學(xué)等各個(gè)領(lǐng)域的呈爆炸式增長(zhǎng)的數(shù)據(jù),注入我們的計(jì)算機(jī)網(wǎng)絡(luò)、萬維網(wǎng)以及各種數(shù)據(jù)存儲(chǔ)設(shè)備,并且這些數(shù)據(jù)集基本上都具有時(shí)變性的特征。因此,目前許多數(shù)據(jù)集中的數(shù)據(jù)都是以時(shí)間序列的數(shù)據(jù)形式存在的。在互聯(lián)網(wǎng)金融、科研項(xiàng)目、醫(yī)學(xué)、工程等各個(gè)領(lǐng)域,都存在著在歷史數(shù)據(jù)的基礎(chǔ)上預(yù)測(cè)未來的問題。至今,各行各業(yè)的研究人員已經(jīng)建立了許多的時(shí)間序列預(yù)測(cè)模型及算法,這些預(yù)測(cè)算法針對(duì)線性系統(tǒng)的時(shí)間序列預(yù)測(cè)具有很好的效果。但是,面對(duì)自然和社會(huì)現(xiàn)象中存在的大量的非線性系統(tǒng)問題,這些方法并不能有效地解決趨勢(shì)預(yù)測(cè)問題,解決這類問題效果欠佳[1]。而人工神經(jīng)網(wǎng)絡(luò)等智能理論的興起與發(fā)展,為時(shí)間序列預(yù)測(cè)提供了全新且有效的針對(duì)非線性預(yù)測(cè)的分析方法。BP神經(jīng)網(wǎng)絡(luò)算法是非循環(huán)多級(jí)網(wǎng)絡(luò)的訓(xùn)練算法,具有廣泛的適用性。但是BP算法也存在訓(xùn)練速度慢、高緯曲面上局部極小的問題,并且在隱含層網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)的選取上缺乏理論指導(dǎo),這一系列的問題,大大降低了預(yù)測(cè)的精確性[2]。遺傳算法是一種通過模擬自然進(jìn)化的過程,搜索出最優(yōu)解的方法,它具有良好的全局搜索能力的特點(diǎn)。因此,本文利用遺傳算法的特點(diǎn),通過對(duì)BP算法的初始權(quán)值以及閾值進(jìn)行優(yōu)化,以達(dá)到提高預(yù)測(cè)精確度的目的。

1基于遺傳算法的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)算法

1.1遺傳算法

遺傳算法(Genetic Algorithm)又叫基因進(jìn)化算法或進(jìn)化算法,它是一種啟發(fā)式的搜索算法。它能在搜索過程中,自動(dòng)的搜索全局并選擇優(yōu)良的解,并能夠自適應(yīng)的控制搜索過程以達(dá)到最優(yōu)解[3]。遺傳算法是具有“生成+檢驗(yàn)”的迭代過程的搜索算法[4]。其主要處理流程如下:

1) 首先對(duì)優(yōu)化問題的解進(jìn)行編碼;

2) 適應(yīng)度函數(shù),它主要依據(jù)優(yōu)化問題的目標(biāo)函數(shù)而定,是遺傳算法的關(guān)鍵;

3) 染色體的組合;

4) 變異。

1.2 BP神經(jīng)網(wǎng)絡(luò)模型及算法

1.2.1人工神經(jīng)網(wǎng)絡(luò)

人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks),是對(duì)人類的大腦系統(tǒng)的一個(gè)特定的描述,它是一個(gè)理論化的數(shù)學(xué)模型。它由大量的處理單元通過適當(dāng)?shù)姆绞交ヂ?lián)構(gòu)成,是一個(gè)大規(guī)模的非線性自適應(yīng)系統(tǒng)[5]。神經(jīng)網(wǎng)絡(luò)是通過對(duì)各種各樣的樣本,進(jìn)行反復(fù)的學(xué)習(xí)和訓(xùn)練,并不斷的調(diào)整各連接弧上的權(quán)值以及節(jié)點(diǎn)的閾值,直到各個(gè)權(quán)值及閾值達(dá)到理想的穩(wěn)定狀態(tài)后,神經(jīng)網(wǎng)絡(luò)就能正確的反映網(wǎng)絡(luò)的輸入樣本對(duì)輸出樣本的映射關(guān)系[6],它是通過這些不斷的訓(xùn)練來達(dá)到訓(xùn)練學(xué)習(xí)的目的的。

1.2.2 BP神經(jīng)網(wǎng)絡(luò)算法

BP神經(jīng)網(wǎng)絡(luò)算法,是非線性的連續(xù)變換函數(shù)的多層感知器的誤差向后傳播( ErrorBack Propagation,BP)算法。其基本思想是利用輸出層的誤差來估算輸出層的直接前導(dǎo)層的誤差,如此循環(huán)下去,將獲得所有其他各層的誤差估計(jì),形成將輸出端表現(xiàn)出的誤差沿著與輸入信號(hào)傳送相反的方向逐級(jí)向網(wǎng)絡(luò)的輸入端傳遞的過程[5]。目前此算法已經(jīng)在許多領(lǐng)域獲得了應(yīng)用[7]。BP神經(jīng)網(wǎng)絡(luò)算法能學(xué)習(xí)并存儲(chǔ)大量的輸入(input)-輸出(out)模式的映射關(guān)系,并且不需要在事前描述這種映射關(guān)系。BP算法的學(xué)習(xí)規(guī)則是使用最快速度的下降法,通過向后傳播,不斷的調(diào)整網(wǎng)絡(luò)各連接弧上的權(quán)值和節(jié)點(diǎn)的閾值,使得網(wǎng)絡(luò)的誤差平方和最小[3]。BP神經(jīng)網(wǎng)絡(luò)算法的網(wǎng)絡(luò)結(jié)構(gòu)包括輸入層,隱藏層和輸出層,如圖1所示。

圖1 BP算法的網(wǎng)絡(luò)結(jié)構(gòu)示意圖

假設(shè)有一個(gè)三層BP神經(jīng)網(wǎng)絡(luò),并設(shè)其輸入層的第i個(gè)節(jié)點(diǎn)上的輸入向量ai;其隱含層上的第j個(gè)節(jié)點(diǎn)的輸入向量sj,輸出向量bj;其輸出層上的第k個(gè)節(jié)點(diǎn)的輸入向量ck,輸出向量ok;設(shè)其輸入層、隱層和輸出層的節(jié)點(diǎn)數(shù)分別為m、l、n。設(shè)輸入層和隱層節(jié)點(diǎn)間的聯(lián)接權(quán)Xij,隱層和輸出層節(jié)點(diǎn)間的聯(lián)結(jié)權(quán)Mjk,隱層和輸出層的各單元的輸出閾值分別是Hj和Ck,輸出層上的第k個(gè)節(jié)點(diǎn)的期望輸出值tk,若激活函數(shù)為f(x),則:

[sj=i=1maiωij-θjj=1,2,...,l]

[bj=f(sj)j=1,2,...,l]

[ck=j=1lbjvjk-γkk=1,2,...,n]

[ok=f(ck)k=1,2,...,n]

誤差函數(shù)為:

[E=12k(tk-ok)2]

BP神經(jīng)網(wǎng)絡(luò)算法將按照誤差減小的最快的方向,也就是負(fù)梯度的方向,來改變各層之間的聯(lián)接權(quán),使得網(wǎng)絡(luò)慢慢地收斂。聯(lián)接權(quán)的增量的變化為:

[Δω=-η?E?ω]

其中[η]為學(xué)習(xí)率。

考慮到學(xué)習(xí)率的變化會(huì)影響網(wǎng)絡(luò)的性能[9],所以在權(quán)值調(diào)整公式中增加一個(gè)動(dòng)量項(xiàng),達(dá)到微調(diào)權(quán)值修正量防止振蕩的效果[3]。通過增加動(dòng)量項(xiàng)不僅僅考慮了誤差在梯度上的作用,同時(shí)也考慮了誤差曲面上變化的方向。

[Δwij(n+1)=ηδj(n+1)yi(n+1)+aΔwij(n)]

其中a是動(dòng)量因子,一般a[η](0,1)動(dòng)量項(xiàng)反映了以前的調(diào)整經(jīng)驗(yàn),對(duì)下一時(shí)刻的調(diào)整起到一定阻尼作用。因此可以減小振蕩的趨勢(shì),并促使聯(lián)接權(quán)值的變化方向?yàn)檎`差曲面底部的平均方向。這不僅能夠降低網(wǎng)絡(luò)對(duì)誤差曲面上存在的局部的細(xì)節(jié)敏感性,還能夠在一定程度上緩解局部存在極小的問題。

1.3 遺傳算法對(duì)BP算法的優(yōu)化

利用遺傳算法能夠在全局搜索的優(yōu)勢(shì),對(duì)BP算法的初始權(quán)值和閾值進(jìn)行優(yōu)化。其流程圖如圖2所示:

圖2 遺傳算法對(duì)BP算法優(yōu)化流程圖

(1) 將BP算法的初始權(quán)值和權(quán)值優(yōu)化,表示為編碼;隨機(jī)產(chǎn)生一組串長(zhǎng)為n的群體,為初始群體;

(2) 將編碼串譯碼成尋優(yōu)參數(shù),并計(jì)算其對(duì)應(yīng)的目標(biāo)函數(shù),從目標(biāo)函數(shù)中獲得各個(gè)體的適應(yīng)度值;

(3) 根據(jù)得到的各個(gè)體適應(yīng)度值,選擇產(chǎn)生適應(yīng)度值高的中間群體(父輩),并對(duì)其執(zhí)行復(fù)制、交叉和變異的操作,產(chǎn)生新的群體;

(4) 返回步驟(2),并反復(fù)執(zhí)行步驟(2)到步驟(4),使得群體能夠一代代的不斷的進(jìn)化,直到滿足條件,輸出最優(yōu)個(gè)體解為止。

2基于遺傳算法的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)算法的應(yīng)用

股票市場(chǎng)是一個(gè)高度復(fù)雜的非線性動(dòng)態(tài)系統(tǒng)[8],股價(jià)的波動(dòng)通常都具有很強(qiáng)的非線性的特征。股價(jià)的走勢(shì)及其波動(dòng)受制于各種政治、經(jīng)濟(jì)、心理等諸多因素,以至于人們往往難以精確的預(yù)測(cè)股價(jià)的走勢(shì)。而股票的價(jià)格,卻是每一位投資者最關(guān)心的問題。自從有了股票交易市場(chǎng),各種專家和投資資深者都在探索分析和預(yù)測(cè)股票價(jià)格走勢(shì)的方法,期望能夠準(zhǔn)確地對(duì)股價(jià)的走勢(shì)進(jìn)行預(yù)測(cè)。

基于以上因素,本實(shí)驗(yàn)選擇了2004年11月到2010年3月的股市交易數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù)。對(duì)2004年到2010年2月份的數(shù)據(jù)做模型訓(xùn)練,并對(duì)2010年3月份的數(shù)據(jù)進(jìn)行預(yù)測(cè)。本算法對(duì)股市交易數(shù)據(jù)中的收盤數(shù)據(jù)做了預(yù)測(cè)。從表(1)可以看出,該算法對(duì)3月份收盤數(shù)據(jù)的預(yù)測(cè)值與實(shí)際值的絕對(duì)誤差、相對(duì)誤差值都很小,精度很高。從圖(3)可以看出,預(yù)測(cè)數(shù)據(jù)與實(shí)際數(shù)據(jù)的趨勢(shì)很相近,幾乎重合。

表1 截取的5個(gè)樣本的預(yù)測(cè)結(jié)果

圖3 原始數(shù)據(jù)與預(yù)測(cè)數(shù)據(jù)趨勢(shì)圖

3 結(jié)論

本文針對(duì)非線性趨勢(shì)預(yù)測(cè)問題,在前人對(duì)BP算法存在的問題改進(jìn)的基礎(chǔ)上,利用遺傳算法具有的良好全局搜索能力的特點(diǎn),再次對(duì)BP神經(jīng)網(wǎng)絡(luò)算法進(jìn)行了優(yōu)化,并將該算法應(yīng)用于對(duì)股市交易收盤數(shù)據(jù)的預(yù)測(cè)。經(jīng)過檢驗(yàn),證實(shí)了該方法的有效性。

參考文獻(xiàn):

[1]曹星平,易東云,吳翊.基于神經(jīng)網(wǎng)絡(luò)的時(shí)間序列預(yù)測(cè)方法進(jìn)展[J].電腦與信息技術(shù), 1999(6).

[2]胡冰蕾.基于遺傳優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)算法的短期負(fù)荷預(yù)測(cè)[J]. 供用電,2010(6):42-44.

[3]任謝楠. 基于遺傳算法的BP神經(jīng)網(wǎng)絡(luò)的優(yōu)化研究及MATLAB仿真[D].天津師范大學(xué),2014.

[4]王宏剛,錢鋒.基于遺傳算法的前向神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)優(yōu)化[J],2007,14(4):387-190.

[5]蔣宗禮. 人工神經(jīng)網(wǎng)絡(luò)導(dǎo)論[M].北京:高等教育出版社, 2001.

[6]王成寶,任傳祥,尹唱唱,等. 基于遺傳算法的BP神經(jīng)網(wǎng)絡(luò)短時(shí)交通流預(yù)測(cè)[J]. 山東交通科技,2012(5):5-7.

[7]Chen Hai-bo,Muller S G.Use of sequential learning for short- term traffic flow forecasting[J].TransportationResearch,2000,7( 06) : 11 - 13.

[8]歐陽金亮,陸黎明. 綜合改進(jìn)BP神經(jīng)網(wǎng)絡(luò)算法在股價(jià)預(yù)測(cè)中的應(yīng)用[J].計(jì)算機(jī)與數(shù)字工程,2011(2):57-59.

[9] Zarei J, Poshtan J . Bearing fault detection using wavelet packet transform of induction motor stator current[J].Tribology International, 2007,40(5):763-769.

猜你喜歡
時(shí)間序列BP神經(jīng)網(wǎng)絡(luò)遺傳算法
基于自適應(yīng)遺傳算法的CSAMT一維反演
一種基于遺傳算法的聚類分析方法在DNA序列比較中的應(yīng)用
基于遺傳算法和LS-SVM的財(cái)務(wù)危機(jī)預(yù)測(cè)
基于時(shí)間序列的我國人均GDP分析與預(yù)測(cè)
復(fù)雜背景下的手勢(shì)識(shí)別方法
BP神經(jīng)網(wǎng)絡(luò)在軟件質(zhì)量評(píng)價(jià)中的應(yīng)用研究 
基于線性散列索引的時(shí)間序列查詢方法研究
BP神經(jīng)網(wǎng)絡(luò)算法在數(shù)值預(yù)報(bào)產(chǎn)品釋用中的應(yīng)用
基于組合模型的能源需求預(yù)測(cè)
基于改進(jìn)的遺傳算法的模糊聚類算法