基于粒子群優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)_第1頁
基于粒子群優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)_第2頁
基于粒子群優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)_第3頁
基于粒子群優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)基于粒子群優(yōu)化的神經(jīng)網(wǎng)絡(luò)【摘要】 人工神經(jīng)網(wǎng)絡(luò)的優(yōu)化學(xué)習(xí)是其研究中的一個(gè)重要課題。將粒子群優(yōu)化算法用于 BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí),將粒子優(yōu)化算法的全局搜索和BP神經(jīng)網(wǎng)的局部搜索相結(jié)合,并設(shè)計(jì)一網(wǎng)絡(luò)實(shí)例加以訓(xùn)練,達(dá)到了比較滿意的效果。【關(guān)鍵詞】 粒子群優(yōu)化算法 BP神經(jīng)網(wǎng)絡(luò) BP算法BP網(wǎng)絡(luò)(Back Propagation Network)是用途最為廣泛的一類神經(jīng)網(wǎng)絡(luò),具有很強(qiáng)的信息處理能力。但是,由于BP算法的基本思想是最小二乘法,采用的是梯度搜索技術(shù),難免存在收斂速度慢、

2、局部極小等問題。粒子群優(yōu)化算法(Particle Swarm Optimaziton,簡稱PSO )是由Kennedy J和Eberhart R C于1995年提出的一種優(yōu)化算法,源于對鳥群和魚群群體運(yùn)動(dòng)行為的研究。由于其容易理解,易于實(shí)現(xiàn),不要求目標(biāo)函數(shù)和約束條件是可微的,并能以較大概率求得全局最優(yōu)解,目前已在許多優(yōu)化問題中得到成功應(yīng)用。由于它具有并行計(jì)算的特點(diǎn),而且可以提高計(jì)算速度。因此,可以用粒子群優(yōu)化算法來優(yōu)化BP網(wǎng)絡(luò)。一、 BP神經(jīng)網(wǎng)絡(luò)及其算法BP網(wǎng)絡(luò)是一種具有三層或三層以上的單向傳播的多層前饋網(wǎng)絡(luò),其拓?fù)浣Y(jié)構(gòu)如圖1。圖1 拓?fù)浣Y(jié)構(gòu)圖BP算法的執(zhí)行步驟如下:(1)對各層權(quán)系數(shù)置一個(gè)較

