高 天 龔平順
(安徽理工大學(xué)電氣與信息工程學(xué)院,安徽 淮南 232000)
隨著科技的進(jìn)步,神經(jīng)網(wǎng)絡(luò)已逐漸成為當(dāng)前一大熱點(diǎn),如人工神經(jīng)網(wǎng)絡(luò)[1]、概率神經(jīng)網(wǎng)絡(luò)[2]、決策樹[3]等。由于神經(jīng)網(wǎng)絡(luò)模型架構(gòu)存在缺陷,導(dǎo)致單一神經(jīng)網(wǎng)絡(luò)存在著上限,而將多種神經(jīng)網(wǎng)絡(luò)進(jìn)行融合,成為一種新的解決方案。林培杰等[4]通過支持向量機(jī)來實(shí)現(xiàn)分類,并選取粒子群算法改進(jìn)相關(guān)參數(shù);王元章等[5]對(duì)L-M和BP神經(jīng)網(wǎng)絡(luò)算法進(jìn)行融合,并完善BP算法的參數(shù);秦瓊等[6]、林濤等[7]、章勇高等[8]將極限學(xué)習(xí)機(jī)應(yīng)用于新能源的功率預(yù)測(cè)中;任曉琳等[9]將蝙蝠算法與核極限學(xué)習(xí)機(jī)進(jìn)行結(jié)合,從而優(yōu)化KELM參數(shù),增強(qiáng)模型的穩(wěn)定性,提高診斷精度。本研究通過分析核極限學(xué)習(xí)機(jī)的基本原理,改進(jìn)粒子群算法的學(xué)習(xí)策略來修正KELM參數(shù),從而構(gòu)建最佳模型。
極限學(xué)習(xí)機(jī)(ELM)是一種可實(shí)現(xiàn)快速學(xué)習(xí)進(jìn)化的獨(dú)特算法[10]。由于模型結(jié)構(gòu)的特點(diǎn),其學(xué)習(xí)速度極快。
網(wǎng)絡(luò)實(shí)際輸出值的計(jì)算公式見式(1)。
式中:ωi為ELM輸入節(jié)點(diǎn)和隱含層節(jié)點(diǎn)的權(quán)值;bi為ELM隱含層的偏置系數(shù);βi為ELM隱含層和輸出層的輸出權(quán)值;gi為激活函數(shù)。
ELM模型的矩陣形式見式(2)。
式中:β為輸出權(quán)值矩陣;H為隱含層的輸出矩陣;T為期望輸出矩陣。
在確定H矩陣和T矩陣后,可求出輸出權(quán)值矩陣β,見式(3)。
式中:H+為矩陣H的廣義逆矩陣。
ELM網(wǎng)絡(luò)的隱含層節(jié)點(diǎn)數(shù)通常小于數(shù)據(jù)的樣本數(shù),容易產(chǎn)生復(fù)共線性問題,導(dǎo)致求解出的權(quán)值矩陣β不一致,從而嚴(yán)重影響模型的穩(wěn)定性[11]。
Huang等[12]采用核函數(shù)的理論,通過核矩陣Ω來代替隨機(jī)矩陣HHT,從而改善極限學(xué)習(xí)機(jī)不穩(wěn)定,并引出核極限學(xué)習(xí)機(jī)(KELM)。
核矩陣的計(jì)算公式見式(4)。
式中:h(x)為KELM隱含層輸出函數(shù);K(xi,xj)為核函數(shù)。
KELM模型的輸出變?yōu)槭剑?)。
式中:I為對(duì)角矩陣;C為懲罰因子。
KELM通過引入核函數(shù)理論,得到β矩陣的確定值,從而提高極限學(xué)習(xí)機(jī)的可靠性。在KELM模型中,核參數(shù)σ和懲罰因子C是影響算法精度的關(guān)鍵因素,本研究采用改進(jìn)粒子群算法進(jìn)行優(yōu)化處理。
在粒子群算法(PSO)中,粒子位置和速度是算法的核心要素,速度為粒子下一步迭代時(shí)移動(dòng)的方向和距離,位置為所求解問題的一個(gè)解。粒子速度和位置的更新公式見式(6)。
式中:i為種群的粒子;d為粒子的維度;k為算法的迭代次數(shù);ω為慣性權(quán)重值;c1、c2為粒子學(xué)習(xí)因子;r1、r2為[0,1]內(nèi)的隨機(jī)數(shù)。
通過分析PSO算法的原理和存在的問題,發(fā)現(xiàn)國內(nèi)外學(xué)者對(duì)權(quán)值、學(xué)習(xí)因子和學(xué)習(xí)策略等進(jìn)行改進(jìn)。本研究選取標(biāo)準(zhǔn)的PSO算法和5種經(jīng)典的改進(jìn)PSO算法進(jìn)行對(duì)比研究。
在粒子速度更新原理不變的基礎(chǔ)上,采用線性權(quán)值下降粒子群算法(LDIW-PSO)來改進(jìn)慣性權(quán)重參數(shù),從而實(shí)現(xiàn)權(quán)值的線性下降,權(quán)值ω的計(jì)算公式見式(7)[13]。
式中:ωmax為最大慣性權(quán)值;ωmin為最小慣性權(quán)值;k為迭代次數(shù);kmax為最大迭代次數(shù)。
LDIW-PSO可對(duì)權(quán)值實(shí)現(xiàn)實(shí)時(shí)調(diào)整,從而保證粒子在全局和局部中都有更加出色的搜索能力。
自適應(yīng)權(quán)重調(diào)整粒子群算法(APSO)是用慣性權(quán)重值改進(jìn)的粒子群算法。為滿足不同進(jìn)化階段的搜索需求,APSO對(duì)權(quán)重值進(jìn)行調(diào)整,見式(8)。
式中:Fit為種群中粒子的適應(yīng)度值。
改進(jìn)后的粒子群算法可通過粒子適應(yīng)度值和最小適應(yīng)度值來調(diào)整ω值,使粒子群算法能更快更合理地找出最優(yōu)解。
骨干粒子群優(yōu)化算法(BBPSO)修改了粒子的學(xué)習(xí)策略。粒子位置更新方程見式(9)。
式中:xij(t+1)為粒子在t+1時(shí)刻位于i位置的j維分量;uij(t)和σij(t)分別為粒子個(gè)體最優(yōu)值與群體最優(yōu)值的均值和標(biāo)準(zhǔn)差;N(uij,σij)為高斯分布;Pbesti為粒子i個(gè)體的最優(yōu)值;Gbest為群體最優(yōu)值。其中,Pbesti和Gbest的更新公式見式(10)。
式中:f(x)為種群的適應(yīng)度函數(shù)。
BBPSO通過高斯采樣來處理均值和標(biāo)準(zhǔn)差,剔除不相關(guān)粒子,防止局部最優(yōu)值對(duì)粒子更新產(chǎn)生不好的影響,從而提高粒子的尋優(yōu)能力。
交叉亞種群混合粒子群算法(Breed-PSO)是一種交叉與亞種群相結(jié)合的混合粒子群優(yōu)化算法。在每個(gè)維度中,子位置是通過交叉計(jì)算父代位置得到的,見式(11)。
式中:Pi為0到1之間的隨機(jī)數(shù);parent(x)為父代粒子的位置量;child(x)為子代粒子的位置量。
歸一化父代粒子的速度矢量可得到子代粒子的速度矢量,見式(12)。
式中:parent(v)為父代粒子的速度量;child(v)為子代粒子的速度量。
交叉運(yùn)算和子種群運(yùn)算可增強(qiáng)種群粒子的尋優(yōu)能力,避免陷入局部最優(yōu)值,有利于實(shí)現(xiàn)最優(yōu)值的求解。
綜合學(xué)習(xí)粒子群算法(CLPSO)是一種改進(jìn)PSO的進(jìn)化策略,這種新策略可防止過早收斂。粒子速度的更新公式見式(13)。
式中:c為粒子個(gè)體學(xué)習(xí)因子;pbest為粒子個(gè)體最佳值。CLPSO通過新的學(xué)習(xí)策略來防止粒子陷入局部值,提升算法搜索全局最優(yōu)值的能力。
本研究選取2個(gè)基準(zhǔn)測(cè)試函數(shù)進(jìn)行比較驗(yàn)證,測(cè)試函數(shù)分布圖見圖1?;谏鲜龌鶞?zhǔn)測(cè)試函數(shù),為了便于比較不同算法的優(yōu)異性,統(tǒng)一設(shè)置PSO算法和5種優(yōu)化PSO算法的粒子種群數(shù)量為80、粒子維度為30,初步設(shè)定算法的慣性權(quán)重和學(xué)習(xí)因子的參數(shù)值,驗(yàn)證6種粒子群算法在2種基準(zhǔn)測(cè)試函數(shù)下的迭代尋優(yōu)結(jié)果(見圖2)。
圖1 測(cè)試函數(shù)分布圖
圖2 函數(shù)尋優(yōu)結(jié)果
由圖2可知,在函數(shù)求解過程中,CLPSO算法的結(jié)果較好,LDIW-PSO算法的收斂速度最快。為了實(shí)現(xiàn)隨著迭代次數(shù)的增加而實(shí)時(shí)調(diào)整權(quán)重值,本研究采用線性遞減慣性權(quán)重來優(yōu)化CLPSO算法,見式(14)。
式中:ωmax和ωmin分別為最大和最小慣性權(quán)值;k為當(dāng)前的迭代次數(shù);kmax為種群中粒子能達(dá)到的迭代次數(shù)上限值。
通過對(duì)LDIW-PSO、CLPSO算法進(jìn)行結(jié)合(以下簡(jiǎn)稱“LCLPSO算法”),實(shí)現(xiàn)粒子群算法的完善與優(yōu)化,在提高收斂速度的同時(shí),可大幅增強(qiáng)粒子的尋優(yōu)能力,選擇一個(gè)多峰函數(shù)Alpine來驗(yàn)證LCLPSO算法的尋優(yōu)能力(見圖3)。
圖3 LCLPSO與CLPSO對(duì)比圖
由圖3可知,在引入線性遞減慣性權(quán)重后,CLPSO算法在迭代次數(shù)超過4 000次時(shí),適應(yīng)度值逐漸趨于停滯狀態(tài),難以繼續(xù)尋優(yōu);而LCLPSO算法的尋優(yōu)過程近似于線性遞減,迭代次數(shù)達(dá)到4 000后,LCLPSO算法依然保持著較強(qiáng)的搜索能力,持續(xù)尋優(yōu),迭代次數(shù)達(dá)到10 000次時(shí),得到最低的適應(yīng)度值。
由于KELM引入了核函數(shù),對(duì)參數(shù)非常敏感,本研究通過L-CLPSO算法來優(yōu)化KELM的核參數(shù)和懲罰因子,流程圖如圖4所示。
圖4 L-CLPSO優(yōu)化KELM的流程圖
將KELM的故障檢測(cè)準(zhǔn)確率設(shè)置為PSO算法中的適用度函數(shù),通過不斷地迭代計(jì)算來求出全局最佳參數(shù),得到最優(yōu)的KELM模型,實(shí)現(xiàn)LCLPSO對(duì)KELM的優(yōu)化處理,結(jié)果圖5所示。
圖5 LCLPSO優(yōu)化KELM結(jié)果
筆者通過研究KELM的基本原理,并分析6種不同類型的粒子群算法的優(yōu)劣,采用CLPSO與LDIW-PSO算法相結(jié)合的方式,并用Aphere多峰函數(shù)來驗(yàn)證算法的結(jié)果,證明LCLPSO算法具有可取之處,最后用于改進(jìn)KELM參數(shù),實(shí)現(xiàn)參數(shù)的優(yōu)化。