劉俊
(商洛學(xué)院電子信息與電氣工程學(xué)院,陜西商洛726000)
一種基于思維進化算法的極限學(xué)習(xí)機及其應(yīng)用
劉俊
(商洛學(xué)院電子信息與電氣工程學(xué)院,陜西商洛726000)
極限學(xué)習(xí)機(Extreme Learning Machine,ELM)是一種新型的單隱含層前饋神經(jīng)網(wǎng)絡(luò),與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)訓(xùn)練方法相比,ELM具有泛化能力好、學(xué)習(xí)速率快等優(yōu)點。但隨機產(chǎn)生的輸入權(quán)值和閾值,往往會出現(xiàn)一些作用很小或“無用”的值,為了達到理想精度,通常需要增加隱含層節(jié)點數(shù)。思維進化極限學(xué)習(xí)機使用思維進化算法MEA優(yōu)化輸入權(quán)值矩陣和閾值向量,再利用MP廣義逆求出輸出權(quán)值矩陣,從而減小隱含層節(jié)點數(shù),增大網(wǎng)絡(luò)預(yù)測精度。通過函數(shù)擬合仿真實驗,并同ELM算法和BP神經(jīng)網(wǎng)絡(luò)算法比較,思維進化極限學(xué)習(xí)機算法可以用較少的隱含層節(jié)點數(shù)實現(xiàn)更高的精度。
思維進化;極限學(xué)習(xí)機;權(quán)值;閾值
隨著智能信息的發(fā)展,具有良好系統(tǒng)辨識能力的神經(jīng)網(wǎng)絡(luò)得到了更廣泛的應(yīng)用,但傳統(tǒng)神經(jīng)網(wǎng)絡(luò)(如BP、SVM神經(jīng)網(wǎng)絡(luò))的固有缺陷,如收斂速度慢、易收斂到局部最優(yōu)解、過擬合問題、網(wǎng)絡(luò)隱含層節(jié)點數(shù)多且不能確定等,成為制約其發(fā)展的主要瓶頸。極限學(xué)習(xí)機(Extreme Learning Machine,ELM)是黃廣斌等[1]提出一種新的單隱層前饋神經(jīng)網(wǎng)絡(luò)(Single-hidden Layer Feedforward Neural Network,SLFN)。該算法隨機選取輸入層與隱含層間的連接權(quán)值和隱含層節(jié)點的閾值,且在訓(xùn)練過程中無需調(diào)整,只需設(shè)置隱含層節(jié)點數(shù)目,再通過一步計算得到方程組的最小二乘解,即隱含層與輸出層的連接權(quán)值。因此,ELM較傳統(tǒng)網(wǎng)絡(luò)模型具有更快的學(xué)習(xí)速度、更高的精度和更強的泛化能力,已經(jīng)得到很多學(xué)者的應(yīng)用研究[2-5]。但實際應(yīng)用中,為了達到較好精度,隱含層節(jié)點數(shù)目需不斷增加,增大了網(wǎng)絡(luò)復(fù)雜度。從理論上已經(jīng)證明輸入層與隱含層的連接權(quán)值和隱含層的閾值的選擇對網(wǎng)絡(luò)精度有較大影響[6]。思維進化算法(Mind Evolutionary Algorithm,簡稱MEA)是由孫承意等[7]提出的一種新型進化算法,其思想來源于模仿人類思維進化過程,較遺傳算法(Genetic Algorithms,GA)具有更快的收斂時間和更強的全局搜索能力。MEA在進化過程中每一代所有個體(潛在解)組成一個群體,并形成若干個子群體,子群體又分成優(yōu)勝子群體和臨時子群體兩類,每個子群體內(nèi)部執(zhí)行“趨同”操作,得到局部最優(yōu)解,每個子群體之間執(zhí)行“異化”操作,得到全局最優(yōu)解。由于MEA具有良好的擴充性、移植性和極強的全局優(yōu)化能力,已經(jīng)成功應(yīng)用于圖像處理、自動控制、經(jīng)濟預(yù)測等領(lǐng)域[8-10]。針對ELM隨機產(chǎn)生的輸入權(quán)值和閾值有時會出現(xiàn)0值或作用很小的值,對網(wǎng)絡(luò)精度和復(fù)雜度有較大影響,本文提出思維進化極限學(xué)習(xí)機算法(MEAELM),采用思維進化算法優(yōu)化極限學(xué)習(xí)機的輸入權(quán)值和隱含層閾值,再利用MP廣義逆得到輸出權(quán)值矩陣。通過函數(shù)擬合應(yīng)用實驗,并與ELM算法、BP神經(jīng)網(wǎng)絡(luò)算法作比較,驗證了MEAELM可使用更少的隱含層節(jié)點數(shù)目獲得更高的精度,同時具有更強的泛化能力。
1.1 ELM基本原理
ELM屬于單隱含層前饋神經(jīng)網(wǎng)絡(luò),設(shè)輸入層有m個神經(jīng)元,隱含層有l(wèi)個神經(jīng)元,輸出層有n個神經(jīng)元。g(·)為隱含層神經(jīng)元的激活函數(shù)。輸入權(quán)值矩陣為ωj=[w1,w2,…,wl]T,其中第j個隱含層神經(jīng)元的權(quán)值向量ωj=[wj1,wj2,…,wjm],wj1為隱含層第j個神經(jīng)元與第i個輸入神經(jīng)元的連接權(quán)值。隱含層閾值向量b=[b1,b2,…,bl]T。設(shè)k個不同樣本(Xk,Yk),其中輸入矩陣Xk=[x1,x2,…,xk],第j個樣本輸入向量xj=[x1j,x2j,…xmj]T,xij為第j個樣本的第i個輸入神經(jīng)元輸入量。輸出矩陣Yk=[y1, y2,…,yk],第j個樣本輸出向量yj=[y1j,y2j,…ynj]T,yij為第j個樣本的第i個輸出神經(jīng)元輸出量。隱含層與輸出層連接權(quán)值矩陣β=[β1,β2,…,βl]T,其中第j個隱含層神經(jīng)元與輸出神經(jīng)元連接權(quán)值向量βj=[βj1,βj2,…,βjn],βjl表示第j個隱含層神經(jīng)元與第i個輸出層神經(jīng)元的連接權(quán)值。
隱含層輸出矩陣可以用上述假設(shè)參量表示為H=[h1,h2,…,hl],其中第j個隱含層神經(jīng)元的輸出矩陣hj=[g(wj·x1+bj),g(wj·x2+bj),…,g(wj·xk+bj)T。
網(wǎng)絡(luò)輸出矩陣T=Hβ。ELM的輸入權(quán)值和閾值可以隨機選取,且在訓(xùn)練過程中保持不變,當激活函數(shù)g(·)無限可微時,通過解范數(shù)方程的最小二乘解獲得隱含層與輸出層的連接權(quán)值β^=H+T,H+為H的MP偽逆。根據(jù)文獻[11]的定理證明,β^是惟一的,使得訓(xùn)練誤差最小,且使網(wǎng)絡(luò)有最好的泛化能力。
1.2 ELM學(xué)習(xí)步驟
ELM學(xué)習(xí)算法主要實現(xiàn)步驟:
1)確定隱含層節(jié)點的數(shù)目l和無限可微激活函數(shù)g(·);
2)隨機產(chǎn)生輸入權(quán)值矩陣Wl和隱含層閾值向量b;
3)計算隱含層輸出矩陣H;
4)計算輸出權(quán)值矩陣β。
思維進化算法(MEA)是在遺傳算法的基礎(chǔ)進行了改進。MEA具有更強整體搜索效率,可以記憶多代的進化信息,通過趨同和異化操作實現(xiàn)信息向著有利方向進行。
在解空間中隨機生成Q個個體,根據(jù)得分(即適應(yīng)度函數(shù)值)選擇得分最高的前M個優(yōu)勝個體和N個臨時個體。分別以所有優(yōu)勝個體和臨時個體為中心,隨機生成M個優(yōu)勝子群體和N個臨時子群體。子群體內(nèi)部個體通過得分高低進行局部競爭,若勝者(即最高分個體)不再發(fā)生變化,表示該子群體成熟,此過程為趨同操作。直到所有子群體全部成熟,并把各子群體最高得分及其個體公布到全局公告板上。根據(jù)全局公告板信息,子群體間為優(yōu)勝者而進行全局競爭,完成子群體間的替換、廢棄、個體釋放等操作,此過程為異化操作,最后得到全局最優(yōu)個體和得分。若最優(yōu)個體沒有滿足要求,可以重復(fù)趨同和異化操作,直到運算收斂或滿足設(shè)定要求。
實際應(yīng)用及實驗發(fā)現(xiàn),極限學(xué)習(xí)機隱含層節(jié)點的數(shù)目對神經(jīng)網(wǎng)絡(luò)的辨識精度有較大影響,通常為了達到一定精度要求,采用的辦法是增加隱含層節(jié)點數(shù)目,這不僅增大了網(wǎng)絡(luò)的復(fù)雜度,還往往出現(xiàn)過擬合問題,即訓(xùn)練精度增大時,測試精度卻在下降。同時,在文獻[6]中已經(jīng)證明,極限學(xué)習(xí)機輸入權(quán)值的選擇對網(wǎng)絡(luò)結(jié)果也有很大的影響,隨機選擇的權(quán)值容易產(chǎn)生作用很小,甚至無用的節(jié)點。本文提出一種思維進化極限學(xué)習(xí)機算法(MEAELM)。該算法主要利用思維進化算法優(yōu)化極限學(xué)習(xí)機的輸入權(quán)值和閾值,從而得到隱含層節(jié)點數(shù)更少、精度更高的網(wǎng)絡(luò)。
該算法的主要實現(xiàn)過程為:
1)參數(shù)初始化。設(shè)定種群的大小popsize,一般取100-400個;優(yōu)勝子群體個數(shù)bestpopsize,臨時子群體個數(shù)temppopsize,一般取5-10個;每個優(yōu)勝子群體和臨時子群體中個體的數(shù)目通常保持一致,且使兩種子群體的所有個體的數(shù)量和為popsize。個體由輸入權(quán)值矩陣和閾值向量構(gòu)成,個體長度L=m·l+l,其中m為輸入層神經(jīng)元數(shù)目,l為隱含層神經(jīng)元數(shù)目。根據(jù)測試精度要求設(shè)定迭代次數(shù)iterate,可取5-50。
2)參數(shù)優(yōu)化。各子群體執(zhí)行趨同和異化操作,趨同和異化過程中利用訓(xùn)練樣本,根據(jù)ELM算法中公式計算輸出矩陣β,再利用測試樣本一計算出每個個體的均方根誤差(RMSE),將RMSE作為進化得分,得分函數(shù)也可以是別的參數(shù)表示。經(jīng)過不斷趨同、異化、迭代,輸出最優(yōu)個體。解碼最優(yōu)個體,得到最優(yōu)的輸入權(quán)值矩陣和閾值向量。
3)結(jié)果輸出。根據(jù)最優(yōu)解碼個體,按照ELM算法公式,并利用測試樣本二的數(shù)據(jù)得到輸出權(quán)值矩陣β。
為了驗證MEAELM實際效果,本文利用回歸擬合實驗進行測試,擬合函數(shù)如式(1),并與ELM和BP神經(jīng)網(wǎng)絡(luò)擬合效果進行比較。
評價網(wǎng)絡(luò)性能主要考慮兩個參數(shù)——時間和誤差。本文采用訓(xùn)練時間來衡量網(wǎng)絡(luò)計算速度,采用預(yù)測值的均方根誤差(Root Mean Square Error,,ti為預(yù)測輸出值,yi為實際輸出值,k為預(yù)測樣本總數(shù))和預(yù)測值的平均絕對相對誤差(Average Absolute Relative Error,來定量描述網(wǎng)絡(luò)預(yù)測精度。
4.1 迭代次數(shù)對MEAELM的影響
根據(jù)式(1)選取2 000組數(shù)據(jù),x1和x2在[-5,5]范圍內(nèi)均勻產(chǎn)生,再隨機選擇1 800組訓(xùn)練數(shù)據(jù)、剩余200組中的隨機選取100組作為測試數(shù)據(jù)一,剩下100組為測試數(shù)據(jù)二。測試數(shù)據(jù)一的預(yù)測輸出均方誤差的倒數(shù)作為MEAELM的得分函數(shù)使用。測試數(shù)據(jù)二是為了驗證網(wǎng)絡(luò)性能。
設(shè)置MEAELM的隱含層節(jié)點數(shù)為10,迭代次數(shù)從1增大到9,測試網(wǎng)絡(luò)性能。因隨機值的選取容易使結(jié)果產(chǎn)生波動,所以為了減小測試誤差,最終測試結(jié)果為連續(xù)15次操作的平均值(下同),測試結(jié)果如表1所示。
表1 迭代次數(shù)對MEAELM的性能影響
從表1可以看到,訓(xùn)練時間較長,且隨著迭代次數(shù)增大不斷增加。RMSE和AARE較小,也隨著迭代次數(shù)增大不斷減小,但誤差減小幅度逐漸變慢。
4.2 隱含層節(jié)點數(shù)對MEAELM、ELM和BP神經(jīng)網(wǎng)絡(luò)的影響
不斷增加隱含層節(jié)點數(shù)目,比較MEAELM、ELM和BP神經(jīng)網(wǎng)絡(luò)擬合非線性函數(shù)(1)的能力。
選取式(1)所采集的數(shù)據(jù),隨機選擇1 800組數(shù)據(jù)作為MEAELM、ELM和BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),剩余200組中的隨機選取100組作為測試數(shù)據(jù)一,剩下100組測試數(shù)據(jù)二,測試數(shù)據(jù)一的預(yù)測輸出誤差的倒數(shù)作為MEAELM的得分函數(shù)使用,測試數(shù)據(jù)二用來驗證MEAELM、ELM和BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)性能。固定MEAELM的迭代次數(shù)為5。BP神經(jīng)網(wǎng)絡(luò)采用MATLAB自帶工具箱函數(shù)構(gòu)建、訓(xùn)練和測試網(wǎng)絡(luò),節(jié)點傳遞函數(shù)為tansig。測試結(jié)果如表2所示。
表2 隱含層節(jié)點數(shù)對MEAELM、ELM和BP神經(jīng)網(wǎng)絡(luò)的影響
從表2可以看到,MEAELM與ELM的RMSE和AARE隨著隱含層節(jié)點數(shù)的增加而不斷減小,BP神經(jīng)網(wǎng)絡(luò)的RMSE和AARE卻呈現(xiàn)先減小后增大的結(jié)果。當隱含層節(jié)點數(shù)大于200時,MEAELM的AARE幾乎為零。MEAELM的RMSE和AARE遠遠小于其他兩種算法。同時也可以看到,MEAELM的訓(xùn)練時間較長,這主要由于輸入權(quán)值和隱含層閾值參數(shù)的優(yōu)化時間較長造成的。
4.3 其他函數(shù)擬合能力比較
為了進一步比較MEAELM在擬合方面的應(yīng)用優(yōu)勢,利用其他函數(shù)比較MEAELM、ELM和BP神經(jīng)網(wǎng)絡(luò)的性能。函數(shù)如下:
對式(2)(3)(4)分別采集2000組數(shù)據(jù),隨機選取1800組作為訓(xùn)練數(shù)據(jù),剩余200組中選取100組作為測試數(shù)據(jù),對剩余100組數(shù)據(jù)進行預(yù)測,取所得預(yù)測結(jié)果的均方誤差的倒數(shù)作為MEAELM的得分函數(shù)。設(shè)定目標預(yù)測AARE= 0.01%,測試三種算法所需隱含層節(jié)點數(shù)及訓(xùn)練時間。隱含層節(jié)點數(shù)從2開始增大,上限為300個。測試結(jié)果如表3所示。
表3 三種算法對不同函數(shù)目標預(yù)測AARE=0.01%的性能比較
從表3可以看到,同一算法對不同函數(shù)擬合效果不同,但在同一AARE為0.01%下,MEAELM相對與ELM和BP神經(jīng)網(wǎng)絡(luò)所需隱含層節(jié)點數(shù)更少,網(wǎng)絡(luò)更簡單。仿真實驗發(fā)現(xiàn),對每個函數(shù)重復(fù)15次操作中,MEAELM和ELM所需隱含層節(jié)點數(shù)比較穩(wěn)定,而BP神經(jīng)網(wǎng)絡(luò)所需隱含層節(jié)點數(shù)變化較大,甚至對式(3)仿真時出現(xiàn)隱含層節(jié)點數(shù)最多和最少相差211個的情況,非常不利于網(wǎng)絡(luò)的合理建立。
本文提出了一種思維進化極限學(xué)習(xí)機算法,該算法的基本思想是利用全局搜索能力極強的思維進化算法來優(yōu)化極限學(xué)習(xí)機的輸入層權(quán)值和隱含層閾值;最終目的是為了減少隱含層節(jié)點數(shù),降低網(wǎng)絡(luò)復(fù)雜度,提高網(wǎng)絡(luò)預(yù)測精度。該算法結(jié)合了MEA和ELM的優(yōu)點,具有參數(shù)調(diào)整簡單、泛化能力強、全局優(yōu)化能力強等特點。通過函數(shù)擬合仿真實驗,并與ELM和BP神經(jīng)網(wǎng)絡(luò)算法比較,結(jié)果表明,該算法可以用較少的隱含層節(jié)點數(shù)取得更高的預(yù)測精度,達到了預(yù)期效果。
[1]Huang G B,Zhu Q Y,Siew.Extreme learning machine:a new learning scheme of feedforward neural networks[J].Neurocomputing,2004,2(2):985-990.
[2]Deng W,Chen L.Color imagewatermarking using regularized extreme learning machine[J].Neural Network World,2010,20(3):317-330.
[3]Zong W W,Huang G B.Face recognition based on extreme learning machine[J].Neurocomputing,2011,74 (16):2541-2551.
[4]Huang G B,Zhu Q Y,Siew C K.Extreme learning machine Theory and applications[J].Neurocomputing, 2006,70:489-501.
[5]Huang G B,Wang D H,Lan Y.Extreme learning machines:a survey[J].International Journal of Machine Learning and Cybernetics,2011,2:107-122.
[6]楊易旻.基于極限學(xué)習(xí)的系統(tǒng)辨識方法及應(yīng)用研究[D].長沙:湖南大學(xué),2013:29-30.
[7]Sun C Y.Mind-Evolution-Based Machine Learning:Framework and the Implementation of Optimization[M]// Proceedings of IEEE International Conference on Intelligent Engineering Systems.Vienna,Austria, 1998,355-359.
[8]Sun Y,Sun C Y.Clustering and Reconstruction of Color images Using MEBML[M]//Proceedings of International Conference on Neural Networks&Brain.Beijing, China,1998,361-365.
[9]Cheng M Q.Gray image segmentation on MEBML frame[J].Intelligent Control and Automation,2000(1):135-137.
[10]韓曉霞,謝克明.基于思維進化算法的模糊自尋優(yōu)控制[J].太原理工大學(xué)學(xué)報,2004,35(5):523-525.
[11]Huang G B.Learning capability and storage capacity of two-hidden-layer feedforward networks[J].IEEE Transactions on Neural Networks,2003,14(2):274-281.
(責任編輯:李堆淑)
An Extreme Learning Machine Optimized by MEA and Its Applications
LIU Jun
(Cellege of Electronic Information and Electrical Engineering,Shangluo University,Shangluo726000, Shaanxi)
Extreme Learning Machine(ELM)is a new type of neural network with hidden layer feedforward.Compared with traditional neural network training method,ELM is endowed with good generalization ability,fast learning rate,etc.Input weights and thresholds randomly produced lead to useless number or number of little value.More often than not,hidden layer nodes are added to achieve the ideal accuracy.A new ELM learning algorithm,which was optimized by mind evolutionary algorithm(MEA),was proposed.In order to reduce the hidden layer nodes and increase network prediction accuracy,MEA was used to optimize input weight matrix and threshold vector,then the output weights could be calculated by Moore-Penrose generalized inverse.To test the validity of proposed method,the function fitting simulation experiments were drawn.Compared to ELM algorithm and BP neural network algorithm,experimental results showed that the proposed algorithm achieved better performance with less hidden layer nodes.
mind evolution;Extreme Learning Machine;weight;threshold
TP181
A
1674-0033(2015)02-0012-04
10.13440/j.slxy.1674-0033.2015.02.004
2014-12-27
劉俊,男,山西大同人,碩士,助教