荀錦錦+王建南+張奎
摘 要:針對BP神經(jīng)網(wǎng)絡(luò)的缺陷容易導(dǎo)致分類器精度低的問題,給出了改進(jìn)粒子群算法。該算法在標(biāo)準(zhǔn)粒子群算法中融入混沌優(yōu)化算法、動態(tài)慣性權(quán)重和動態(tài)學(xué)習(xí)因子。最后通過實(shí)驗(yàn),將梯度下降法和改進(jìn)粒子群算法構(gòu)建的神經(jīng)網(wǎng)絡(luò)分類器對比。實(shí)驗(yàn)結(jié)果表明,改進(jìn)粒子群算法得到的分類器效果更優(yōu),精度更高。
關(guān)鍵詞:改進(jìn)粒子群算法;BP神經(jīng)網(wǎng)絡(luò);分類
粒子群算法(PSO Particle Swarm Optimization)是在1995年由Kennedy和Eberhart提出的一種進(jìn)化算法[1]。粒子群算法通過算法的融合、改進(jìn)參數(shù)等可以獲得較好的全局搜索能力?;煦鐑?yōu)化算法是非線性系統(tǒng)較為普遍的現(xiàn)象,其基本思想是進(jìn)行混沌變量到優(yōu)化變量取值空間的線性映射[2,6]。利用混沌優(yōu)化算法的特性可以使粒子群算法避免早熟現(xiàn)象,BP神經(jīng)網(wǎng)絡(luò)可以用來非線性分類,但BP算法存在容易陷入局部極小值等缺陷[3]1。為此,本文給出算法融合構(gòu)建神經(jīng)網(wǎng)絡(luò)分類器,同時對方法進(jìn)行了仿真實(shí)驗(yàn)。仿真結(jié)果表明,基于改進(jìn)粒子群算法的BP神經(jīng)網(wǎng)絡(luò)可以收斂到最優(yōu)解,并且分類效果較好。
1 標(biāo)準(zhǔn)粒子群算法和BP神經(jīng)網(wǎng)絡(luò)
1.1 標(biāo)準(zhǔn)粒子群算法
粒子群算法是通過局部最優(yōu)的迭代達(dá)到全局最優(yōu)收斂。1998年,Shi等人提出了慣性權(quán)重[4]。帶有慣性權(quán)重的PSO算法被稱為標(biāo)準(zhǔn)粒子群算法。標(biāo)準(zhǔn)粒子群算法的更新公式為:
(1)
(2)
式中:vid為粒子的速度,xid為粒子的位置,t為迭代次數(shù),ω為慣性權(quán)重系數(shù),c1、c2為加速常量,Pid為個體極值,pgd為全局極值。
從公式(1)和公式(2)可知,每個粒子在搜索時,不僅參自身思考,還參考了全局影響。這樣,就可以增強(qiáng)全局搜索能力。
1.2 BP神經(jīng)網(wǎng)絡(luò)
BP神經(jīng)網(wǎng)絡(luò)采用梯度下降法,通過均值誤差反向傳播來不斷調(diào)整神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值,最終實(shí)現(xiàn)誤差滿足預(yù)設(shè)范圍或者學(xué)習(xí)次數(shù)。采用變學(xué)習(xí)率的方法提高學(xué)習(xí)速率,訓(xùn)練開始時采用大的學(xué)習(xí)速率以跳過局部極值,在訓(xùn)練后期以較小的學(xué)習(xí)速率達(dá)到全局極值。變化率符號確定法是一種較常用的方法[5]2,具體表達(dá)式為:
(3)
(4)
式中,λ>1,m0、m1是選擇的常數(shù)。
2 改進(jìn)PSO優(yōu)化BP神經(jīng)網(wǎng)絡(luò)
2.1 初始權(quán)值的確定
為使提高搜索的效率,應(yīng)使初始粒子均勻分布。為此,本文引入混沌優(yōu)化算法。Kent混沌方程為[2,6,7]1:
(5)
其中,ζ為常數(shù);z為混沌序列。
2.2 算法實(shí)現(xiàn)
改進(jìn)粒子群算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的具體步驟如下:
(1)確定BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),根據(jù)式(5)產(chǎn)生初始粒子群。
(2)根據(jù)適應(yīng)度函數(shù)計(jì)算適應(yīng)度值,確定每個粒子的個體極值,并產(chǎn)生全局極值。
(3)利用公式(1)、公式(2)更新粒子的速度和位置。
(4)均方誤差是否已經(jīng)小于設(shè)定精度或迭代次數(shù)是否已經(jīng)達(dá)到最大迭代次數(shù)。若否,則轉(zhuǎn)回到(2)。
(5)輸出使全局極值最小的粒子,即為BP神經(jīng)網(wǎng)絡(luò)最佳的權(quán)值和閾值。
3 仿真實(shí)驗(yàn)與實(shí)驗(yàn)結(jié)果分析
實(shí)驗(yàn)采用UCI數(shù)據(jù)庫中的Iris植物樣本數(shù)據(jù),利用訓(xùn)練好的網(wǎng)絡(luò)對測試樣本進(jìn)行Matlab仿真實(shí)驗(yàn),仿真結(jié)果如圖1、圖2所示。由圖1和圖2可知,在實(shí)驗(yàn)環(huán)境相同的情況下POS—BP神經(jīng)網(wǎng)絡(luò)分類器的分類能力好于BP神經(jīng)網(wǎng)絡(luò)分類器。
4 結(jié)論
為了解決BP算法局部極值問題,引入了具有全局搜索能力的粒子群算法;初始粒子對粒子群算法的性能有著密切的聯(lián)系,通過混沌算法來生成初始粒子,獲得分布均勻的初始粒子群;粒子群算法對參數(shù)有著一定的要求,根據(jù)需求引入動態(tài)參數(shù)。試驗(yàn)結(jié)果表明,改進(jìn)POS優(yōu)化的BP網(wǎng)絡(luò)分類器分類正確率較高。
參考文獻(xiàn)
[1]KENNEDY J, EBERHART R C. Particle swarm optinization[C]//Proceedings of IEEE International Conference On Neural Networks Perth, Australia, 1995.
[2]Yang D X, Liu Z j, Zhou J L. Chaos optimization algorithms based on chaotic maps with different probability distribution and search speed for global optimization[J]. Communications in Nonlinear Science and Nunerical Simulation, 2014, 19(4):1229-1246.
[3]孫增圻,鄧志東,張?jiān)倥d.智能控制理論與技術(shù)[M].2版.北京:清華大學(xué)出版社,2011.9:138-139.
[4]SHIY H, EBERHART R C. Amodified particle swarmoptimizer[C]// Proceedings of IEEE International Conference on Evolutionary Computation. Piscataway, NJ,1998:69-73.
[5]孫即祥.現(xiàn)代模式識別[M].2版.北京:高等教育出版社,2008,10::412-413,409-411.
[6]劉麗軍,李捷,蔡金綻.基于強(qiáng)引導(dǎo)粒子群與混沌優(yōu)化的電力系統(tǒng)無功優(yōu)化[J].電力自動化設(shè)備,2010,30(4):71-75..
[7]張彩宏,潘廣貞.融合禁忌搜索的混合果蠅優(yōu)化算法[J].計(jì)算機(jī)工程與設(shè)計(jì),2016,37(4):908-909.
[8]丁騰飛,曹云俠.基于改進(jìn)POS優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的變壓器故障診斷[J].制造業(yè)自動化,2015,37(5):83.endprint