王新環(huán) 劉志超
摘 要:針對(duì)傳統(tǒng)極限學(xué)習(xí)機(jī)(ELM)缺乏有效的訓(xùn)練方法、應(yīng)用時(shí)預(yù)測(cè)精度不理想這一弱點(diǎn),提出了一種基于遺傳算法(GA)訓(xùn)練極限學(xué)習(xí)機(jī)(GA-ELM)的方法。在該方法中,ELM的輸入權(quán)值和隱藏層節(jié)點(diǎn)閾值映射為GA的染色體向量,GA的適應(yīng)度函數(shù)對(duì)應(yīng)ELM的訓(xùn)練誤差;通過(guò)GA的遺傳操作訓(xùn)練ELM,選出使ELM網(wǎng)絡(luò)誤差最小的輸入權(quán)值和閾值,從而改善ELM的泛化性能。通過(guò)與ELM、I-ELM、OS-ELM、B-ELM4種方法的仿真結(jié)果對(duì)比,表明遺傳算法有效地改善了ELM網(wǎng)絡(luò)的預(yù)測(cè)精度和泛化能力。
關(guān)鍵詞:遺傳算法;極限學(xué)習(xí)機(jī);權(quán)值;閾值
DOI:10.11907/rjdk.171419
中圖分類號(hào):TP312 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-7800(2017)009-0079-04
Abstract:In order to improve the prediction accuracy of traditional Extreme Learning Machine (ELM) algorithm. Aim to overcome the lack of effective training methods for traditional extreme learning machine (ELM), the prediction accuracy is not ideal .We proposed a method which based on genetic algorithm (GA) training Extreme Learning Machine. In this method, the initial input weights and threshold vector of ELM maps to the chromosome vector of GA, and the fitness function of GA corresponds to the training error of ELM;By means of the GA to train ELM, improve the ELMs generalization capacity. Comparing the simulation results of GA-ELM with ELM, I-ELM, OS-ELM, B-ELM, the simulation results show that the genetic algorithm can effectively improve the prediction accuracy and generalization ability of ELM network.
Key Words:genetic algorithm; extreme learning machine; weight
0 引言
Huang G B等[1] 于 2006 年在傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上,提出了極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM)算法,它屬于單隱藏層前饋神經(jīng)網(wǎng)絡(luò)(SLFNs),具有自適應(yīng)能力和自主學(xué)習(xí)特點(diǎn),主要應(yīng)用于圖像分割、故障診斷、數(shù)據(jù)挖掘自動(dòng)控制等領(lǐng)域[2-4]。該算法通過(guò)對(duì)單隱藏層前饋神經(jīng)網(wǎng)絡(luò)的輸入權(quán)值和隱藏層節(jié)點(diǎn)的閾值隨機(jī)賦值,用最小二乘法求解得到輸出權(quán)值,極大提高了網(wǎng)絡(luò)訓(xùn)練速度和泛化能力[5-6]。但是,在解決梯度下降問(wèn)題時(shí),隨機(jī)產(chǎn)生網(wǎng)絡(luò)的輸入權(quán)值和隱藏層節(jié)點(diǎn)的閾值向量參數(shù)不能保證訓(xùn)練出的ELM模型達(dá)到最優(yōu),有收斂速度慢等問(wèn)題。針對(duì)這些問(wèn)題,陳紹煒等[7]提出利用蝙蝠算法優(yōu)化ELM,王杰等[8]提出了粒子群優(yōu)化的極限學(xué)習(xí)機(jī),張衛(wèi)輝等[9]提出了DE-ELM,這些方法都有可能出現(xiàn)早熟,陷入局部最優(yōu)。
遺傳算法(genetic algorithm,GA)是模擬達(dá)爾文生物進(jìn)化論的自然選擇和遺傳學(xué)機(jī)理的生物進(jìn)化過(guò)程的計(jì)算模型,是一種基于概率轉(zhuǎn)換規(guī)則的全局搜索優(yōu)化方法[10]。它將問(wèn)題的解看作一個(gè)種群,通過(guò)不斷選擇、交叉、變異等遺傳操作,使解的質(zhì)量越來(lái)越好[11]。
為了提高ELM算法的預(yù)測(cè)準(zhǔn)確率,本文提出了一種基于遺傳算法的極限學(xué)習(xí)機(jī)。在可行解空間,把遺傳算法優(yōu)化極限學(xué)習(xí)機(jī)初始權(quán)值和閾值的問(wèn)題,轉(zhuǎn)化為遺傳算法中選擇最適應(yīng)染色體過(guò)程。將本算法與其它幾個(gè)算法如ELM、I-ELM、OS-ELM、B-ELM,分別對(duì)回歸和分類問(wèn)題進(jìn)行仿真,以驗(yàn)證GA-ELM運(yùn)行效果的準(zhǔn)確性。
1 極限學(xué)習(xí)機(jī)
極限學(xué)習(xí)機(jī)(ELM)是一種新的學(xué)習(xí)算法,它是一種單隱藏層前饋神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法。相比傳統(tǒng)的基于梯度的學(xué)習(xí)算法,只需隨機(jī)選取輸入權(quán)值和隱藏層節(jié)點(diǎn)的閾值即可求出輸出權(quán)值,避免了傳統(tǒng)學(xué)習(xí)方法面臨的問(wèn)題。ELM學(xué)習(xí)速度快且泛化性能好,其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
給定訓(xùn)練集{(xi,ti)}Ni=1Rn×Rm,隱藏層節(jié)點(diǎn)激勵(lì)函數(shù)g(·)是非線性函數(shù),有Hardlim函數(shù)、Sigmoid函數(shù)、Gaussian函數(shù)等,其中Sigmoid函數(shù)最為常用,隱藏層節(jié)點(diǎn)個(gè)數(shù)為L(zhǎng)。
(1)隨機(jī)選取隱藏層節(jié)點(diǎn)參數(shù)(ai,bi),i=1,…,L,ai為第i個(gè)隱藏層節(jié)點(diǎn)的輸入權(quán)值,bi為第i個(gè)隱藏層節(jié)點(diǎn)閾值。
(2)計(jì)算隱藏層節(jié)點(diǎn)輸出矩陣H=g(ai,bi,xi)。H=h(x1)
h(xn)=g(a1,b1,x1)…g(aL,bL,x1)
…
g(a1,b1,xn)…g(aL,bL,xn)n×L
(1) (3)計(jì)算隱藏層到輸出層的輸出權(quán)值β:β=H↑·T,β=βT1
βTLL×m,T=tT1
tTnn×mendprint
(2) 式中:H↑是隱藏層輸出矩陣H的Moore-Penrose廣義逆,T為目標(biāo)輸出,即T={tj}nj=1。
(4)計(jì)算輸出值Oj。
當(dāng)訓(xùn)練到誤差(|Oj-Tj|)小于預(yù)先設(shè)定的常數(shù)ε時(shí),ELM能夠接近這些訓(xùn)練樣本: Oj=∑Li=1βig(ai,bi,xi),|Oj-Tj|≤ε,j=1,…,n (3) (5)求取誤差:E(ai,bi)=∑nj=1(Oj-Tj)2
(4) 其中,(ai,bi)分別為隱藏層節(jié)點(diǎn)輸入權(quán)值、閾值, Tj是第j組數(shù)據(jù)的輸出實(shí)際值,Oj是第j組數(shù)據(jù)輸出預(yù)測(cè)值。GA-ELM的目標(biāo)是使誤差E(ai,bi)最小。該方法的主要思想是:把ELM的初始輸入權(quán)值和隱藏層節(jié)點(diǎn)閾值作為GA算法的染色體向量,通過(guò)選擇、交換、變異、遺傳等操作,選擇出最適應(yīng)染色體作為ELM預(yù)測(cè)數(shù)據(jù)的輸入權(quán)值和閾值。
2 遺傳算法(GA)
遺傳算法是Holland教授于1975年提出的一種模擬自然界遺傳機(jī)制和生物進(jìn)化論的搜索全局最優(yōu)解算法。GA把搜索空間映射為遺傳空間,把可能的解編碼成一個(gè)向量——染色體,向量的每個(gè)元素稱為基因,通過(guò)不斷計(jì)算各染色體的適應(yīng)值,選擇最好的染色體獲得最優(yōu)解。遺傳算法執(zhí)行過(guò)程如下:
(1)初始化。確定種群規(guī)模M,隨機(jī)生成M個(gè)染色體作為初始種群Y(0)、交叉概率Pc、變異概率Pm、終止進(jìn)化代數(shù)N。
(2)計(jì)算個(gè)體適應(yīng)度。計(jì)算第t代種群Y(t)中每個(gè)染色體的適應(yīng)度。設(shè)種群為f(y),y∈M,其中M={y1,…,ym}, yi={x1,…,xm},每個(gè)染色體含m個(gè)基因,則f(y)=y1
yM=x11…x1m
…
xM1…xMm
(5) 適應(yīng)度函數(shù)為fit(y),y∈{y1,…,yM},求取fit(y)函數(shù)時(shí),假設(shè)為優(yōu)化神經(jīng)網(wǎng)絡(luò),則fit(yi)=1n∑nj=1(Oj-Tj)2
(6) 其中:Oj為第j個(gè)預(yù)測(cè)輸出值;Tj為實(shí)際輸出值;n為輸入數(shù)據(jù)總數(shù)。
(3)進(jìn)化。選擇(母體):從Y(t)中運(yùn)用選擇算子選擇出L對(duì)母體L≥M;交叉:隨機(jī)選擇L2對(duì)染色體(雙親染色體),當(dāng)其中一個(gè)染色體概率小于Pc時(shí),隨機(jī)制定一點(diǎn)或多點(diǎn)進(jìn)行交叉,可得兩個(gè)新的染色體(子輩染色體),最后形成L個(gè)中間個(gè)體;變異:對(duì)L個(gè)中間個(gè)體分別依概率Pm執(zhí)行變異,形成M個(gè)候選個(gè)體。
(4)選擇子代。從上述種群中形成的L個(gè)候選個(gè)體中選擇適應(yīng)度高的M個(gè)染色體,形成新一代種群Y(t+1),選擇方法是適應(yīng)度比例法(轉(zhuǎn)輪法)。
某染色體被選的概率為Pc:Pc=fit(yi)∑fit(yi)
(7) yi為種群中第i個(gè)染色體,fit(yi)是第i個(gè)染色體的適應(yīng)度值,∑fit(yi)是種群所有染色體適應(yīng)度值之和。
具體步驟如下:①計(jì)算各染色體適應(yīng)度值;②累計(jì)所有染色體適應(yīng)度值,記錄中間累加值S-mid和最后累加值sum=∑fit(yi);③產(chǎn)生一個(gè)隨機(jī)數(shù)N,0 (5)終止進(jìn)化。當(dāng)達(dá)到進(jìn)化代數(shù)N時(shí),終止進(jìn)化,選擇出第N代中適應(yīng)度最高的染色體作為最優(yōu)解。targetvalue=max{fit(yi)}
3 GA-ELM算法
為提高極限學(xué)習(xí)機(jī)預(yù)測(cè)精度,本文提出了基于遺傳算法的極限學(xué)習(xí)機(jī)(GA-ELM)。在該算法中,將ELM訓(xùn)練數(shù)據(jù)的輸入權(quán)值和隱層節(jié)點(diǎn)閾值,映射為GA種群中每條染色體上的基因;GA的染色體適應(yīng)度對(duì)應(yīng)于ELM的訓(xùn)練誤差,這樣將求取最優(yōu)輸入權(quán)值、閾值問(wèn)題轉(zhuǎn)換為通過(guò)降低染色體適應(yīng)度,選擇最優(yōu)染色體問(wèn)題。通過(guò)GA繁殖、交叉、變異等遺傳操作,選擇出最優(yōu)染色體,作為優(yōu)化后ELM的輸入權(quán)值和閾值;再用ELM求取輸出權(quán)值的方法——最小二乘法,算出隱層神經(jīng)元的輸出權(quán)值,從而計(jì)算預(yù)測(cè)輸出。該算法集成了GA全局搜索最優(yōu)能力和ELM的強(qiáng)學(xué)習(xí)能力。
GA-ELM學(xué)習(xí)過(guò)程:
取訓(xùn)練數(shù)據(jù)N,該組數(shù)據(jù)有輸入神經(jīng)元A個(gè),隱層神經(jīng)元B個(gè),選擇激活功能函數(shù),可以取Hardlim函數(shù)、Sigmoid函數(shù)、Gaussian函數(shù)等。
(1)初始化種群。初始化種群X,包括m個(gè)染色體,其中每個(gè)染色體xi都包括A·B個(gè)輸入權(quán)值和B個(gè)閾值,并把初始群體作為第一代種群:X=x1
xm=a11…a1Ab11…b1B
……
am1…amAbm1…bmB
(9) 其中:akg為輸入權(quán)值;bkh為隱層神經(jīng)元閾值,初始群體中的權(quán)值和閾值是隨機(jī)獲取的。k=1,2,…,m;g=1,2,…,A;h=1,2,…,B (2)計(jì)算適應(yīng)度。xi由輸入權(quán)值向量ωi和閾值向量bi組成:xi=ωi+bi;ωi=ai1,…,aiA;bi=bi1,…,biB
(10) 用ELM求輸出權(quán)值的方法求隱層神經(jīng)元輸出權(quán)值β:β=H+T
(11) 則適應(yīng)度函數(shù)fit為:fit=∑nj=1(Oj-Tj)2=∑Nj=1∑Bi=1(βig(ai,bi,xi)-Ti)2
(12) (3)選擇染色體。計(jì)算出每個(gè)染色體的適應(yīng)度后,對(duì)種群進(jìn)行選擇、交叉、變異等操作,形成新一代種群。繼續(xù)進(jìn)行優(yōu)化運(yùn)算,直至達(dá)到設(shè)定的遺傳代數(shù),選出此時(shí)適應(yīng)度最高的染色體作為優(yōu)化后的輸入權(quán)值和閾值。
4 實(shí)驗(yàn)結(jié)果與分析
為了驗(yàn)證GA-ELM算法的有效性,將GA-ELM與ELM、I-ELM、OS-ELM、B-ELM分別應(yīng)用于5個(gè)回歸問(wèn)題、5個(gè)分類問(wèn)題,進(jìn)行仿真測(cè)試及結(jié)果分析。仿真實(shí)驗(yàn)環(huán)境:內(nèi)存4G,處理器為Core i5-3470,頻率為3.2GHz的普通PC機(jī),matalb2013a環(huán)境下運(yùn)行。endprint
4.1 實(shí)驗(yàn)參數(shù)設(shè)置
以下實(shí)驗(yàn)中,所有回歸和分類問(wèn)題的輸入都?xì)w一化到[-1,1],權(quán)值和閾值在區(qū)間[-1,1],輸出歸一化為[0,1],隱層神經(jīng)元激勵(lì)函數(shù)采用Sigmoid函數(shù),遺傳算法的進(jìn)化代數(shù)為50代,交叉概率為0.4,變異概率為0.1,種群規(guī)模為40。
4.2 仿真數(shù)據(jù)屬性及設(shè)置
測(cè)試數(shù)據(jù)在UCI(University of CaliforniaIrvine)數(shù)據(jù)庫(kù)中下載。表1列出了回歸數(shù)據(jù)屬性,表2列出了分類數(shù)據(jù)屬性。每種算法運(yùn)行100次,取其平均訓(xùn)練時(shí)間、平均誤差和平均精度,仿真結(jié)果如表3、表4所示。
結(jié)果分析:從表3可以看出,所有回歸試驗(yàn)中,在相同隱層神經(jīng)元情況下,GA-ELM的測(cè)試誤差遠(yuǎn)遠(yuǎn)小于其它算法誤差。這是因?yàn)樵谠嫉腅LM中,一些隱層節(jié)點(diǎn)在求網(wǎng)絡(luò)輸出時(shí)作用很小,有時(shí)還有可能增加網(wǎng)絡(luò)的復(fù)雜性,降低泛化性能。表4中,每組數(shù)據(jù)在相同隱層節(jié)點(diǎn)情況下,GA-ELM的測(cè)試精度均達(dá)到最高。
4.3 隱層節(jié)點(diǎn)數(shù)目性能比較
將 GA-ELM、ELM、OS-ELM、I-ELM、B-ELM等SLFNs的隱層節(jié)點(diǎn)數(shù)初始設(shè)置為1個(gè),每次加1,直到50個(gè)為止。測(cè)試結(jié)果如圖3和圖4所示。圖3取Concrete數(shù)據(jù),圖4取Balance數(shù)據(jù)。
結(jié)果分析:從圖3可以看出,GA-ELM在很少隱層節(jié)點(diǎn)的情況下,誤差已經(jīng)很小,表明經(jīng)過(guò)GA訓(xùn)練得到了使ELM網(wǎng)絡(luò)誤差最小的輸入權(quán)值和閾值,提高了收斂速度。從圖4可以看出,在相同測(cè)試精度情況下,GA-ELM的隱層節(jié)點(diǎn)數(shù)比其它算法少很多,這意味著在處理固定型SLFNs時(shí),GA-ELM比ELM、I-ELM、OS-ELM、B-ELM能獲得更加緊湊的網(wǎng)絡(luò)結(jié)構(gòu)。簡(jiǎn)言之,GA-ELM在解決回歸和分類問(wèn)題時(shí),可以更好地提高測(cè)試精度。
5 結(jié)語(yǔ)
本文提出了一種新的單隱層前饋神經(jīng)網(wǎng)絡(luò)算法GA-ELM,與其它算法的仿真結(jié)果對(duì)比表明,無(wú)論在回歸問(wèn)題還是分類問(wèn)題上,GA-ELM都具有高預(yù)測(cè)精度。與其它算法不同的是,GA-ELM具有自組織、自適應(yīng)、自學(xué)習(xí)性,能夠迅速搜索到最優(yōu)權(quán)值和閾值,使ELM的網(wǎng)絡(luò)模型更加緊湊,計(jì)算代價(jià)更低,更適用于離線訓(xùn)練、在線識(shí)別或預(yù)測(cè)等對(duì)精度要求較高的場(chǎng)合。
參考文獻(xiàn):
[1] HUANG G B, ZHU Q Y, SIEW C K. Extreme learning machine: theory and applications [J].Neurocomputing, 2006,70(s1-3):489-500.
[2] FENG GUORUI, LAN YUAN, ZHANG XINPENG, et al. Dynamic adjustment of hidden node parameters for extreme learning machine [J]. IEEE Transactions On Cybernetics, 2015,5(2):279-288.
[3] HUANG GUANG-BIN, ZHOU HONGMING. Extreme learning machine for regression and multiclass classification [J]. IEEE Transactions On Systems, Man, and Cybernetics-Part B: Cybernetics, 2012,42(2):513-529.
[4] LIN SHAOBO, LIU XIA, FANG JIAN. Is extreme learning machine feasible?a theoretical assessment(Part II)[J]. IEEE Transactions On Neural Networks And Learning Systems, 2015,26(1):21-34.
[5] YOAN MICHE, ANTTI SORJAMAA, PATRICK BAS, et al. OP-ELM: optimally pruned extreme learning machine [J]. IEEE Transactions On Neural Networks, 2010,21(1):158-162.
[6] ALIM SAMAT, PEIJUN DU, SICONG LIU,et al. Ensemble extreme learning machines for hyperspectral image classification [J]. IEEE Journal Of Selected Topics In Applied Earth Observations And Remote Sensing,2014, 7(4):1060-1068.
[7] 陳紹煒,柳光峰,冶帥,等.基于蝙蝠算法優(yōu)化ELM的模擬電路故障診斷研究[J].電子測(cè)量技術(shù),2015,38(2):138-141.
[8] 王杰,畢浩洋.一種基于粒子群優(yōu)化的極限學(xué)習(xí)機(jī)[J].鄭州大學(xué)學(xué)報(bào),2013,45(1):100-104.
[9] 張衛(wèi)輝,黃南天.基于廣義S變換和DE-ELM的電能質(zhì)量擾動(dòng)信號(hào)分類[J].電測(cè)與儀表,2016,53(20):50-54.
[10] YANG CHENG-HONG, LIN YU-DA, LI-YEH CHUANG, et al. Evaluation of breast cancer susceptibility using improved genetic algorithms to generate genotype SNP barcodes [J].IEEE/ACM Transactions On Computational Blology And Bioinformatics,2013,10(2):361-371.
[11] CHEN BILI, ZENG WENHUA, LIN YANGBIN, et al. A new local search-based multiobjective optimization algorithm[J].IEEE Transactions On Evolutionary Computation,2015,19(1):50-73.
(責(zé)任編輯:杜能鋼)endprint