毛 羽, 毛 力, 楊 弘, 肖 煒
(1.輕工過程先進(jìn)控制教育部重點(diǎn)實(shí)驗(yàn)室 江南大學(xué) 物聯(lián)網(wǎng)工程學(xué)院,江蘇 無錫 214122;2.中國水產(chǎn)科學(xué)研究院 淡水漁業(yè)研究中心,江蘇 無錫 214081)
近年來,一種新型的前饋神經(jīng)網(wǎng)絡(luò)—極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)被Huang G B等人提出[1~4]。由于ELM在訓(xùn)練之前可以隨機(jī)產(chǎn)生連接權(quán)值以及閾值,克服了傳統(tǒng)前饋神經(jīng)網(wǎng)絡(luò)的不足。ELM因其較快的學(xué)習(xí)速度和優(yōu)良的泛化性能,引起了國內(nèi)外廣泛的研究和關(guān)注。ELM不僅僅適用于回歸、擬合問題,還適用于分類、模式識(shí)別等領(lǐng)域,因此,得到了廣泛的應(yīng)用[5,6]。文獻(xiàn)[4]指出,為了達(dá)到理想的精度,需要設(shè)置大量的隱含層節(jié)點(diǎn)。為此有學(xué)者使用智能優(yōu)化算法結(jié)合ELM得到了很好的效果。
近年來,有學(xué)者使用了人工蜂群(artificial bee colony,ABC)算法對單隱含層前饋神經(jīng)網(wǎng)絡(luò)(single-hidden layer feedforward neural networks,SLFNs)的隱含層節(jié)點(diǎn)參數(shù)進(jìn)行優(yōu)化。文獻(xiàn)[11]首次將ABC算法用于優(yōu)化神經(jīng)網(wǎng)絡(luò)的連接權(quán)值和閾值,并得到了較好的效果;文獻(xiàn)[12]使用了ABC算法對前饋神經(jīng)網(wǎng)絡(luò)的連接權(quán)值和閾值進(jìn)行優(yōu)化;文獻(xiàn)[13]提出了ABC-反向傳播(back propagation,BP)算法將ABC算法和BP算法進(jìn)行結(jié)合,先使用ABC算法對前饋神經(jīng)網(wǎng)絡(luò)的隱含層節(jié)點(diǎn)參數(shù)進(jìn)行優(yōu)化,再使用BP算法對其進(jìn)行微調(diào)。
本文在上述工作的基礎(chǔ)上,提出了一種改進(jìn)的ABC優(yōu)化的極限學(xué)習(xí)機(jī)即差分進(jìn)化與克隆算法改進(jìn)人工蜂群優(yōu)化的極限學(xué)習(xí)機(jī)(differential evolution ABC-ELM,DECABC-ELM)算法,在ABC的基礎(chǔ)上,借鑒了差分進(jìn)化(DE)算法的差分變異算子和免疫克隆算法的克隆擴(kuò)增算子,ABC收斂速度慢、容易陷入局部最優(yōu)解的缺點(diǎn)進(jìn)行了改進(jìn),并使用DECABC算法優(yōu)化SLFNs的隱含層節(jié)點(diǎn)參數(shù),再使用Moore-Penrose(MP)廣義逆求得SLFNs的輸出權(quán)值。為了體現(xiàn)算法的有效性,將DECABC-ELM和文獻(xiàn)[8]中的自適應(yīng)進(jìn)化極限學(xué)習(xí)機(jī)(self-adaptive evolutionary ELM,SaE-ELM),文獻(xiàn)[9]中的粒子群優(yōu)化極限學(xué)習(xí)機(jī)(particle swarm optimization ELM,PSO-ELM),文獻(xiàn)[10]中的混合智能優(yōu)化算法(DEPSO-ELM)以及使用原始ABC算法優(yōu)化的ABC-ELM在分類數(shù)據(jù)集和回歸數(shù)據(jù)集上進(jìn)行了對比,結(jié)果顯示DECABC-ELM的效果較好。
對于N個(gè)任意不同的訓(xùn)練樣本集(xi,yi) ,i=1,2,…,N,xi∈Rd,yi∈Rm,則一個(gè)具有L個(gè)隱含層節(jié)點(diǎn)的前饋神經(jīng)網(wǎng)絡(luò)的輸出為
(1)
式中wj∈Rd為輸入層到隱含層節(jié)點(diǎn)i的連接權(quán)值;bj∈R為隱含層節(jié)點(diǎn)j的神經(jīng)元閾值;g(·)為隱含層節(jié)點(diǎn)的激活函數(shù);g(wj·xi+bj)為第i個(gè)樣本在隱含層節(jié)點(diǎn)j的輸出;wj·xi為向量的內(nèi)積;βj為隱含層節(jié)點(diǎn)j和輸出層之間的連接權(quán)值。
不同于傳統(tǒng)的梯度下降迭代算法,Huang G B等人證明了[14]當(dāng)隱含層節(jié)點(diǎn)個(gè)數(shù)與訓(xùn)練集樣本數(shù)相等時(shí),任給w和b,在具有g(shù)(·)為激活函數(shù)的SLFNs中,能夠以零誤差接近訓(xùn)練樣本,即
(2)
這里設(shè)H為隱含層輸出矩陣,即H={hij},hij=g(wj·xi+bj),則式(1)可以表述如下
Hβ=T
(3)
由于w和b在訓(xùn)練前可隨機(jī)選取,并且在訓(xùn)練過程中保持不變,因此,隱含層輸出矩陣H為定值,根據(jù)式(3),輸出權(quán)值矩陣 可以通過求其最小二乘解得到
(4)
式中H+為隱含層輸出矩陣的Moore-Penrose(MP)廣義逆。
ABC算法的計(jì)算過程如下:
1)產(chǎn)生初始解:在初始化階段,產(chǎn)生SN個(gè)初始解
(5)
2) 雇傭蜂搜尋階段:從初始位置開始,每個(gè)雇傭蜂個(gè)體在當(dāng)前位置的附近搜索新的蜜源,其更新公式
vi,j=xi,j+rand[-1,1](xi,j-xk,j)
(6)
式中vi,j為新的蜜源位置信息;xi,j為原蜜源位置信息;rand[-1,1]為取-1~1之間的隨機(jī)數(shù);xk,j為第k個(gè)蜜源的j維信息,k∈{1,2,…,SN}且k≠i。
當(dāng)雇傭蜂獲取到新的蜜源位置信息后,將計(jì)算蜜源的適應(yīng)度值,如果新蜜源的比原蜜源適應(yīng)度好,則采用新蜜源位置;否則,繼續(xù)采用原蜜源位置信息,且開采次數(shù)加1。
3) 跟隨蜂跟隨階段:跟隨蜂根據(jù)位置信息,依概率選擇適應(yīng)度較高的蜜源信息,在雇傭蜂的基礎(chǔ)上產(chǎn)生一個(gè)變化的位置,去尋找新的蜜源。其概率選擇公式如下
(7)
式中fitness(xi)為第i個(gè)跟隨蜂的適應(yīng)度值,Pi為第i個(gè)跟隨蜂被選擇的概率。一旦跟隨蜂被選擇,即按照式(6)進(jìn)行位置更新操作。
4) 偵查蜂搜尋階段:當(dāng)蜜源開采達(dá)到一定次數(shù)卻未改變適應(yīng)度值時(shí),雇傭蜂轉(zhuǎn)為偵查蜂并尋找新的蜜源位置,其搜索公式同式(5)。
ELM的輸入層與隱含層之間連接權(quán)值w以及隱含層神經(jīng)元閾值b隨機(jī)生成,個(gè)別隱含層節(jié)點(diǎn)的作用非常小,造成ELM需要設(shè)置大量隱含層節(jié)點(diǎn)才能達(dá)到理想精度。為提高ELM的性能,本文提出了一種改進(jìn)的ABC優(yōu)化算法來優(yōu)化連接權(quán)值w和閾值b。
在數(shù)學(xué)教學(xué)中,無論是數(shù)與代數(shù)、圖形與幾何,還是統(tǒng)計(jì)與概率等知識(shí),處處蘊(yùn)含著數(shù)形結(jié)合思想。教材借助幾何圖形的直觀來幫助學(xué)生理解抽象概念。生動(dòng)形象的圖形使得抽象的知識(shí)變得趣味化、直觀化,學(xué)生在學(xué)習(xí)時(shí),不再感到枯燥乏味,反而能從中獲得有趣的情感體驗(yàn),從而實(shí)現(xiàn)了主動(dòng)探索,把握了概念本質(zhì)。
對于N個(gè)任意不同的維度為D的訓(xùn)練樣本集,激活函數(shù)為g(·)的具有L個(gè)隱含層節(jié)點(diǎn)的ELM,DECABC-ELM的計(jì)算步驟如下:
1)初始化
按照式(5)產(chǎn)生SN個(gè)初始解,其中每個(gè)個(gè)體的編碼方式如下
根據(jù)ELM算法,編碼中wj,D維向量,每一維均為-1~1之間的隨機(jī)數(shù)j=1,…L為;bj為0~1之間的隨機(jī)數(shù);G為蜂群的迭代次數(shù)。
2)雇傭蜂搜索階段
將DE算法中的差分變異算子和雇傭蜂搜索公式進(jìn)行結(jié)合
vi,j=xi,j+rand[-1,1](xbest,j-xk,j+xl,j-xm,j)
(8)
式中xbest,j為當(dāng)前蜂群最優(yōu)個(gè)體;xk,j,x1,j和xm,j為除當(dāng)前個(gè)體外隨機(jī)選擇的其他3個(gè)不同的個(gè)體,即i≠k≠l≠m。每當(dāng)雇傭蜂到達(dá)一個(gè)新的位置,將位置信息,即ELM的連接權(quán)值w和閾值b對訓(xùn)練集進(jìn)行驗(yàn)證并得到適應(yīng)度值,如果適應(yīng)度值較高,則使用新的位置信息代替舊的位置信息。
將免疫克隆算法中的克隆擴(kuò)增算子引入到跟隨蜂更新過程。
首先將跟隨蜂根據(jù)其適應(yīng)度進(jìn)行克隆,克隆的數(shù)目和其適應(yīng)度成正比
(9)
式中Ni為第i個(gè)跟隨蜂的克隆數(shù)目;SN為群體數(shù)目;fitness(xi)為第i個(gè)跟隨蜂的適應(yīng)度值。
根據(jù)式(7)選擇跟隨蜂的位置進(jìn)行變化,變化公式同式(6)。
跟隨蜂位置信息變化后,通過新位置的濃度和適應(yīng)度選出適應(yīng)度較高的食物源。其中,適應(yīng)度概率同式(7),濃度概率以及選擇概率見式(10)、式(11)。
濃度概率計(jì)算
(10)
式中Ni為和第i個(gè)跟隨蜂適應(yīng)度值相近的跟隨蜂數(shù)目;Ni/SN為適應(yīng)度相近的跟隨蜂在群體中的數(shù)量比例;T為濃度閾值;HN為濃度大于T的跟隨蜂數(shù)目。
選擇概率計(jì)算
Pchoose(xi)=αPi(xi)+(1-α)Pd(xi)
(11)
利用輪盤賭的形式對新產(chǎn)生的跟隨蜂群體進(jìn)行選擇,并和原食物源進(jìn)行對比,如有改善,則替換原食物源。
4)偵查蜂搜尋階段
如果食物源信息在一定時(shí)間內(nèi)沒有更新,則將雇傭蜂轉(zhuǎn)換為偵查蜂,使用步驟(1)的方法重新生成該個(gè)體。
5)當(dāng)?shù)螖?shù)到達(dá)設(shè)定或適應(yīng)度值達(dá)到一定精度后,從最優(yōu)個(gè)體中提取出的ELM的連接權(quán)值w和閾值b,并使用測試集進(jìn)行驗(yàn)證。
為驗(yàn)證DECABC-ELM的效果,與SaDE-ELM,PSO-ELM,DEPSO-ELM和ABC-ELM分別在回歸和分類數(shù)據(jù)集上進(jìn)行了對比實(shí)驗(yàn)。所有的實(shí)驗(yàn)中種群進(jìn)化最大次數(shù)均設(shè)定為50次,種群規(guī)模SN為80。所有實(shí)驗(yàn)均運(yùn)行10次取均方根誤差或分類正確率的平均值和標(biāo)準(zhǔn)差作為實(shí)驗(yàn)結(jié)果,最優(yōu)結(jié)果以粗體標(biāo)出。
5種算法通過擬合Sinc函數(shù)進(jìn)行對比,Sinc函數(shù)的表達(dá)式如下
(12)
產(chǎn)生5 000個(gè)[-10,10]均勻分布的數(shù)據(jù)x,計(jì)算得到5 000個(gè)數(shù)據(jù)集{xi,f(xi)},i=1,…,5 000,再產(chǎn)生5 000個(gè)[-0.2,0.2]均勻分布的噪聲ε;令訓(xùn)練集為{xi,f(xi)+εi},i=1,…,5 000,再產(chǎn)生另一組5 000個(gè)數(shù)據(jù)集{yi,f(yi)},i=1,…,5 000作為測試集。逐漸增加5種算法的隱含層節(jié)點(diǎn)數(shù)對函數(shù)進(jìn)行擬合,其他參數(shù)參考文獻(xiàn)[8~10]中的參數(shù)設(shè)置,ABC-ELM和DECABC-ELM算法參數(shù)設(shè)置相同。結(jié)果如表1所示,可知隨著隱含層節(jié)點(diǎn)的增加,平均測試誤差和標(biāo)準(zhǔn)差逐漸減小,當(dāng)隱含層節(jié)點(diǎn)過多時(shí),會(huì)出現(xiàn)過擬合的情況。在大部分情況下,當(dāng)隱含層節(jié)點(diǎn)數(shù)相同時(shí),DECABC-ELM具有更小的平均測試誤差和標(biāo)準(zhǔn)差。
表1 Sinc函數(shù)擬合結(jié)果對比
使用加州大學(xué)歐文分校的機(jī)器學(xué)習(xí)庫中的4個(gè)真實(shí)回歸數(shù)據(jù)集對5種算法的性能進(jìn)行對比實(shí)驗(yàn),包括均方根誤差(RMSE)和標(biāo)準(zhǔn)差(Std.Dev.)。數(shù)據(jù)集名稱分別為:Auto MPG(MPG),Computer Hardware(CPU),Housing和Servo。
實(shí)驗(yàn)過程中數(shù)據(jù)集中的數(shù)據(jù)被隨機(jī)分為訓(xùn)練集和測試集,其中70 %作為訓(xùn)練集,剩余30 %作為測試集。為減少各個(gè)變量差異較大的影響,在算法運(yùn)行前先對數(shù)據(jù)進(jìn)行歸一化處理,具有平均最優(yōu)RMSE的實(shí)驗(yàn)結(jié)果被記錄在表2~表5中??梢钥闯?,DECABC-ELM在所有的數(shù)據(jù)集擬合實(shí)驗(yàn)中獲得了最小的RMSE,但在Auto MPG和Computer Hardware中,DECABC-ELM的Std.Dev.卻比其他算法差,即穩(wěn)定性有待提升。從訓(xùn)練時(shí)間和隱層節(jié)點(diǎn)數(shù)上看,PSO-ELM和DEPSO-ELM收斂速度較快,且使用的隱含層節(jié)點(diǎn)數(shù)較少,但精度差于DECABC-ELM。綜合考慮,DEABC-ELM的性能較為優(yōu)越。
表2 Auto MPG擬合結(jié)果對比
表3 Computer Hardware擬合結(jié)果對比
表4 Housing擬合結(jié)果對比
表5 Servo擬合結(jié)果對比
使用加州大學(xué)歐文分校的機(jī)器學(xué)習(xí)庫。4個(gè)真實(shí)分類數(shù)據(jù)集名稱分別為:Blood Transfusion Service Center(Blood),Ecoli,Iris和Wine。與分類數(shù)據(jù)集相同,實(shí)驗(yàn)數(shù)據(jù)中70 %作為訓(xùn)練集,30 %作為測試集,具有最優(yōu)分類率的實(shí)驗(yàn)結(jié)果被記錄在表6~表9中。
表6 Blood分類結(jié)果對比
表7 Ecoli分類結(jié)果對比
表8 Iris分類結(jié)果對比
由表可以看出,在4種分類數(shù)據(jù)集中DECABC-ELM均取得了最高分類正確率。但DECABC-ELM在穩(wěn)定性上依然不夠理想。DECABC-ELM算法較PSO-ELM,DEPSO-ELM和ABC-ELM 3種算法用時(shí)更長,較SaE-ELM短。相較于其他算法,DECABC-ELM使用了較少的隱含層節(jié)點(diǎn)即可達(dá)到較高的分類正確率。綜上,DECABC-ELM的性能較優(yōu)。
通過引入差分進(jìn)化算法的差分變異算子和免疫克隆算法的克隆擴(kuò)增算子,改進(jìn)了人工蜂群收斂速度慢、易于陷入局部最優(yōu)解等缺點(diǎn),從而能夠快速求出ELM的接權(quán)值w和閾值b,優(yōu)化ELM使其擁有了更好的計(jì)算速度和精度。提出的DECABC-ELM算法分別在分類和回歸數(shù)據(jù)集上進(jìn)行了驗(yàn)證,并獲得了良好的效果。如何提高算法的穩(wěn)定性是下一步要研究的內(nèi)容。
參考文獻(xiàn):
[1] Wang L,Ren T,Nie B,et al.Development of a spontaneous combustion TARPs system based on BP neural network[J].International Journal of Mining Science and Technology,2015,25(5):803-810.
[2] Ji T,Lu S,Tang M,et al.Application of BP neural network model in fracturing productivity prediction of Fuyu tight oil reservoir in Jilin oilfield[J].Acta Geologica Sinica:English Edition,2015,89(s1):154-155.
[3] Wu Z Q,Jia W J,Zhao L R,et al.Maximum wind power tracking based on cloud RBF neural network[J].Re-newable Energy,2016,86:466-472.
[4] Huang G B,Zhu Q Y,Siew C K.Extreme learning machine:Theory and applications[J].Neurocomputing,2006,70(1):489-501.
[5] 楊 勤,董洪偉,薛燕娜.核多元基因選擇和極限學(xué)習(xí)機(jī)在微陣列分析中的應(yīng)用[J].傳感器與微系統(tǒng),2016,35(5):146-148.
[6] 許夢陽,黃金泉,潘慕絢.用于航空發(fā)動(dòng)機(jī)動(dòng)態(tài)辨識(shí)的MSMEA-ELM算法[J].傳感器與微系統(tǒng),2016,35(12):1-4.
[7] Zhu Q Y,Qin A K,Suganthan P N,et al.Evolutionary extreme learning machine[J].Pattern Recognition,2005,38(10):1759-1763.
[8] Cao J,Lin Z,Huang G B.Self-adaptive evolutionary extreme learning machine[J].Neural Processing letters,2012,36(3):285-305.
[9] 王 杰,畢浩洋.一種基于粒子群優(yōu)化的極限學(xué)習(xí)機(jī)[J].鄭州大學(xué)學(xué)報(bào):理學(xué)版,2013,45(1):100-104.
[10] 林梅金,羅 飛,蘇彩紅,等.一種新的混合智能極限學(xué)習(xí)機(jī)[J].控制與決策,2015,30(6):1078-1084.
[11] Huang G B,Chen L,Siew C K.Universal approximation using incremental constructive feedforward networks with random hidden nodes[J].IEEE Transactions on Neural Networks,2006,17(4):879-892.
[12] Karaboga D.An idea based on honey bee swarm for numerical optimization[R].Erciyes:Erciyes University,2005.
[13] Karaboga D,Akay B,Ozturk C.Modeling decisions for artificial intelligence[M].Berlin Heidelberg:Springer,2007:318-329.
[14] Karaboga D,Ozturk C.Neural networks training by artificial bee colony algorithm on pattern classification[J].Neural Network World,2009,19(3):279-292.
[15] Sarangi P P,Sahu A,Panda M.Intelligent computing,networking,and informatics[M].India:Springer,2014:511-519.