賈偉 趙雪芬
摘要:針對現(xiàn)有BP神經(jīng)網(wǎng)絡(luò)選取權(quán)值和閾值不精確問題,采用改進(jìn)量子粒子群優(yōu)化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值.首先在改進(jìn)的量子粒子群優(yōu)化算法中,采用雙層多種群優(yōu)化策略提高整個種群的尋優(yōu)能力,然后在每個子群中使用混沌反向?qū)W習(xí)和Levy飛行增強(qiáng)子群尋優(yōu)能力,最后利用改進(jìn)的量子粒子群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值。實驗結(jié)果表明,改進(jìn)的量子粒子群優(yōu)化算法能有效提高BP神經(jīng)網(wǎng)絡(luò)的全局尋優(yōu)能力和收斂性,對數(shù)控高速銑削加工的銑削力進(jìn)行準(zhǔn)確預(yù)測。
關(guān)鍵詞:量子粒子群優(yōu)化;BP神經(jīng)網(wǎng)絡(luò);多種群;混沌反向?qū)W習(xí);Levy飛行
DOI:10.11907/rjdk.191011開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
中圖分類號:TP301文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2019)010-0030-06
0引言
BP神經(jīng)網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),它以預(yù)測誤差平方和最小作為目標(biāo),通過不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值逼近期望值。BP神經(jīng)網(wǎng)絡(luò)具有較好的自學(xué)能力、泛化能力和非線性映射能力,廣泛應(yīng)用于模式分類、農(nóng)業(yè)、信息監(jiān)測和圖像識別等領(lǐng)域。但是,BP神經(jīng)網(wǎng)絡(luò)選取初始權(quán)值和閾值具有一定的隨機(jī)性,可能產(chǎn)生非最優(yōu)的權(quán)值和閾值,導(dǎo)致BP神經(jīng)網(wǎng)絡(luò)的全局搜索能力較差,易陷入局部最優(yōu)解,而且收斂速度較慢,這些不足影響了其應(yīng)用效果。
為解決BP神經(jīng)網(wǎng)絡(luò)存在的問題,采用智能優(yōu)化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值的方法被提出,如Li等提出的量子粒子群優(yōu)化(Quantum-behaved Particle Swarm Opti-mization,QPSO)算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)(QPSO-BP),張明等提出的改進(jìn)的螢火蟲算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)(IEM-FA-BP),冷昕等提出采用改進(jìn)的人工蜂群算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)(IABC-BP)。但這些智能優(yōu)化算法在尋優(yōu)能力方面還存在不足,導(dǎo)致對BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值的優(yōu)化結(jié)果不夠理想。
OPSO算法是根據(jù)量子力學(xué)理論提出的一種具有量子行為的粒子群優(yōu)化算法。與其它智能優(yōu)化算法相比,OP-SO算法具有收斂速度快和參數(shù)設(shè)置較少的優(yōu)點,但是存在易早熟收斂和局部尋優(yōu)能力較差的缺陷。為解決該問題,本文提出一種雙層多種群的OPSO(DQPSO)算法,采用DQPSO算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)(DQPSO-BP),通過優(yōu)化權(quán)值和閾值,提高BP神經(jīng)網(wǎng)絡(luò)全局搜索能力和收斂速度。
期望值與網(wǎng)絡(luò)訓(xùn)練后的實際輸出值之間誤差由下式得到:
其中,Ok是樣本在第k個輸出節(jié)點的期望值。
如果期望值與網(wǎng)絡(luò)訓(xùn)練后的實際輸出值之間誤差較大,則進(jìn)行反向傳播,對各層的權(quán)值和閾值進(jìn)行調(diào)整。重復(fù)多次正向和反向傳播,直到網(wǎng)絡(luò)輸出的誤差減小到一定程度或達(dá)到最大訓(xùn)練次數(shù)為止。反向傳播過程中,根據(jù)學(xué)習(xí)速率η,隱含層的權(quán)值和閾值更新分別為:
為了選取最優(yōu)權(quán)值和閾值,本文采用改進(jìn)的量子粒子群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值,優(yōu)化步驟如下:
輸入:輸入層節(jié)點數(shù)A,隱含層節(jié)點數(shù)B,隱含層數(shù),輸出節(jié)點數(shù)Q,學(xué)習(xí)速率η,DQPSO算法的最大迭代次數(shù)Emax,單種群的最大迭代次數(shù)Rmax,子群大小W,混沌反向?qū)W習(xí)最大迭代次數(shù)Tmax
輸出:最優(yōu)權(quán)值和閾值
4實驗與分析
為驗證提出的BP神經(jīng)網(wǎng)絡(luò)DQPSO-BP在實際應(yīng)用中的有效性,本文將DQPSO-BP與現(xiàn)有的BP神經(jīng)網(wǎng)絡(luò)應(yīng)用于數(shù)控高速銑削加工的銑削力預(yù)測中,并對預(yù)測結(jié)果進(jìn)行分析和比較?,F(xiàn)有BP神經(jīng)網(wǎng)絡(luò)包括QPSO-BP、IEMFA-BP和IABC-BP,本文利用改進(jìn)的QPSO算法DMQPSO和GQPSO分別優(yōu)化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值,并將得到的BP神經(jīng)網(wǎng)絡(luò)DMQPSO-BP和GQPSO-BP應(yīng)用到數(shù)控高速銑削加工的銑削力預(yù)測中。
4.1實驗數(shù)據(jù)
樣本數(shù)據(jù)來自數(shù)控機(jī)床DMG HSC 75Linear的銑削加工,將主軸轉(zhuǎn)速、每齒進(jìn)給量、徑向切削深度和軸向切削深度作為實驗設(shè)計變量,主軸轉(zhuǎn)速取值分別為7000、8000、9000、10000、11000、12000、13000、14000,每齒進(jìn)給量取值分別為0.05、0.06、0.1、0.15、0.2、0.25、0.3、0.35,徑向切削深度取值分別為5、6、7、7.5、9、10、11、12,軸向切削深度取值分別為0.1、0.13、0.15、0.2、0.22、0.3、0.31、0.4。在4因素8水平情況下,通過正交實驗設(shè)計得到2000組實驗數(shù)據(jù)。
4.2實驗參數(shù)
在實驗中,BP神經(jīng)網(wǎng)絡(luò)涉及到的參數(shù)設(shè)置如下:A=4,Q=3,η=0.01,Emax=500,Rmax=300,W=30,Tmax=200。
通常情況下,為了避免隱含層節(jié)點數(shù)過多而出現(xiàn)過擬合問題,一些學(xué)者采用以下公式確定隱含層節(jié)點數(shù):
其中,輸入層的節(jié)點數(shù)為A,隱含層的節(jié)點數(shù)為B,輸出層的節(jié)點數(shù)為Q,α是1-10之間的常數(shù)。
根據(jù)銑削力預(yù)測模型,本文使用式(21)得到隱含層節(jié)點數(shù)B的取值范圍在4-14之間。分別選取10%、20%、30%、40%、50%、60%、70%、80%和90%的數(shù)據(jù)作為訓(xùn)練樣本,采用均方根誤差(Root Mean Square Error,RMSE)作為衡量預(yù)測銑削合力的指標(biāo),選取最佳隱含層節(jié)點數(shù),RMSE公式為:
采用不同比例訓(xùn)練數(shù)據(jù)得到的RMSE與隱含層節(jié)點數(shù)的關(guān)系如圖4所示,每種比例的訓(xùn)練數(shù)據(jù)獨立運行20次。當(dāng)隱含層的節(jié)點數(shù)為10時,不同比例的訓(xùn)練數(shù)據(jù)的RMSE都能取得最小值。因此,本文選取10作為最佳隱含層節(jié)點數(shù)。
5結(jié)語
在BP神經(jīng)網(wǎng)絡(luò)中,權(quán)值和閾值的初始值對尋優(yōu)能力及收斂性有著重要影響。為提高BP神經(jīng)網(wǎng)絡(luò)的優(yōu)化效果,本文提出一種使用雙層多種群策略的QPSO算法DQPSO,通過混沌反向?qū)W習(xí)和Levy飛行進(jìn)一步提高單個種群的尋優(yōu)能力。在對數(shù)控高速銑削加工的銑削力預(yù)測中,利用DOP-SO算法獲取BP神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值,實驗結(jié)果表明,本文提出的DOPSO算法能夠提高BP神經(jīng)網(wǎng)絡(luò)的全局尋優(yōu)能力和收斂性。后續(xù)工作會將本文提出的DQPSO-BP應(yīng)用于更多的實際問題中,進(jìn)一步提高DQPSO-BP的尋優(yōu)能力和收斂速度。