3、小Wij的非零隨機(jī)數(shù)。(2)輸入一個(gè)樣本X=(X1,X2,xn),以及對應(yīng)期望輸出) Y=(y1,y2,yn)。(3)計(jì)算各層的輸出。對于第k 層第i個(gè)神經(jīng)元的輸出有:Uki=WijXk-1i,Xki=f(Uki)(一般為sigmoid函數(shù),即f(x)=1/(1-epx(-x)。(4)求各層的學(xué)習(xí)誤差dki。對于輸出層,有, k=m,dmi=Xmi(1-Xmi)(Xmi-Ymi)。對于其他各層,有dxi=Xki(1-Xki)Wijdk+1i。(5)修正權(quán)系數(shù)Wij。Wij (t+1)=Wij-dkiXk-1j。(6)當(dāng)求出各層權(quán)系數(shù)之后,可判別是否滿足要求。如果滿足要求,則算法結(jié)束;如果未滿足

4、要求,則返回(3)執(zhí)行。二、粒子群優(yōu)化算法粒子群優(yōu)化算法與其它進(jìn)化算法相類似,也采用“群體”與“進(jìn)化”的概念,所不同的是,粒子群算法不像其它進(jìn)化算法那樣對于個(gè)體使用進(jìn)化算子,而是將每個(gè)個(gè)體看作是在維搜索空間中的一個(gè)沒有質(zhì)量和體積的粒子,并在搜索空間中以一定的速度飛行,每個(gè)粒子的飛行速度由其本身的飛行經(jīng)驗(yàn)和群體的飛行經(jīng)驗(yàn)調(diào)整。假設(shè)在一個(gè)n維的目標(biāo)搜索空間中,有個(gè)粒子組成一個(gè)群落,其中第i個(gè)粒子在n維搜索空間中的位置表示為一個(gè)n維向量,每個(gè)粒子的位置代表一個(gè)潛在的解。設(shè)xi=(xi1,xi2,xin)為粒子的當(dāng)前位置;為粒子i當(dāng)前飛行的速度;pi=(pi1,pi2,pin)為粒子所經(jīng)歷的最好位置,

5、也就是粒子所經(jīng)歷過的具有最好適應(yīng)值的位置,稱為個(gè)體最優(yōu)位置;pg=(pg1,pg2,pgn)為整個(gè)粒子群迄今為止搜索到的最優(yōu)位置,稱為全局最優(yōu)位置。將帶入目標(biāo)函數(shù)就可以計(jì)算出其適應(yīng)值,根據(jù)適應(yīng)值的大小衡量的優(yōu)劣。每個(gè)粒子的位置和速度按下述2個(gè)公式進(jìn)行迭代。(1)vij(t+1)=wvij(t)+c1r1j(t)(pij(t)-xij(t)+c2r2j(t)(pgj(t)-xij(t)(2)xij(t+1)=xij(t)+vij(t+1)其中,下標(biāo)j表示粒子的第j維(j=1,2,n)表示第i個(gè)粒子(i=1,2,n)t表示第t代,c1 、c2 為加速度常數(shù),通常在02間取值,c1調(diào)節(jié)粒子向自身最優(yōu)

6、位置飛行的步長,c2調(diào)節(jié)粒子向全局最優(yōu)位置飛行的步長。r1jU(0,1),r(2j)(0,1)為兩個(gè)相互獨(dú)立的隨機(jī)函數(shù)。為了減小在進(jìn)化過程中粒子離開搜索空間的可能性,通常限定于一定范圍內(nèi),即vij-vmax;vmax。如果問題的搜索空間限定在-xmax,xmax內(nèi),則可設(shè)定。迭代中若粒子的位置和速度超出了對其限定的范圍,則取邊界值。代表第個(gè)粒子目前位置到其迄今為止搜索到的最優(yōu)位置的距離,pgj(t)-xij(t)代表第個(gè)粒子目前位置到整個(gè)粒子群迄今為止搜索到的最優(yōu)位置的距離。公式(1)用于計(jì)算粒子的速度,如當(dāng)前是t時(shí)刻,則粒子在t+1時(shí)刻速度是由當(dāng)前時(shí)刻的速度、當(dāng)前位置與該粒子的局部最優(yōu)位置的

7、距離、當(dāng)前位置與全局最優(yōu)位置的距離共同決定的;公式(2)用于計(jì)算粒子速度更新后的位置,它由粒子當(dāng)前位置和粒子更新后的速度決定。所有粒子的初始位置和速度隨機(jī)產(chǎn)生,然后根據(jù)上述2個(gè)公式進(jìn)行迭代,不斷變化它們的速度和位置,直到找到滿意解或達(dá)到最大的迭代次數(shù)為止(粒子的位置即是要尋找的解)。三、優(yōu)化實(shí)例相比BP算法具有較強(qiáng)的信息處理能力,但是它的收斂速度很慢,又難以避免的存在局部極小問題,而且BP網(wǎng)絡(luò)結(jié)構(gòu)的確定也缺乏有效的方法。粒子群算法計(jì)算簡單,它根據(jù)目標(biāo)函數(shù)計(jì)算適值,對問題依賴性?。欢帱c(diǎn)并行操作,有效的防止搜索過程收斂于局部最優(yōu)解;概率決定尋優(yōu)規(guī)則,采用高效啟發(fā)式搜索,而非盲目或隨機(jī)的搜索;具有并

8、行計(jì)算的特點(diǎn),可通過大規(guī)模并行計(jì)算提高計(jì)算速度,但是,從粒度計(jì)算角度來講,粒子群算法屬于粗粒度計(jì)算(盡管可細(xì)粒度實(shí)現(xiàn)),是一種全局搜索優(yōu)化,要得到精確解存有困難,有必要采用某種局部搜索方法彌補(bǔ)此不足,因此,我們決定用粒子群算法來優(yōu)化BP神經(jīng)網(wǎng)絡(luò),使粒子群算法和BP算法互為補(bǔ)償??梢圆捎脙?yōu)化神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)、算法和權(quán)值等,本例采用優(yōu)化權(quán)值的方式來訓(xùn)練一個(gè)1-4-1的BP神經(jīng)網(wǎng)絡(luò),使其逼近正弦函數(shù)。利用matlab6.5進(jìn)行編程。算法流程見圖2。參數(shù)設(shè)置如下:這個(gè)實(shí)例取學(xué)習(xí)因子c1=1.5,c2=2.5,慣性權(quán)重=1.4,將隨著迭代次數(shù)的增加而逐漸減小,當(dāng)小于0.4時(shí),將令=0.4,即不再減小,以保

9、證迭代后期粒子能夠在一定空間探索更好的解。本分別用標(biāo)準(zhǔn)粒子群優(yōu)化算法做2次實(shí)驗(yàn),它們的群體規(guī)模都是:50和100,其他參數(shù)不變,網(wǎng)絡(luò)訓(xùn)練50個(gè)單位時(shí)間,訓(xùn)練目標(biāo)為誤差小于0.008,其他參數(shù)采用默認(rèn)值。訓(xùn)練完畢得到網(wǎng)絡(luò)的訓(xùn)練情況:(1)Fpoch 200/561,MSE 0.006 978 29/0.009,Gradient 0.046 123 4/1e-006(優(yōu)化網(wǎng)絡(luò))。(2)Fpoch 561/561,MSE 0.026 228 2/0.008,Gradient 0.146 69 /1e-006(標(biāo)準(zhǔn)網(wǎng)絡(luò))。由圖3可看出,粒子群優(yōu)化的神經(jīng)網(wǎng)在191個(gè)單位時(shí)間時(shí)由于目標(biāo)誤差達(dá)到,停止訓(xùn)練,而BP神經(jīng)網(wǎng)在500個(gè)單位時(shí)間時(shí)誤差為0.,遠(yuǎn)沒有達(dá)到目標(biāo)誤差0.008。粒子群優(yōu)化的神經(jīng)網(wǎng)效果明顯好于標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)。單純用粒子群算法或BP算法訓(xùn)練神經(jīng)網(wǎng)絡(luò),都存在某些不足。本文將二者有機(jī)的結(jié)合,使其互為補(bǔ)償,取得了很好的訓(xùn)練效果。參考文

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論