王 強,胡 榮
(1.成都文理學(xué)院 信息工程學(xué)院,四川 成都 610401;2.吉利學(xué)院 智能科技學(xué)院,四川 成都 641402)
隨著大規(guī)模醫(yī)療保健和臨床數(shù)據(jù)的產(chǎn)生,以及人類對自身健康關(guān)注度的顯著提升,生物醫(yī)學(xué)研究正變得越來越流行。醫(yī)學(xué)工作者可以通過學(xué)習(xí)已有的大量數(shù)據(jù)更好地對病人做出疾病診斷,以此提升醫(yī)療保健服務(wù)。然而,由于數(shù)據(jù)量巨大,信息種類繁多,如何從大量原始數(shù)據(jù)集中挖掘出有效信息成為解決這類問題的關(guān)鍵。
傳統(tǒng)MLP神經(jīng)網(wǎng)絡(luò)根據(jù)梯度下降法更新權(quán)值和偏差值,對于歷史權(quán)值和偏差值沒有記憶能力,增加學(xué)習(xí)樣本時,網(wǎng)絡(luò)訓(xùn)練需要重新開始。這一特性使得傳統(tǒng)神經(jīng)網(wǎng)絡(luò)易于生成局部最優(yōu)解。對數(shù)據(jù)集進行分類預(yù)測時,會導(dǎo)致預(yù)測值與實際值相差較大,分類準確度有待提高。對此,提出一種基于改進蝗蟲優(yōu)化算法IGOA的優(yōu)化MLP神經(jīng)網(wǎng)絡(luò)模型。具體地,利用拉普拉斯分布進行種群初始化,提升種群多樣性;利用非線性調(diào)節(jié)因子更新均衡全局搜索與局部開發(fā)能力;利用融合對立學(xué)習(xí)與柯西分布的個體變異機制避免算法陷入局部最優(yōu),提升尋優(yōu)精度。進一步利用IGOA算法優(yōu)化MLP神經(jīng)網(wǎng)絡(luò),求解最優(yōu)的網(wǎng)絡(luò)權(quán)值和偏差,克服標(biāo)準網(wǎng)絡(luò)結(jié)構(gòu)容易生成局部最優(yōu)、收斂速度慢的缺陷。以配置最優(yōu)參數(shù)的MLP神經(jīng)網(wǎng)絡(luò)對數(shù)據(jù)集進行分類,提升數(shù)據(jù)集的分類準確度。利用一組疾病數(shù)據(jù)集作為數(shù)據(jù)樣本進行實驗分析,驗證所提網(wǎng)絡(luò)模型可以有效提升分類準確率,且算法尋優(yōu)精度更高,收斂速度更快。
人工神經(jīng)網(wǎng)絡(luò)ANN可以學(xué)習(xí)、識別并處理工程和科學(xué)領(lǐng)域中的復(fù)雜問題[1]。對于多層感知器MLP神經(jīng)網(wǎng)絡(luò)而言,可采用監(jiān)督或非監(jiān)督訓(xùn)練方法對這種人工神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練[2]。而監(jiān)督型訓(xùn)練器主要方法有兩類:基于梯度和基于隨機搜索[3]。目前,最為常用的梯度下降訓(xùn)練法為反向傳播法,這種方法具有良好的局部搜索能力,利于對局部區(qū)域的開采。然而,為了獲得全局最優(yōu)解,搜索過程必須在全局勘探和局部開發(fā)間實現(xiàn)有效的均衡??碧绞撬阉魑粗聟^(qū)域的關(guān)鍵,而開采則充分利用了已知區(qū)域的優(yōu)勢[4]。然而,局部最優(yōu)的停滯、早熟收斂以及對于參數(shù)的依賴性均使得梯度下降策略擁有諸多限制[5]。有必要利用新型智能算法使得MLP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練具備隨機性而又可以有效逃離局部最優(yōu)[6]。
對于神經(jīng)網(wǎng)絡(luò)而言,選取學(xué)習(xí)率過小時,連接權(quán)值調(diào)整小,會導(dǎo)致網(wǎng)絡(luò)收斂慢;若選取學(xué)習(xí)率過大,連接權(quán)值相應(yīng)變大,網(wǎng)絡(luò)會出現(xiàn)振蕩,進而發(fā)散不得收斂。為此。相關(guān)研究中,文獻[7]在神經(jīng)網(wǎng)絡(luò)權(quán)值上引入了自適應(yīng)學(xué)習(xí)率方法,解決了人工經(jīng)驗賦值的弊端,模型精度有所提升。文獻[8]基于縮放因子選取和數(shù)據(jù)分布的影響,在隱藏層神經(jīng)元基函數(shù)的寬度計算上引入一種方差度量法,以此優(yōu)化神經(jīng)網(wǎng)絡(luò)參數(shù),提升網(wǎng)絡(luò)逼近性能。文獻[9]提出基于思維進化算法的BP神經(jīng)網(wǎng)絡(luò)優(yōu)化模型,利用思維進化算法更強的全局尋優(yōu)能力、更少的待調(diào)參數(shù)及更快的尋優(yōu)收斂速度的特征,有效彌補了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)在按擬合能力、易得到局部最優(yōu)及收斂慢的不足。文獻[10]提出利用混合離散粒子群算法優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)的連接結(jié)構(gòu)和權(quán)值參數(shù),可以提升神經(jīng)網(wǎng)絡(luò)的收斂速度和識別準確比。文獻[11]為解決神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)過程中較大學(xué)習(xí)率導(dǎo)致的振蕩問題,提出動量因子學(xué)習(xí)率優(yōu)化方法,有效提升收斂速度,并緩解了振蕩。文獻[12]提出利用人工魚群算法對神經(jīng)網(wǎng)絡(luò)的連接權(quán)重和閾值進行尋優(yōu),構(gòu)建了傳感器網(wǎng)絡(luò)中的數(shù)據(jù)融合改進模型。新模型一定程度提升了數(shù)據(jù)融合率,但智能算法本身的尋優(yōu)精度并未改進提升,影響了算法改進效果。
GOA是一種受自然界中蝗蟲的社會行為啟發(fā)而設(shè)計的智能優(yōu)化算法[13],擁有比傳統(tǒng)PSO、FA、BA等更好的全局尋優(yōu)能力?;认x的主要特征是在幼蟲和成蟲階段具有覓食、目標(biāo)追蹤和團隊合作的能力。在幼蟲階段,它們行動緩慢,可短步長跳躍。在成蟲階段,其行動迅速,可大范圍移動搜索食物源。為了模擬以上行為,蝗蟲移動模型如下
Xi=Si+Gi+Ai
(1)
式中:Xi為蝗蟲i的位置,Si為社群作用力,Gi為蝗蟲i的重力強度,Ai為個體遭受的風(fēng)力。結(jié)合蝗蟲作為動物的行為隨機性,Xi可重寫為Xi=r1Si+r2Gi+r3Ai,r1、r2、r3∈[0,1]。 3個構(gòu)成成分定義如下
(2)
Gi=-ge′g
(3)
Ai=-ue′w
(4)
其中,dij表示個體i、j間的距離,d′ij為單位矢量,g為重力常數(shù),e′g為重力的單位矢量,u為漂移常量,e′w為風(fēng)力單位矢量。s表示社群作用力強度函數(shù),定義為
s(r)=fe- r/l-e- r
(5)
式中:f為引力強度,l為吸引力步長。根據(jù)式(2)~式(4)可得
(6)
式中:N為種群規(guī)模。通過函數(shù)s可將蝗蟲的移動空間劃分為吸引區(qū)、排斥區(qū)和舒適區(qū)。若個體間距大于10,s≈0,表明個體之間無影響力,因此,GOA算法會將種群位置映射至[1,4]之間。若個體均處于舒適區(qū),則位置不更新。綜合考慮,在不考慮重力和風(fēng)力作用時,種群個體僅依賴社群作用力作位置更新,使其收斂至舒適區(qū)。而根據(jù)式(6),由于種群會很快到達舒適區(qū),種群將無法收斂至指定目標(biāo)處。因此,修正的位置更新方式為
(7)
式中:d為位置維度,UBd和ULd分別為位置上下邊界,T′d為目前的最優(yōu)解,c為調(diào)節(jié)因子。內(nèi)層c用于GOA減小蝗蟲間的排斥力和吸引力,外層c則減小最優(yōu)位置處的搜索趨勢。因子c定義為
c=cmax-t×(cmax-cmin)/Lmax
(8)
式中:cmax、cmin分別對應(yīng)c的最大值、最小值,t為當(dāng)前迭代數(shù),Lmax為最大迭代。
MLP神經(jīng)網(wǎng)絡(luò)是前饋神經(jīng)FFNN的一種[14],其特征是僅有一個隱含層,神經(jīng)元之間單向連接,結(jié)構(gòu)如圖1所示。MLP中的數(shù)據(jù)傳輸發(fā)生在3個并行層次之間:輸入層、隱藏層和輸出層。層次連接具有權(quán)重屬性,節(jié)點功能可執(zhí)行求和和激活兩種功能。求和函數(shù)為
圖1 MLP神經(jīng)網(wǎng)絡(luò)模型
(9)
式中:n為輸入數(shù)據(jù)量,Ii為輸入數(shù)據(jù)i,βj為偏差,wi,j為連接權(quán)重。
結(jié)合式(9),隱藏層中利用激活函數(shù)得到的輸出為
(10)
則MLP中單元j的輸出為
(11)
根據(jù)以上模型可知,偏差值和連接權(quán)重決定了在給定輸入情況下MLP的最終預(yù)測輸出。而MLP訓(xùn)練的目標(biāo)是通過計算最優(yōu)權(quán)重和偏差值,獲取更高的數(shù)據(jù)集分類準確率。
初始種群分布對智能算法的尋優(yōu)結(jié)果會產(chǎn)生重要影響,個體位置的初始位置分布多樣性越好,越有利于算法尋優(yōu)效率。標(biāo)準蝗蟲優(yōu)化算法GOA的初始種群生成是隨機的,種群缺乏多樣性,不利于算法尋優(yōu)。改進算法IGOA將利用拉普拉斯Laplace分布進行種群初始化,提升個體多樣性。圖2是200次迭代情況下兩種初始化方式的不同分布。
圖2 拉普拉斯分布
拉普拉斯分布的概率密度函數(shù)為
(12)
分布函數(shù)為
(13)
結(jié)合拉普拉斯分布,初始蝗蟲種群的位置生成方式為
xi,j=ULj,min+Lap(p,q)×(UBj,max-ULj,min)
(14)
式中: [ULj,min,UBj,max] 表示位置xi,j的搜索范圍,Lap(p,q) 表示拉普拉斯分布,p∈(-∞,∞) 為位置參數(shù),q>0為尺度參數(shù),函數(shù)f關(guān)于p對稱,且在 [0,p] 上遞增,在 [p,∞] 上遞減。
圖2中,隨機值分布代表標(biāo)準蝗蟲優(yōu)化算法GOA中采用Rand函數(shù)產(chǎn)生隨機數(shù)的方法進行種群初始化得到的種群分布,該方法容易造成種群個體多樣性的缺失,不能保證個體均勻穩(wěn)定地分布于整個搜索區(qū)間,降低了搜索精度。而拉普拉斯分布具有的尖峰和輕微厚尾,可以使其具有更好的遍歷性,且不缺乏隨機性,不僅增強了全局開拓性,也為算法的全局尋優(yōu)奠定了堅實基礎(chǔ)。
根據(jù)式(7)可知,調(diào)節(jié)因子c在個體位置更新中兩次被利用。式(8)表明,參數(shù)c是線性遞減的。外層c會隨著迭代減少個體在目標(biāo)區(qū)域附近的移動,該過程屬于局部開發(fā);內(nèi)層c則可以隨著迭代降低個體間的吸引力和排斥力,該過程屬于全局搜索。c值的變化決定了算法的局部開發(fā)與全局搜索間的轉(zhuǎn)換過程。然而,線性c值并不能體現(xiàn)蝗蟲種群的實際搜索過程,不同的迭代時期c值的不同遞減速度對算法的影響是不同的。在迭代早期,c值取值較大,利于提升算法的全局搜索能力,但遞減相對過快會使種群遍歷性不足,降低尋優(yōu)精度;而在迭代晚期,c值取值較小,利于提升算法的局部開發(fā)能力,但遞減相對過慢會降低算法收斂速度。為此,改進算法采用一種融合指數(shù)和隨機對數(shù)遞減的非線性調(diào)節(jié)因子更新策略,以最大迭代次數(shù)L為界,迭代前期利用指數(shù)函數(shù)遞減更新調(diào)節(jié)因子,迭代后期利用隨機對數(shù)函數(shù)遞減更新調(diào)節(jié)因子,使其具有自適應(yīng)更新機制,有效均衡算法的全局搜索和局部開發(fā)能力。具體方式為
(15)
式中:rand(0,1) 代表(0,1)區(qū)間的隨機值。根據(jù)式(15),c呈非線性遞減。迭代早期c較大,遞減速率較慢,這樣全局搜索過程更加充分;迭代后期c較小,遞減速率較快,算法收斂速度更快。
根據(jù)位置更新式(7),當(dāng)前迭代中最優(yōu)個體T′d對種群更新具有引領(lǐng)作用。為了避免迭代后期尋優(yōu)過程陷入局部最優(yōu),改進算法引入對立學(xué)習(xí)與柯西分布的個體變異機制實現(xiàn)種群擾動,使算法具備跳離局部最優(yōu)、勘探新區(qū)域的能力。
對立學(xué)習(xí)是一種可以同步考慮對立解適應(yīng)度的尋優(yōu)策略。令Xbest(t) 為當(dāng)前迭代t的種群最優(yōu)解,則其對立解為
Xbest′(t)=UB+r⊕(UL-Xbest(t))
(16)
式中: [UL,UB] 為個體的搜索邊界,r為(0,1)內(nèi)的隨機值。根據(jù)原始最優(yōu)解Xbest(t)及其對立解Xbest′(t), 個體的變異方式為
Xnew(t+1)=Xbest′(t)+r1⊕(Xbest(t)-Xbest′(t))
(17)
式中:r1為信息交換控制因子,定義為
r1=(t-t/Lmax)t
(18)
柯西變異源于柯西分布,柯西分布是連續(xù)型概率分布。一維柯西分布的標(biāo)準概率密度函數(shù)表達式可定義為
(19)
根據(jù)柯西分布概率密度函數(shù)的曲線可知,柯西分布兩端具有較長尾翼,這使得個體具有更高的概率跳躍至更好位置,脫離局部最優(yōu)。此外,柯西分布在中心0處峰值較小,從峰值下降至0趨勢平滑,變異范圍均勻。從這方面講,柯西變異對個體的擾動能力要強于標(biāo)準高斯變異。IGOA算法將柯西變異算子引入當(dāng)前最優(yōu)解的位置變異中,利用柯西算子調(diào)節(jié)和增強算法跳離局部最優(yōu)的能力。具體位置變異方式如下
Xnew(t+1)=Xbest(t)+cauchy(0,1)⊕Xbest(t)
(20)
式中:cauchy(0,1) 為服從柯西分布的柯西算子。
為了確保變異個體能夠擁有更好的適應(yīng)度,利用貪婪策略保留最優(yōu)個體,即:需要對比變異前后個體的適應(yīng)度,保留適應(yīng)度更好的個體在種群中。數(shù)學(xué)模型為
(21)
為了進一步提升算法性能,改進GOA算法通過概率選擇實現(xiàn)對立學(xué)習(xí)變異或柯西變異。定義選擇概率SP為
SP=-exp(1-t/Lmax)10
(22)
具體選擇方式是:定義隨機量rand,若rand (23) 步驟1 參數(shù)初始化,包括:種群規(guī)模N、最大迭代次數(shù)Lmax、選擇概率SP、調(diào)節(jié)因子最大值cmax、最小值cmin、吸引力強度f、吸引力步長l;利用拉普拉斯分布進行種群位置初始化; 步驟2 計算種群個體適應(yīng)度,記錄當(dāng)前最優(yōu)個體Xbest; 步驟3 根據(jù)式(15)更新調(diào)節(jié)因子; 步驟4 根據(jù)式(7)更新進行種群個體位置; 步驟5 重新計算種群個體適應(yīng)度,并記錄當(dāng)前最優(yōu)個體; 步驟6 若rand 步驟7 判斷算法迭代是否完成,若是,返回全局最優(yōu)解;否則,重復(fù)步驟3~步驟6執(zhí)行。 將IGOA算法應(yīng)用于MLP模型的優(yōu)化中,需要解決兩個問題:一是MLP網(wǎng)絡(luò)中的權(quán)重與偏差值如何編碼為蝗蟲個體的位置,即網(wǎng)絡(luò)模型與種群個體位置的映射關(guān)系;二是如何設(shè)計種群尋優(yōu)的適應(yīng)度函數(shù),用于評估相應(yīng)權(quán)重與偏差值組合下MLP模型的訓(xùn)練效果。對于IGOAMLP,所有搜索蝗蟲個體可以編碼為一維矢量,每個個體代表的解即為一個侯選MLP神經(jīng)網(wǎng)絡(luò)。圖3即為蝗蟲個體的編碼方式,每個編碼矢量由3部分組成:輸入層與隱藏層間的連接權(quán)重集合、隱藏層與輸出層間的連接權(quán)重集合和偏差值集合。矢量長度為目標(biāo)網(wǎng)絡(luò)的權(quán)重與偏差數(shù)之和,計算為 圖3 個體編碼 編碼矢量長度=n×m+(2×m)+1 (24) 式中:n為輸入樣本量,m為隱藏層的單元數(shù)。 利用均方誤差MSE表示IGOAMLP模型的適應(yīng)度函數(shù),指標(biāo)MSE代表實際值與MLP網(wǎng)絡(luò)的預(yù)測值的均方誤差,定義為 (25) 式中:y為實際值,y′為預(yù)測值,n為樣本數(shù)。 IGOAMLP算法過程如下: 步驟1 按預(yù)定義種群規(guī)模隨機初始化IGOAMLP中的蝗蟲種群,每個個體代表一種可能的MLP神經(jīng)網(wǎng)絡(luò)模型; 步驟2 將蝗蟲位置矢量中的元素分配至MLP神經(jīng)網(wǎng)絡(luò)中的連接權(quán)重和偏差; 步驟3 利用訓(xùn)練集中的所有樣本訓(xùn)練MLP,并利用MSE評估MLP的質(zhì)量; 步驟4 尋找擁有最小MSE值的MLP,即當(dāng)前最優(yōu)蝗蟲個體; 步驟5 根據(jù)式(7)更新所有蝗蟲個體的位置; 步驟6 判斷迭代終止條件,輸出擁有最小MSE值的MLP最優(yōu)解。 圖4是IGOAMLP模型的完整流程。算法的時間復(fù)雜度為O(t×S×N2), 其中,t為迭代數(shù),S為位置維度,N為蝗蟲種群規(guī)模。 圖4 基于IGOA算法的MLP模型IGOAMLP 實驗平臺為64-bit Windows 10 OS+Matlab R2017a,CPU主頻率為2.4 G,內(nèi)存為8 GB。為了驗證改進算法的性能,利用UCI語料庫中的5個醫(yī)學(xué)數(shù)據(jù)集測試IGOA-MLP算法。數(shù)據(jù)集共涉及5種疾病的醫(yī)療診斷問題,每一個數(shù)據(jù)集關(guān)注一種特定病癥的識別。表1給出了數(shù)據(jù)集包含的特征量、訓(xùn)練樣本數(shù)和測試樣本數(shù)。其中,Breast cancer為乳腺癌數(shù)據(jù)集,數(shù)據(jù)源來自威斯康星大學(xué)醫(yī)院,包括699個實例,每個實例代表一個經(jīng)過外科手術(shù)的乳腺癌病人,且病人被標(biāo)注了良性或惡性標(biāo)簽。Parkinsons為帕金森數(shù)據(jù)集,由哈佛大學(xué)國家聲音與語言中心收集,包括對31個人的23種生物醫(yī)學(xué)聲音測試結(jié)果,其中23人為帕金森患者,8個為健康個人,總共包括195個聲音數(shù)據(jù)實例。Diabestes為糖尿病數(shù)據(jù)集,包括728個實例,疾病的分類標(biāo)簽以二進制表達,1代表正例測試,0代表負例測試。Saheart為心臟病數(shù)據(jù)集,包括462個實例。Vertabral為脊椎病數(shù)據(jù)集,包括310個實例,其中有100個正常病例和210個反常病例。 表1 疾病診斷分類數(shù)據(jù)集 將數(shù)據(jù)集劃分為兩部分:70%的數(shù)據(jù)集用于模型訓(xùn)練,剩余30%用于模型測試。通過30次的樣本訓(xùn)練和測試過程計算性能指標(biāo)值的均值。利用最大最小max-min標(biāo)準化方法將數(shù)據(jù)集的所有特征處理在區(qū)間[0,1]之間,標(biāo)準化方法為 (26) 式中:minA、maxA分別表示給定特征A的最小值、最大值。數(shù)據(jù)標(biāo)準化操作可以確保所有特征擁有相同權(quán)重。 為了測試IGOA算法的性能,引入以下幾種經(jīng)典智能優(yōu)化算法進行對比分析:標(biāo)準蝗蟲優(yōu)化算法GOA[13]、螢火蟲算法FF[15]、花授粉算法FPA[16]。種群規(guī)模均設(shè)置為N=50,算法迭代次數(shù)設(shè)置為Lmax=250,IGOA和GOA算法的相關(guān)參數(shù)中,調(diào)節(jié)因子最大值cmax=1,最小值cmin=0.00001,吸引力強度f=0.5,吸引力步長l=1。FF算法的相關(guān)參數(shù)中,初始熒光素為5,感知半徑為10,揮發(fā)因子為0.4,介質(zhì)吸收系數(shù)為0.6,擴散次數(shù)為15,劃分比例為50%。FPA算法的相關(guān)參數(shù)中,轉(zhuǎn)換概率為0.8。 利用5種指標(biāo)評估算法性能,前4種指標(biāo)由數(shù)據(jù)分類模型的混淆矩陣得到,混淆矩陣見表2。 表2 混淆矩陣 表2中,TP表示正確劃分為正例的樣本數(shù),即實際為正且分類為正的樣本數(shù);FP表示錯誤劃分為正例的樣本數(shù),即實際為負但分類為正的樣本數(shù);FN表示錯誤劃分為負例的樣本數(shù),即實際為正但分類為負的樣本數(shù);TN表示正確劃分為負例的樣本數(shù),即實際為負且分類為負的樣本數(shù)。 (1)分類準確率AC:表示準確分類的樣本(正樣本或負樣本)占總樣本數(shù)的比例,計算方式為 (27) (2)特異度SP:表示預(yù)測負樣本占總的負樣本數(shù)的比例。對于醫(yī)療數(shù)據(jù)集,SP有助于準確發(fā)現(xiàn)未患病的人,計算為 (28) (3)靈敏度SE:表示預(yù)測正樣本占總的正樣本數(shù)的比例。靈敏度越高,表明分類模型越能準確發(fā)現(xiàn)患病人,計算為 (29) (4)G均值G-mean:表示靈敏度SE與特異度SP的聯(lián)合指標(biāo),計算為 (30) (5)AUC:表示受試操作特征ROC曲線下的區(qū)域,是正負樣本分布不均的數(shù)據(jù)集分類的有效分類指標(biāo),計算為 (31) 其中,P=TP+FP,N=TN+FN。 Breast cancer數(shù)據(jù)集測試結(jié)果如圖5(a)、圖5(b)所示,圖中展示了各指標(biāo)的均值A(chǔ)VG、標(biāo)準方差STD、最優(yōu)值BEST和最差值WORST。圖5(a)、圖5(b)中柱狀圖對應(yīng)左縱軸,折線圖對于右縱軸。下同,不作額外說明。總體來看,本文的IGOA算法在多數(shù)指標(biāo)上略優(yōu)于其它幾種算法,分類準確率的均值A(chǔ)VG分別比GOA算法、FF算法和FPA算法高約9.8%、9.8%和21.4%。指標(biāo)的標(biāo)準方差I(lǐng)GOA算法是所有算法中最小的,說明算法穩(wěn)定性也比較好。圖5(c)是算法的MSE指標(biāo)的收斂曲線及其箱形圖。觀察收斂曲線可知,IGOA算法在所有算法中收斂速度最快。箱形圖可以說明數(shù)據(jù)分散程度的情況,其頂端橫線和底端橫線分別表示最大值和最小值,箱內(nèi)直線為中位值,結(jié)果體現(xiàn)出IGOA算法擁有最小的MSE均值,其箱形體積最小,說明算法的穩(wěn)定性最好。 圖5 Breast cancer數(shù)據(jù)集測試結(jié)果 Parkinsons數(shù)據(jù)集測試結(jié)果如圖6(a)、圖6(b)所示。圖6結(jié)果表明,IGOA算法在分類準確率和G-mean兩個指標(biāo)上表現(xiàn)最好,分別為90.364和0.821,在分類準確率上比GOA算法、FF算法和FPA算法分別高出6.45%、18.43%、21.67%,在G-mean上分別比GOA算法、FF算法和FPA算法分別高出35.12%、67.81%和70.12%。G-mean可以體現(xiàn)特異性和靈敏度的均衡性,對于GOA算法,其最優(yōu)靈敏性為98.55,但特異性SE較差,僅為62.35%,這說明指標(biāo)均衡性較差,綜合性能不強。圖6(c)的收斂曲線和箱形圖則顯示出IGOA算法收斂最快,分類誤差最小,而穩(wěn)定性也是可接受的。 圖6 Parkinsons數(shù)據(jù)集測試結(jié)果 Diabetes數(shù)據(jù)集測試結(jié)果如圖7(a)、圖7(b)所示。結(jié)果表明IGOA算法在AUC、分類準確率和特異性3個指標(biāo)上擁有最好的性能,其G-mean指標(biāo)也表現(xiàn)較好。盡管FPA算法與IGOA較為接近,但其在圖7(c)中MSE上的變化過大,穩(wěn)定性較差。此外,F(xiàn)F和GOA兩種算法無法在全局搜索和局部開發(fā)間維持有效均衡,表現(xiàn)也不穩(wěn)定。相比而言,IGOA算法箱形體積更小,表明穩(wěn)定性更好。圖7(c)中的收斂曲線也表明,IGOA擁有最高的收斂速度,而FF和FPA算法已經(jīng)陷入局部最優(yōu),原因在于基于IGOA算法的MLP中搜索個體能夠在廣泛搜索和勘探間實現(xiàn)更加平滑適應(yīng)的轉(zhuǎn)換。 圖7 Diabetes數(shù)據(jù)集測試結(jié)果 Saheart數(shù)據(jù)集測試結(jié)果如圖8(a)、圖8(b)所示。結(jié)果表明,IGOA算法在分類準確率和靈敏度兩個指標(biāo)上優(yōu)于其它算法,分別達到74.56%和86.89%。GOA算法的G-mean指標(biāo)表現(xiàn)最好,但從圖8(c)中的箱形圖結(jié)果可以看出,該算法MSE變化較大,欠缺穩(wěn)定性。同時,在收斂速度上,IGOA算法也是所有算法中最快的。 圖8 Saheart數(shù)據(jù)集測試結(jié)果 Vertebral數(shù)據(jù)集測試結(jié)果如圖9(a)、圖9(b)所示。結(jié)果表明,IGOA、GOA和FF這3種算法在AUC、分類準確率、G-mean上具有更好的性能。雖然3個指標(biāo)性能比較接近,但圖9(c)表明IGOA收斂速度更快。同時,箱形圖的結(jié)果表明IGOA的箱形圖體積最小,穩(wěn)定性更強。 圖9 Vertebral數(shù)據(jù)集測試結(jié)果 表3是在MSE指標(biāo)上IGOA相對3種對比算法進行Wilcoxon秩和檢驗的結(jié)果,它是一種以樣本秩替代樣本值的非參數(shù)檢驗法,具體指在5%的顯著性水平下檢驗所提算法與對比算法的兩組數(shù)據(jù)中位值間是否存在顯著性差異。表3中的P值代表兩組數(shù)據(jù)總體是否相同的顯著性概率,H代表假設(shè)檢測結(jié)果,H=1代表存在顯著性差異,H=0代表沒有顯著性差異。從結(jié)果可以看到,在5個數(shù)據(jù)集上,IGOA相對3種對比算法所得到的數(shù)據(jù)上都存在顯著性差異,而P值(均小于1.00E-10)結(jié)果則表明IGOA算法的搜索精度更高,很好改進了MSE指標(biāo),尋優(yōu)性能得到了提升。 表3 IGOA算法相對3種對比算法的Wilcoxon秩和檢驗 圖10對比了不同預(yù)測模型的性能,包括標(biāo)準BP神經(jīng)網(wǎng)絡(luò)模型、標(biāo)準MLP模型、標(biāo)準GOA算法優(yōu)化的MLP模型GOAMLP以及本文的IGOAMLP模型??梢钥吹?,未作優(yōu)化的標(biāo)準BP網(wǎng)絡(luò)模型和MLP模型的均方誤差表現(xiàn)是較差的,與本文的IGOAMLP模型相比在5個數(shù)據(jù)集上的差異分別為:23.14%、30.76%、17.05%、19.32%、24.91%和18.37%、12.48%、23.38%、11.29%、9.48%。顯然,引入蝗蟲優(yōu)化算法GOA對MLP模型進行優(yōu)化的預(yù)測性能得到了較好的提升。而相比標(biāo)準GOA算法,改進后的IGOA算法對于MLP的優(yōu)化效果更加明顯,由于種群搜索的精度和速度都得到了提升,勢必會建立更好的MLP預(yù)測模型,對數(shù)據(jù)集的分類準確性也將得到進一步提高。 圖10 不同的預(yù)測模型 對于神經(jīng)網(wǎng)絡(luò)模型而言,樣本質(zhì)量和數(shù)量都會強烈地影響神經(jīng)網(wǎng)絡(luò)的泛化能力。本文在特定數(shù)據(jù)集(UCI語料庫的醫(yī)學(xué)數(shù)據(jù)集)的規(guī)模下,利用70%的數(shù)據(jù)集用于模型訓(xùn)練,剩余30%用于模型測試。為了有效驗證模型的泛化能力,實驗過程中確保了所有算法模型都在相同的數(shù)據(jù)集上進行訓(xùn)練和測試,測試集也是新鮮樣本,以及訓(xùn)練集和測試集分布基本相同。同時,訓(xùn)練樣本集和測試樣本集均采用隨機選取方式進行,一定程度確保樣本選取的隨機性。此外,樣本數(shù)量的增加勢必會影響模型訓(xùn)練的速度。從本文統(tǒng)計的指標(biāo)表現(xiàn)上看,改進模型在泛化性能上表現(xiàn)尚可。雖然并沒有保證IGOAMLP在所有5個數(shù)據(jù)集上均得到最優(yōu)結(jié)果,但從分類準確率AC、特異度SP、靈敏度SE、G均值G-mean、AUC這5個指標(biāo)以及模型迭代收斂速度和誤差水平上看,IGOAMLP依然在分類準確性和穩(wěn)定性上是所有對比模型中表現(xiàn)最好的。 提出了一種基于改進蝗蟲優(yōu)化算法的多層感知器神經(jīng)網(wǎng)絡(luò)模型,利用蝗蟲優(yōu)化算法強大的全局搜索性能對多層感知器MLP的連接權(quán)重和偏差值進行迭代尋優(yōu),進而得到最優(yōu)神經(jīng)網(wǎng)絡(luò)模型。利用5種典型疾病數(shù)據(jù)集對模型進行了訓(xùn)練與測試,驗證新算法可以在不同模型和復(fù)雜性的數(shù)據(jù)分類上具有更高的準確率。進一步的研究可嘗試對蝗蟲優(yōu)化算法本身的尋優(yōu)性能的綜合改進,如在位置更新方式、搜索精度和搜索效率上設(shè)計更有合理的機制,使其具有更快速更精確的尋優(yōu)精度,以此提升預(yù)測模型的配置。4.4 IGOA算法具體步驟
5 基于IGOA算法的MLP訓(xùn)練模型IGOAMLP
6 實驗分析
6.1 實驗搭建
6.2 評估指標(biāo)
6.3 實驗分析
7 結(jié)束語