高西婭,張朱珊瑩*,盧翠翠,蒙泳吉,曹匯敏,鄭冬云,張 莉,謝勤嵐
1.中南民族大學(xué)生物醫(yī)學(xué)工程學(xué)院,湖北 武漢 430074 2.認(rèn)知科學(xué)國家民委重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430074 3.醫(yī)學(xué)信息分析及腫瘤診療湖北省重點(diǎn)實(shí)驗(yàn)室,湖北 武漢 430074
血紅蛋白、葡萄糖、白蛋白、乳酸等人體生理信息的檢測對疾病的預(yù)防和診斷具有重要的意義,因此各種生理參數(shù)的檢測技術(shù)被廣泛研究[1-3]。光譜學(xué)因?yàn)楦哽`敏度、高選擇性以及能夠檢測多種生物醫(yī)學(xué)參數(shù)應(yīng)用比較廣泛[4],其中,紅外光譜技術(shù)是一種無損、快速用于分析生理參數(shù)的指紋技術(shù)[5]。但光譜數(shù)據(jù)背景復(fù)雜,有效信息微弱,建立一個(gè)精準(zhǔn)的定量分析模型,需要提取盡可能多的有效信息并剔除無效和干擾信息,波長優(yōu)選可以去除光譜中無關(guān)波長,提取測量樣品中與目標(biāo)成分相關(guān)的有效信息,解決光譜重疊的問題,并且壓縮信息,提高檢測效率。通常波長選擇可以分為五個(gè)大類,分別為組合區(qū)間偏最小二乘法(synery interval patial least squares,SiPLS)、連續(xù)投影策略(successive projections algorithm,SPA)、波長區(qū)間、智能優(yōu)化算法和模型集群分析策略。
SiPLS是間隔區(qū)間偏最小二乘法的改進(jìn)算法,SiPLS是將光譜區(qū)間等間隔劃分為N個(gè)區(qū)間,對區(qū)間進(jìn)行任意數(shù)量組合,通過交叉驗(yàn)證均方根誤差(RMSECV)選擇最優(yōu)組合方式從而實(shí)現(xiàn)波段優(yōu)選,可以去除無效光譜并盡可能多的保留有效光譜信息。SPA算法通過計(jì)算波長的投影,把投影最大的波長選為特征波長[6-7],選出的特征波長解釋性好,增強(qiáng)定量模型的穩(wěn)定性。
李明等[8]基于近紅外光譜原理,采用SiPLS-PLS模型選擇最佳波長對電子煙油中煙堿含量進(jìn)行預(yù)測,與全譜PLS相比,提高了準(zhǔn)確性。孔慶明等[9]構(gòu)建了多種玉米秸稈粗蛋白定量分析模型,發(fā)現(xiàn)基于SiPLS的特征優(yōu)選方法可快速地測定粗蛋白含量,模型最優(yōu)。有研究提出BiPLS結(jié)合SiPLS的組合權(quán)值預(yù)測模型對水體化學(xué)需氧量(COD)進(jìn)行檢測,與其他模型相比,顯著地提高了預(yù)測精度。李冠穩(wěn)等結(jié)合SPA算法從全波段光譜中篩選特征變量,并采用全波段和特征波段建立模型,提高了模型運(yùn)算效率,模型預(yù)測能力較全波段有所提高[10]。
雖然SiPLS波長選擇方法的光譜有效信息存在連續(xù)性,選擇出的特征波長比其他方法也更加穩(wěn)定;連續(xù)投影算法也可以有效地去除大量的無效光譜,最大程度地降低變量之間的共線性,這是其他算法所不具備的,但SPA在全譜中選擇特征光譜時(shí)計(jì)算量很大,因此為了減小計(jì)算量,提高模型的預(yù)測效率,在計(jì)算SPA之前先利用SiPLS選擇光譜的最優(yōu)波段,可以大大減少SPA的計(jì)算量。本工作采用串聯(lián)思路,提出組合區(qū)間偏最小二乘(SiPLS)和連續(xù)投影算法(SPA)串聯(lián)SiPLS-SPA的波長優(yōu)選算法。波長選擇的串聯(lián)也可以在一定程度上補(bǔ)足算法之間的缺陷,優(yōu)化波長選擇提高波長選擇的能力。最后通過SiPLS-SPA選出的特征波長,建立PLS定量模型。通過實(shí)驗(yàn)驗(yàn)證及結(jié)果分析,該方法可以提高檢測精度,縮短檢測時(shí)間,提高檢測效率,具有較好的優(yōu)越性。
1.1.1 血液樣本數(shù)據(jù)
以人體血液為研究對象,對血液中的血紅蛋白進(jìn)行定量分析,血液樣本采用Karl Norris在2010年IDRC槍戰(zhàn)中收集的近紅外光譜透射數(shù)據(jù)。共190個(gè)樣本,血紅蛋白濃度范圍為10.3~17.3 g·dL-1。
血液樣本的光譜采集使用NIRSystems 6000光譜儀,采集1 100~2 498 nm范圍內(nèi)的光譜數(shù)據(jù),采樣間隔為2 nm,共記700個(gè)波長點(diǎn)。采用垂直光路模式進(jìn)行測量,石英窗口和一個(gè)直徑為2 cm的不銹鋼圓筒做為樣品池。血液樣本通過網(wǎng)址:http://www.idrc-chambersburg.org/shoutout2010.html下載,血液樣本原始光譜圖見文獻(xiàn)[11]。
1.1.2 血紅蛋白仿體溶液數(shù)據(jù)
通過母液配置法配制了150個(gè)血紅蛋白仿體溶液(血紅蛋白溶入10%的intralipid注射液)樣本,血紅蛋白濃度范圍為1~150 g·L-1,配制樣本時(shí)采用了由Thermo超純水系統(tǒng)制備的超純水、華瑞制藥有限公司生產(chǎn)的20%的英脫利匹特脂肪乳注射液(也稱intralipid注射液,即文中的仿體溶液)和Biosharp公司生產(chǎn)的牛血清血紅蛋白,純度為99%。
光譜采集使用型號為Solidspec-3700的UV-VIS-NIR分光光度計(jì)(產(chǎn)于日本津島公司),光譜采集范圍為600~1 800 nm,采樣間隔為1 nm,檢測單元為積分球,采用吸收值的方式測定,重復(fù)測量3次。血紅蛋白仿體溶液樣本原始光譜圖見文獻(xiàn)[11]。
采用SiPLS-SPA獲取優(yōu)選波長,然后建立PLS模型,以此提高預(yù)測模型的準(zhǔn)確性,并縮短預(yù)測時(shí)間,提高效率。建模流程如圖1所示。
圖1 SiPLS-SPA-PLS流程圖
原始光譜數(shù)據(jù)經(jīng)過SiPLS-SPA波長篩選剔除無關(guān)波長變量,減少干擾,并盡可能多地提取測量樣品中與目標(biāo)成分相關(guān)的有效信息。然后將優(yōu)選的特征波長做為PLS模型的輸入以構(gòu)建SiPLS-SPA-PLS預(yù)測模型。建模完成后,用預(yù)測集對模型進(jìn)行檢驗(yàn),依據(jù)評價(jià)指標(biāo)判斷模型的優(yōu)劣。SiPLS方法優(yōu)選出的波長更加穩(wěn)定,連續(xù)投影算法可以有效地去除大量的無效光譜,但SPA在全譜中選擇特征光譜時(shí)計(jì)算量很大,因此在SPA之前先利用SiPLS選擇光譜的最優(yōu)波段,可以減少計(jì)算量,提高效率。最后采用SiPLS-SPA選出的特征波長,建立PLS模型,構(gòu)建SiPLS-SPA-PLS定量模型,并用兩組光譜數(shù)據(jù)驗(yàn)證模型。
為了直觀地判斷建立的模型是否可靠。使用了三種評估參數(shù)進(jìn)行判斷,分別是相關(guān)系數(shù)(R)、均方根誤差(RMSE)以及交叉驗(yàn)證均方根誤差(RMSECV)。如果建立的模型R越接近1,RMSE和RMSECV越接近于0,說明模型越可靠,反之需要對模型進(jìn)行優(yōu)化。
相關(guān)系數(shù)指待測樣品測量值與真實(shí)值之間關(guān)系密切程度的評價(jià)指標(biāo),如式(1)所示
(1)
均方根誤差表示待測樣品測量值與其真實(shí)值之間的誤差,包括校正集均方根誤差(RMSEC)和預(yù)測集均方根誤差(RMSEP),RMSEP如式(2)所示。
(2)
另外,采用留一交叉驗(yàn)證確定PLS模型的最佳主因子數(shù)。交叉驗(yàn)證均方根誤差(RMSECV)數(shù)學(xué)表達(dá)式見式(3)
(3)
式(3)中,n為留一交叉驗(yàn)證分組中預(yù)測集的數(shù)目,RMSEPi為每個(gè)預(yù)測集的均方根誤差。
建模樣本集有血液樣本和仿體溶液樣本。血液樣本集有186個(gè)樣本(剔除異常樣本4個(gè)),由于預(yù)測集的數(shù)量至少為校正集數(shù)量的0.4倍(2∶5)以上才可以保證模型的穩(wěn)定性和可靠性,因此在比例為2∶5~1∶1即比例區(qū)間為[0.4, 1]中對數(shù)據(jù)集劃分比例進(jìn)行優(yōu)化選擇。以RMSEC,RMSEP,RMSECV,Rc,Rp各項(xiàng)指標(biāo)進(jìn)行綜合評價(jià)。
分別采用SPXY法、K_S法、duplex法在不同比例下劃分?jǐn)?shù)據(jù)集,然后通過PLS建模結(jié)果分析劃分方法的優(yōu)劣。通過實(shí)驗(yàn)結(jié)果,優(yōu)選SPXY數(shù)據(jù)集劃分方法,最佳比例為0.48(60/126),即校正集126個(gè),預(yù)測集60個(gè)。
仿體溶液采用了與血液樣本相同的劃分比例0.48,即校正集101,預(yù)測集49,在此前提下對SPXY法、K_S法、duplex法等三種數(shù)據(jù)集劃分方法進(jìn)行比較,優(yōu)選出SPXY作為數(shù)據(jù)集劃分方法。
由于預(yù)處理會(huì)影響特征波長優(yōu)選算法的性能從而影響模型的最終定量分析結(jié)果,在進(jìn)行特征波長優(yōu)選之前,遍歷了SavitzkyGolay一階求導(dǎo)濾波(S_G1)+小波變換、小波變換+S_G1、標(biāo)準(zhǔn)正態(tài)變量變換(SNV)+S_G1三種預(yù)處理方法,得到經(jīng)SNV+S_G1預(yù)處理后再進(jìn)行特征波長優(yōu)選模型的預(yù)測效果最好,因此采用SNV+S_G1的預(yù)處理方法。
2.3.1 血液樣本SiPLS波段優(yōu)選結(jié)果分析
用SiPLS進(jìn)行波段優(yōu)選時(shí)劃分區(qū)間數(shù)和區(qū)間組合數(shù)太大會(huì)引入多余的噪聲,太小則會(huì)忽略某些有效信息顯著區(qū)間從而降低模型精度。為了避免這種情況,將組合數(shù)的范圍設(shè)為2~7組,間隔為1。將區(qū)間劃分?jǐn)?shù)設(shè)為10~17,間隔為1。對不同區(qū)間劃分?jǐn)?shù)下的區(qū)間進(jìn)行組合并一一進(jìn)行建模比較,最終取最小RMSEP對應(yīng)的組合為最佳組合數(shù)和最佳劃分區(qū)間數(shù)。
在SiPLS算法中,劃分區(qū)間數(shù)和區(qū)間組合數(shù)之間沒有確定的規(guī)律可循,如圖2和表1所示,當(dāng)區(qū)間劃分?jǐn)?shù)為14,區(qū)間組合數(shù)為5時(shí),得到的RMSEP值最低,因此確定最佳區(qū)間劃分?jǐn)?shù)為14,最佳區(qū)間組合數(shù)為5組,組合區(qū)間分別是第1,2,6,7和11這5個(gè)區(qū)間。
圖2 不同區(qū)間劃分?jǐn)?shù)在最優(yōu)組合數(shù)下的RMSEP對比圖
表1 不同區(qū)間劃分?jǐn)?shù)下的最優(yōu)區(qū)間組合數(shù)
與全譜PLS建立的模型相比,經(jīng)過SiPLS波段優(yōu)選后無論劃分區(qū)間數(shù)是多少,在最佳組合區(qū)間組合數(shù)下,模型的RMSEP都有下降(見表2),說明優(yōu)選波段會(huì)提升模型的預(yù)測能力。從表2中也可以看到,區(qū)間劃分?jǐn)?shù)為14,區(qū)間組合數(shù)為5時(shí),模型的均方根誤差最低為0.194 7,所以把1 100~1 298,1 600~1 798以及2 100~2 198 nm的波段作為最優(yōu)波段。SiPLS模型從700個(gè)光譜變量中優(yōu)選出250個(gè)變量。
表2 原始光譜在不同區(qū)間劃分?jǐn)?shù)對應(yīng)最佳組合數(shù)下的SiPLS選取的最優(yōu)波段及其PLS建模結(jié)果
2.3.2 血液樣本SPA波段優(yōu)選結(jié)果分析
血液樣本利用SPA法在全譜波段中篩選出的最優(yōu)特征波長分布位置如3所示,共有16個(gè)。因?yàn)榻t外光譜的吸光度是待測樣本中所有組成成分吸光度的疊加,從圖3中看出存在明顯的吸收峰如1 400~1 600,1 900~2 100和2 400~2 500 nm三個(gè)波段,這些吸收峰為包含目標(biāo)定量成分在內(nèi)的所有物質(zhì)吸光度的總和,也包括干擾成分。在對血紅蛋白成分進(jìn)行定量時(shí),選擇出的特征波長大多數(shù)在光譜中較為平滑的位置,說明此位置含有血紅蛋白的特征吸收峰。吸收峰越大,吸收強(qiáng)度越大。SPA在全譜中選擇的特征波長大部分分布在光譜相對平滑的部分,只有1 452,1 958,2 080,2 416,2 448和2 498 nm這幾個(gè)特征波長處于波譜較大的吸收峰上。
圖3 血液中SPA選擇的特征波長分布
2.3.3 血液樣本SiPLS-SPA波段優(yōu)選結(jié)果分析
SiPLS-SPA波段優(yōu)選是利用SPA方法在SiPLS算法篩選出的250個(gè)變量中進(jìn)一步篩選。SPA選擇的變量數(shù)變化時(shí),模型的預(yù)測能力也隨之變化,圖4顯示血液樣本RMESP隨SPA選擇變量數(shù)的變化,在變量數(shù)為7之前,RMSEP急劇下降,變量數(shù)在7~15之間整體呈下降趨勢,變量數(shù)為15個(gè)之后RMSEP的值變換減緩且不明顯,變量數(shù)為28時(shí)選擇出的特征波長最優(yōu)。
圖4 血液樣本RMESP隨SPA選擇變量數(shù)的變化圖
血液樣本經(jīng)過SiPLS優(yōu)選后的特征波長分布如圖5所示。在圖5的基礎(chǔ)上,也就是血液樣本經(jīng)過SiPLS優(yōu)選后,再經(jīng)過SPA算法選擇出的28個(gè)最優(yōu)特征波長,如圖6所示,分別為1 144,1 190,1 210,1 226,1 260,1 264,1 606,1 638,1 656,1 662,1 670,1 676,1 690,1 694,1 706,1 712,1 718,1 730,1 746,1 752,1 772,1 790,1 798,2 112,2 120,2 148,2 156和2 158 nm。大致分布在1 144~1 264,1 606~1 798和2 112~2 158 nm三個(gè)波段。經(jīng)過SiPLS和SiPLS-SPA篩選出來的特征波長剛好處于較為平滑的波段區(qū)域,在這些區(qū)域可以看到所選擇出來的特征波長區(qū)域剛好處于有微小吸收峰的位置。證明這兩種方法可以較為準(zhǔn)確地對波段進(jìn)行篩選。
圖5 血液樣本SiPLS選擇的特征波長分布圖
圖6 血液樣本SiPLS-SPA選擇的特征波長分布圖
分別用SiPLS-SPA-PLS,SiPLS,SPA-PLS和PLS建立定量模型,通過預(yù)測集的相關(guān)系數(shù)和均方根誤差進(jìn)行比較,從表3中可以看出與全譜PLS建模相比,經(jīng)過特征波段優(yōu)選后定量分析結(jié)果全部優(yōu)于全譜分析效果。SiPLS的RMSEP比全譜下降了29.1%,但變量數(shù)有250個(gè),算法復(fù)雜性高。SPA-PLS雖然變量數(shù)只有16個(gè),但RMSEP偏高。只有SiPLS-SPA篩選出的波長建模后效果最優(yōu),RMSEP比全譜下降了32.8%,預(yù)測集相關(guān)系數(shù)提高了1.2%,且變量數(shù)只有28個(gè),算法復(fù)雜度降低??傊?,SiPLS-SPA-PLS模型可以更加準(zhǔn)確地優(yōu)選出特征波長,提高模型預(yù)測能力和效率。
表3 血液樣本不同方法波段優(yōu)選后PLS建模結(jié)果對比
在血紅蛋白仿體溶液樣本中,利用SiPLS進(jìn)行波段優(yōu)選時(shí),將組合數(shù)范圍設(shè)為2~8,間隔為1。將區(qū)間劃分?jǐn)?shù)設(shè)為10~25,間隔為1。最終確定血紅蛋白仿體溶液樣本的最佳區(qū)間劃分?jǐn)?shù)為12,最佳區(qū)間組合數(shù)為8。利用SiPLS方法可以在1201個(gè)波長變量中篩選出800個(gè)變量。
利用SiPLS-SPA方法對血紅蛋白仿體溶液進(jìn)行特征波長篩選時(shí),RMESP隨SPA選擇變量數(shù)變化趨勢如圖7所示,變量數(shù)為41時(shí)優(yōu)選出的特征波長最優(yōu)。即SiPLS-SPA可以在800個(gè)光譜變量中優(yōu)選出41變量,去除大量無關(guān)波長變量。
圖7 血紅蛋白仿體溶液樣本RMESP隨SPA選擇變量數(shù)的變化圖
SiPLS-SPA在血紅蛋白仿體溶液中選擇出的41個(gè)特征波長如圖8所示,大致分布在600~900,1 018~1 390和1 600~1 700 nm波段內(nèi)。
圖8 血紅蛋白仿體溶液SiPLS-SPA選擇的特征波長分布圖
對比SiPLS-SPA-PLS,SiPLS,SPA-PLS和PLS在血紅蛋白仿體溶液中建立的模型,根據(jù)預(yù)測集相關(guān)系數(shù)和均方根誤差RMSEP從表4中可以看到,SiPLS-SPA-PLS法仍然優(yōu)于SPA-PLS,SiPLS和全譜PLS,是最優(yōu)的預(yù)測模型,與血液中的結(jié)果相同。SiPLS的RMSEP比全譜下降了35.2%,但變量數(shù)有800個(gè),算法復(fù)雜性高。SPA-PLS變量數(shù)只有8個(gè),但是RMSEP偏高。SiPLS-SPA篩選出的波長建模后的RMSEP比全譜下降了40%,預(yù)測集相關(guān)系數(shù)提高了0.3%,且變量數(shù)只有41個(gè),算法復(fù)雜度降低。進(jìn)一步說明SiPLS-SPA這種波段優(yōu)選方法能夠較好地選擇出特征波長,提高模型的預(yù)測準(zhǔn)確性,SiPLS-SPA-PLS定量模型可以實(shí)現(xiàn)對血紅蛋白的精準(zhǔn)定量分析。
表4 血紅蛋白仿體溶液不同方法波段優(yōu)選后PLS建模結(jié)果對比
由于血液樣本的光譜波長范圍為1 100~2 498 nm,血紅蛋白仿體溶液光譜數(shù)據(jù)范圍為600~1 800 nm,為了所比較的光譜區(qū)間保持一致性,表5中的光譜數(shù)據(jù)范圍選取的是兩個(gè)樣本在重疊光譜波段(1 100~1 800 nm)優(yōu)選的特征波長??紤]不同樣本設(shè)備不同造成的差距,從表5中可以看到,SiPLS-SPA方法在兩種樣本中篩選出來的血紅蛋白特征波長大致分布在相同區(qū)間,且并不是在吸光度較大的峰值區(qū)域,說明吸光度較大的峰值區(qū)域并不一定能更好地預(yù)測,SiPLS-SPA法能夠比較穩(wěn)定且準(zhǔn)確地篩選出最優(yōu)波長,從而提高定量模型的預(yù)測精度。
表5 兩個(gè)樣本SiPLS-SPA篩選出的波長分布
針對血紅蛋白精準(zhǔn)檢測問題,以血液樣本和血紅蛋白仿體溶液樣本為研究對象,采用SPXY樣本劃分方法,SNV+S_G1數(shù)據(jù)預(yù)處理方法,利用SiPLS-SPA特征波長優(yōu)選后建立PLS定量模型。結(jié)果表明:(1)構(gòu)建全譜PLS,SPA-PLS,SiPLS以及SiPLS-SPA-PLS四種血紅蛋白預(yù)測模型,兩種樣本數(shù)據(jù)的處理結(jié)果顯示,SiPLS-SPA-PLS模型都是最優(yōu)的。(2)將SiPLS和SPA兩種波段優(yōu)選算法串聯(lián)構(gòu)成SiPLS-SPA的波長優(yōu)選方法,從血液樣本700個(gè)光譜變量中提取出28個(gè)有效特征變量,從仿體溶液1 201個(gè)光譜變量中提取出41個(gè)變量,可以有效提取變量,減少無關(guān)波長,去除無用噪聲,提高檢測速度和效率,并提高預(yù)測精度。(3)SiPLS-SPA波長優(yōu)選方法在兩種樣本中篩選出來的血紅蛋白特征波長大致分布在相同區(qū)間,且并不是在吸光度較大的峰值區(qū)域,說明吸光度較大的峰值區(qū)域并不一定能更好地預(yù)測,該方法能夠比較穩(wěn)定且準(zhǔn)確地篩選出特征波長。