駢斐斐, 王巧云,2, 王銘萱, 張 楚, 單 鵬,2, 李志剛,2
(1.東北大學(xué) 信息科學(xué)與工程學(xué)院,遼寧 沈陽(yáng) 110819; 2.東北大學(xué) 秦皇島分校 河北省微納精密光學(xué)傳感與檢測(cè)技術(shù)重點(diǎn)實(shí)驗(yàn)室,河北 秦皇島 066004)
高血壓、血脂異常、糖尿病導(dǎo)致的心血管疾病的發(fā)病率正在迅速增加,不僅給患者本人帶來(lái)了極大的痛苦,更是增加了家庭和社會(huì)的負(fù)擔(dān)[1, 2],預(yù)防、及早篩查和及時(shí)治療這些疾病迫在眉睫。光譜檢測(cè)技術(shù)能夠根據(jù)待測(cè)物所呈現(xiàn)的光譜來(lái)鑒別物質(zhì)化學(xué)成分和相對(duì)含量,具有對(duì)樣本無(wú)損、靈敏度高、適用性強(qiáng)、操作性好、分析速度快等優(yōu)勢(shì)[3, 4]。其中拉曼光譜技術(shù)適用于化合物分子結(jié)構(gòu)測(cè)定、混合物成分分析及樣本濃度檢測(cè),且具有對(duì)水分子散射效應(yīng)小的突出特點(diǎn)。然而,拉曼光譜存在吸收強(qiáng)度弱、光譜重疊嚴(yán)重等特點(diǎn),光譜中所產(chǎn)生的差異極其微弱,必須借助基于化學(xué)計(jì)量學(xué)的分析方法[5, 6]。
極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)是一種具有單隱含層前饋神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)框架[7],其收斂速度快、學(xué)習(xí)速度快,同時(shí),它還具有逼近復(fù)雜非線性函數(shù)的優(yōu)勢(shì),可以解決傳統(tǒng)神經(jīng)網(wǎng)絡(luò)參數(shù)不能確定的問(wèn)題。但由于其輸入權(quán)值和隱含層偏置隨機(jī)給定導(dǎo)致模型穩(wěn)定性降低,有不少學(xué)者嘗試對(duì)該模型進(jìn)行改進(jìn)[8~13]。
本文選取極限學(xué)習(xí)機(jī)模型,并對(duì)算法進(jìn)行改進(jìn),提出一種自適應(yīng)差分進(jìn)化人工蜂群算法優(yōu)化的極限學(xué)習(xí)機(jī)模型用于血液成分的檢測(cè),以提升預(yù)測(cè)精確度和模型穩(wěn)健性。
本實(shí)驗(yàn)所用的血液樣本收集于達(dá)成合作的河北省秦皇島市第一醫(yī)院,用于實(shí)驗(yàn)研究,實(shí)驗(yàn)樣本均已征求并取得醫(yī)生和病人的同意,符合倫理道德標(biāo)準(zhǔn)。本實(shí)驗(yàn)的血液樣本共106組,包括臨床上確診的糖尿病病人的血液和健康志愿者的血液。取血條件為:被試者禁食12 h,于次日晨6:30~7:30采集靜脈血5 mL,加入乙二胺四乙酸二鈉抗凝劑防止凝血,并將血液樣本置于4 ℃便攜冰箱內(nèi)備用;在血液提取過(guò)程中,使用一次性膠頭滴管,最大限度地避免樣本間的交叉污染。由于樣本的稀缺性導(dǎo)致樣本數(shù)目過(guò)少,本實(shí)驗(yàn)對(duì)每組樣本進(jìn)行10次拉曼光譜采集,再進(jìn)行加和平均以避免偶然因素的干擾。為保證實(shí)驗(yàn)的連續(xù)性和可重復(fù)性,在兩日內(nèi)完成全部樣本的拉曼光譜采集,確保所有樣本采集的背景大致相同,降低由外界環(huán)境差異等因素造成的影響,為后期數(shù)據(jù)處理提供基礎(chǔ)保障。
為避免在光譜采集和實(shí)驗(yàn)操作的過(guò)程中發(fā)生樣本任何特性的變異,實(shí)驗(yàn)樣本均保存在4 ℃以下的穩(wěn)定環(huán)境中。在實(shí)驗(yàn)前,將樣本均分為兩份:一份樣本采用安捷倫高效液相色譜儀測(cè)量并作為標(biāo)準(zhǔn)濃度;另一份樣本置于潔凈石英透明杯中,用拉曼光譜儀在室溫環(huán)境下檢測(cè),設(shè)置激發(fā)光源功率為400 mW,光譜分辨率為5 cm-1,掃描速率為10 kHz,掃描范圍為400~4 000 cm-1,對(duì)每個(gè)樣本重復(fù)采集3次并計(jì)算平均值作為原始光譜數(shù)據(jù),以保證實(shí)驗(yàn)的準(zhǔn)確性和可重復(fù)性。樣本溶液測(cè)量使用德國(guó)布魯克(Bruker)公司生產(chǎn)的MultiRAM傅里葉變換拉曼光譜儀,且相應(yīng)配備高性能液氮冷卻的Ge檢測(cè)器、標(biāo)準(zhǔn)Nd:YAG(1 064 nm)激光器和OPUS7.0光譜分析軟件程序。
使用拉曼光譜儀掃描測(cè)得106組實(shí)驗(yàn)血液樣本的光譜數(shù)據(jù),原始拉曼光譜如圖1所示。
圖1 血液樣本原始拉曼光譜Fig.1 Original Raman spectroscopy of blood samples
對(duì)于給定的N組樣本{(xi,yi)|i∈[1,N]},其中網(wǎng)絡(luò)的輸入向量為xj=[xj 1,xj 2,…,xjn]T∈Rn,期望輸出為tj=[tj 1,tj 2,…,tjm]T∈Rm,隱含層結(jié)點(diǎn)個(gè)數(shù)為M,且激活函數(shù)為g(x)的單隱層前饋神經(jīng)網(wǎng)絡(luò)(single-hidden layer feed-foward neural network,SLFN)可表示為
(1)
式中:ωj為輸入層與隱含層第j個(gè)節(jié)點(diǎn)之間的輸入權(quán)重,ωj=[ωj 1,ωj 2,…,ωji]T;βj為隱含層與輸出層第j個(gè)節(jié)點(diǎn)之間的輸出權(quán)重,βj=[βj 1,βj 2,…,βjk]T;bj為第j個(gè)節(jié)點(diǎn)之間的偏置。
方程可以表示為:
Hβ=T
當(dāng)激活函數(shù)g(x)無(wú)限可微時(shí),在網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)不變的情況下,輸出權(quán)值β可通過(guò)求解式(3)的最小二乘解獲取。
(3)
β的解見(jiàn)式(4):
(4)
式中H+為隱含層輸出矩陣H的廣義雅克比矩陣的逆,可由正交法計(jì)算求得。
ELM的隨機(jī)參數(shù)、輸入權(quán)值和隱含層偏置在很大程度上決定了算法的性能,對(duì)回歸效果有很大的影響。因此,對(duì)這兩個(gè)參數(shù)進(jìn)行篩選和優(yōu)化是提高回歸性能的有效方法。
人工蜂群算法(artificial bee colony algorithm,ABC)是模擬蜂群覓食行為的一種新型智能優(yōu)化算法[14]。在ABC算法中,尋找最佳食物來(lái)源的蜜蜂分為雇傭蜂、觀察蜂和偵查蜂3種類型。雇傭蜂和觀察蜂執(zhí)行局部搜索,偵查蜂控制全局搜索。ABC算法的主要步驟如下:
第一步:初始化階段
初始化蜜源位置的邊界值[Min,Max]。
隨機(jī)初始化邊界處的每個(gè)搜索位置,初始化函數(shù)定義如下:
xij=Min+Rij·(Max-Min)
(5)
式中:Xi為搜索位置,Xi=(xi1,xi 2,…,xiD),其中i=1,2,…,NS,NS為蜜源個(gè)數(shù),D為蜜源位置的維度;Rij是范圍在 [-1,1]之間的隨機(jī)數(shù)。
使用貪婪算法初始化雇傭蜂的初始搜索位置,并在初始化位置矩陣XNS·D中找到最優(yōu)解。
第二步:雇傭蜂階段
雇傭蜂采用下式生成新的解:
vij=xij+φij·(xij-xkj)
(6)
式中:vij為候選解,其中i,k∈{1,2,…,NS},j∈{1,2,…,D}均為隨機(jī)選擇的索引,但是k≠j;φij為 [-1,1]之間的一個(gè)隨機(jī)數(shù)。
利用貪婪算法在最新的候選解和最初的初始解之間選擇最優(yōu)解,然后計(jì)算適應(yīng)度和選擇概率,公式如下:
(7)
式中:fiti為第i個(gè)解Xi的適應(yīng)值;fi為第i個(gè)解Xi的代價(jià)值。
第三步:觀察蜂階段
利用選擇概率pi在所有雇傭蜂的解中選擇一個(gè)新解,公式如下:
(8)
在ABC算法中,全局搜索和局部搜索難以平衡,導(dǎo)致收斂速度較慢或局部最優(yōu)解較早出現(xiàn)。提高收斂速度和避免局部最優(yōu)是改進(jìn)ABC算法的兩個(gè)主要研究方向。
變異操作中最常用的方法是:
(9)
式中:F為變異率,其值在[0,1]之間;r1,r2,r3∈{1,2,…,NP}為隨機(jī)選擇的個(gè)體且r1≠r2≠r3。
交叉操作實(shí)現(xiàn)變異個(gè)體與初代個(gè)體的信息融合,最常用的表現(xiàn)形式為:
(10)
式中:i∈{1,2,…,D}; 交叉率CR∈[0,1]。
選擇操作在交叉后個(gè)體與初代個(gè)體間進(jìn)行貪婪選擇,計(jì)算公式是:
(11)
式中f(*)為適應(yīng)度函數(shù)。
在差分進(jìn)化中,變異算子和交叉算子的變異率F和交叉率CR是人為根據(jù)經(jīng)驗(yàn)直接給出的特定值,在更新進(jìn)化的過(guò)程中保持不變,干涉整體的尋優(yōu)效果,所以考慮對(duì)此固定不變的參數(shù)進(jìn)行調(diào)整,提出自適應(yīng)差分進(jìn)化(self-adaptation differential evolution,SADE)的理念來(lái)減少算法對(duì)此初始固定參數(shù)的依賴,利用當(dāng)前得到的適應(yīng)值的全局最優(yōu)值GBest(fit)和均值間mean(fit)的關(guān)系來(lái)調(diào)節(jié)變異率和交叉率,自適應(yīng)調(diào)整方法見(jiàn)式(12)和式(13)。
(12)
(13)
式中:F0變異率初始值;CR0為交叉率初始值。
自適應(yīng)原理為:當(dāng)目前適應(yīng)值的全局最優(yōu)值與均值相差較大時(shí),變異率及交叉率的數(shù)值隨之減小,使每個(gè)解自身的位置隨機(jī)變異的發(fā)生概率減小、使兩組解之間位置信息的互換程度降低,有助于縮小尋優(yōu)過(guò)程的步長(zhǎng),盡量保留當(dāng)前最優(yōu)的狀態(tài);當(dāng)目前適應(yīng)值的全局最優(yōu)值與均值相差較小時(shí),變異率及交叉率的數(shù)值隨之增大,使每個(gè)解自身的位置隨機(jī)變異的發(fā)生概率增大、使兩組解之間位置信息的互換程度提高,有助于增加尋優(yōu)過(guò)程的步長(zhǎng),能夠在全局范圍內(nèi)大概率更新,避免陷入局部最優(yōu)。此改進(jìn)方法能夠在獲得較優(yōu)解時(shí)縮小不良進(jìn)化的概率,彌補(bǔ)部分早熟現(xiàn)象帶來(lái)的影響。
與遺傳算法(GA)、粒子群算法(PSO)、蟻群算法(ASO)和差分進(jìn)化算法(DE)等常用的優(yōu)化算法相比,傳統(tǒng)的ABC算法在求解一些優(yōu)化問(wèn)題上性能更佳;但它也存在明顯的缺點(diǎn),即經(jīng)典的ABC算法的搜索策略每次只能更新向量中的一個(gè)元素,全局搜索較優(yōu),局部搜索較差。受DE算法搜索策略的啟發(fā),我們提出了ABC算法結(jié)合DE算法協(xié)同搜索機(jī)制,且考慮到變異率和交叉率等固定參數(shù)對(duì)搜索結(jié)果的影響,采用自適應(yīng)理念來(lái)優(yōu)化變異率和交叉率,進(jìn)一步提高了搜索效率,自適應(yīng)差分進(jìn)化人工蜂群算法(SADEABC)算法可以分為以下幾個(gè)階段:
第一階段:初始化
1) 初始化traili=0;
2) 由式(5)生成Xi初始解。
第二階段:雇傭蜂階段
3) 由式(6)生成候選解Vi;
4) 貪婪算法在Xi和Vi中選擇較優(yōu)解;
5) 由式(7)計(jì)算每個(gè)解的適應(yīng)值fiti;
6) 由式(8)計(jì)算每個(gè)解的概率值pi。
第三階段:觀察蜂階段
7) 利用pj選擇一個(gè)解Xj;
8) 由式(9)生成變異后新的候選解Vj,其中F由式(12)得出;
9) 由式(10)生成交叉后新的候選解Uj,其中CR由式(13)得出;
10) 由式(11)在Xj和Uj中選出較優(yōu)解。
第四階段:偵查蜂階段
11) if(traili>LM)then
12) 由式(5)產(chǎn)生的新解替換Xi;
13) Else
14) traili=traili+1
15) end if
16) 記錄當(dāng)前最優(yōu)解BT并重復(fù)至(cycle=MCN)。
其中,MCN為最大迭代次數(shù),LM為最大搜索次數(shù),traili為第i個(gè)解的搜索次數(shù),BT為最優(yōu)解。
ELM的訓(xùn)練目標(biāo)是找到最優(yōu)的輸入權(quán)值矩陣和隱藏的偏置向量,使網(wǎng)絡(luò)的觀測(cè)值和預(yù)測(cè)值之間的誤差最小。因此,輸入權(quán)值和偏置及其數(shù)量對(duì)ELM的性能和精度有很大的影響。在ELM模型中,輸入權(quán)值和隱藏偏置是隨機(jī)分配的,并在訓(xùn)練過(guò)程中保持不變。隨機(jī)參數(shù)可能是一組非最優(yōu)或不必要的值,這使得ELM網(wǎng)絡(luò)需要大量的隱藏節(jié)點(diǎn)來(lái)達(dá)到理想的結(jié)果,從而對(duì)測(cè)試數(shù)據(jù)響應(yīng)緩慢,因此選擇最優(yōu)的輸入權(quán)值和隱藏偏置可以提供更緊湊的ELM網(wǎng)絡(luò)結(jié)構(gòu)和更好的泛化性能。
應(yīng)用SADEABC算法來(lái)訓(xùn)練ELM神經(jīng)網(wǎng)絡(luò),先將采集到的106組血液拉曼光譜數(shù)據(jù)進(jìn)行基線校正、正交信號(hào)校正等預(yù)處理操作,再使用主成分分析法對(duì)光譜數(shù)據(jù)進(jìn)行降維,重復(fù)多次試驗(yàn)后選取主成分?jǐn)?shù)為10;然后將數(shù)據(jù)歸一化,再將處理好的數(shù)據(jù)采用Duplex算法進(jìn)行樣本選擇,劃分出65組作為訓(xùn)練集以及41組作為測(cè)試集,訓(xùn)練集用于訓(xùn)練SADEABC-ELM模型,得出最優(yōu)ELM模型;最后將測(cè)試集數(shù)據(jù)輸入最優(yōu)ELM模型,得到最終的預(yù)測(cè)濃度值。
具體步驟為:
1) 根據(jù)第3.3節(jié)初始化ABC算法參數(shù),ABC迭代次數(shù)=145,蜂群總數(shù)=40;
2) 初始化ELM神經(jīng)網(wǎng)絡(luò),ELM神經(jīng)網(wǎng)絡(luò)隱含層節(jié)點(diǎn)數(shù)為10,激活函數(shù)為Sigmoid函數(shù);
3) 使用ELM算法對(duì)提取到的光譜特征數(shù)據(jù)訓(xùn)練、驗(yàn)證由ABC適應(yīng)度公式計(jì)算出的適應(yīng)值,利用自適應(yīng)差分進(jìn)化算法協(xié)同搜索最優(yōu)值;
4) 當(dāng)網(wǎng)絡(luò)達(dá)到最大迭代次數(shù)時(shí),尋優(yōu)停止并退出,計(jì)算出預(yù)測(cè)值,由評(píng)價(jià)指標(biāo)驗(yàn)證模型的可行性。
對(duì)拉曼光譜建立定量回歸模型,主要以決定系數(shù)R2、校正集均方根誤差RMSEC、預(yù)測(cè)集均方根誤差RMSEP、相對(duì)分析誤差RPD等幾個(gè)常用指標(biāo)來(lái)評(píng)價(jià)定量回歸模型的性能,判斷所建模型的優(yōu)劣。其中R2表征預(yù)測(cè)值與真實(shí)值間擬合程度,數(shù)值在[0,1]范圍內(nèi),越接近于1說(shuō)明預(yù)測(cè)值越接近真實(shí)值,模型擬合越精確;RMSEC、RMSEP表征真實(shí)值與預(yù)測(cè)值之間的偏差,其值越小(越接近于0)表示模型的穩(wěn)健性越強(qiáng);在避免過(guò)擬合的前提下RPD的數(shù)值越高,表征模型精確度越高。
對(duì)血液樣本中的血糖、膽固醇和甘油三酯成分分別建立定量回歸模型進(jìn)行濃度檢測(cè),使用提出及構(gòu)建的自適應(yīng)差分進(jìn)化人工蜂群算法優(yōu)化的極限學(xué)習(xí)機(jī)模型進(jìn)行預(yù)測(cè),統(tǒng)計(jì)各模型的評(píng)價(jià)指標(biāo)見(jiàn)表1。
由表1可知,對(duì)血液拉曼光譜數(shù)據(jù)各組分濃度的回歸預(yù)測(cè),SADEABC-ELM模型所取得的效果優(yōu)于ELM, ABC-ELM和DEABC-ELM模型。SADEABC-ELM模型決定系數(shù)最大,均方根誤差最小,相對(duì)分析誤差最大,表明SADEABC-ELM模型能夠?qū)y(cè)試集樣本做出精確的預(yù)測(cè),回歸擬合度和精度均能達(dá)到較高水平,在所有測(cè)試模型中表現(xiàn)最佳。一般來(lái)說(shuō),模型對(duì)測(cè)試集的回歸擬合度與預(yù)測(cè)精度要低于訓(xùn)練集樣本,且兩者間差異越小則模型的泛化能力越強(qiáng)。觀察表1中4個(gè)模型的評(píng)價(jià)指標(biāo)可以看出,SADEABC-ELM模型的預(yù)測(cè)能力和建模效果差異最小,說(shuō)明SADEABC-ELM模型的魯棒性和泛化性能要優(yōu)于ELM, ABC-ELM和DEABC-ELM模型。實(shí)驗(yàn)所用血液樣本的血糖、甘油三酯和膽固醇定量回歸模型的濃度預(yù)測(cè)情況如圖2~圖4所示。
表1 血液樣本成分評(píng)價(jià)指標(biāo)統(tǒng)計(jì)Tab.1 Evaluation indices of blood sample components
圖2 血液樣本血糖成分定量回歸模型濃度預(yù)測(cè)結(jié)果Fig.2 Concentration prediction of quantitative regression model for blood samples glucose component
圖4 血液樣本膽固醇成分定量回歸模型濃度預(yù)測(cè)Fig.4 Concentration prediction of quantitative regression model for blood samples cholesterol component
通過(guò)以上血液樣本成分的建模分析和數(shù)據(jù)統(tǒng)計(jì)能夠看出,自適應(yīng)差分進(jìn)化人工蜂群算法優(yōu)化的極限學(xué)習(xí)機(jī)(SADEABC-ELM)模型能夠用于拉曼光譜預(yù)測(cè)血液中各成分的濃度值,而且相比于ELM,ABC-ELM和DEABC-ELM模型,所建模型具有較高的穩(wěn)健性和預(yù)測(cè)精度。
本文提出了一種用于血液拉曼光譜分析的SADEABC-ELM回歸模型。首先對(duì)106組血液樣本采集拉曼光譜數(shù)據(jù),采用ELM神經(jīng)網(wǎng)絡(luò)建立血液各組分濃度回歸模型。針對(duì)ELM輸入權(quán)值和隱含層閾值隨機(jī)給定的特點(diǎn),使用ABC算法對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行尋優(yōu)以提升模型的性能;進(jìn)而對(duì)ABC算法仍存在易陷入局部最優(yōu)且搜索精度不高等問(wèn)題,結(jié)合DE算法對(duì)個(gè)體信息和群體信息進(jìn)行指導(dǎo),為改善DE算法的變異率和交叉率憑經(jīng)驗(yàn)設(shè)定的不足,引入了自適應(yīng)調(diào)整的思想,最終本文提出并構(gòu)建了SADEABC-ELM模型用于血液樣本檢測(cè)。結(jié)果表明SADEABC-ELM模型能更好地預(yù)測(cè)血液各組分濃度。相較于其它模型,SADEABC-ELM模型具有更高的預(yù)測(cè)精度和更強(qiáng)的魯棒性,在實(shí)際應(yīng)用中具有較大的優(yōu)勢(shì)。