路皓翔, 張 靜, 李靈巧*, 劉振丙, 楊輝華,3, 馮艷春, 尹利輝
1. 桂林電子科技大學計算機與信息安全學院, 廣西 桂林 541004 2. 桂林電子科技大學商學院, 廣西 桂林 541004 3. 北京郵電大學人工智能學院, 北京 100876 4. 中國食品藥品檢定研究院, 北京 100050
近紅外光譜分析憑借其便捷且不存在污染的特點自20世紀80年代以來, 被廣泛應用在各個領域[1-2]。 樣品光譜數(shù)據(jù)的重疊以及特征吸收區(qū)域不明顯, 導致全譜區(qū)建立的分析模型準確度和可靠性較差[3-5]。 故在利用樣品光譜數(shù)據(jù)建立穩(wěn)定性較強的分析模型時, 首要做的是篩選出能夠表征樣品特征的特征波長[6]。 在國外, Wang等[7]以樣品光譜數(shù)據(jù)建立的偏最小二乘回歸模型回歸系數(shù)為依據(jù)的無信息變量消除法實現(xiàn)了樣品光譜數(shù)據(jù)中特征波長的篩選。 Tsakiridis等[8]采用堆疊的遺傳算法選擇波長解決光譜數(shù)據(jù)共線性問題。 在國內(nèi), 王坤等[9]采用蒙特卡羅-無信息變量消除-連續(xù)投影算法對樣品光譜數(shù)據(jù)進行特征波長選擇。 李鑫星等[10]采用主成分分析法結合連續(xù)投影算法對樣品的特征光譜進行篩選。 趙環(huán)[11]等對樣品光譜數(shù)據(jù)二進制矩陣采樣法進行采樣, 然后根據(jù)變量的頻率及偏最小二乘法(partial least squares, PLS)的回歸系數(shù)求解出每個光譜波長的貢獻率, 進而對樣品光譜數(shù)據(jù)的全波長進行篩選。 傳統(tǒng)的變量篩選方法一般采用回歸系數(shù)作為變量篩選的依據(jù), 會導致篩選出來的變量不能完全表征樣本特征, 從而影響分析模型的性能。
近些年來, 機器學習憑借其較好的分析能力在各個領域也有了極為廣泛的應用[12-13]。 國內(nèi)外的一些專家學者嘗試將機器學習算法用于樣品光譜最佳波長的篩選從而提高近紅外光譜分析模型的準確性和可靠性[14-16]。 文中結合競爭性自適應重加權采樣(competitive adaptive reweighted sampling, CARS)和最小角回歸(least angle regression, LAR)提出了一種自適應最小角回歸波長篩選方法, 用于解決樣品光譜數(shù)據(jù)譜區(qū)重疊及共線性問題。 首先采用LAR對樣品光譜數(shù)據(jù)進行篩選; 然后利用CARS進一步優(yōu)選樣品光譜波長; 最后采用藥品的近紅外光譜數(shù)據(jù)進行相應的定量定性分析, 實驗結果表明經(jīng)過波長篩選后的藥品近紅外光譜分析模型預測更為準確。
LAR通過將變量中無關變量的系數(shù)設為0實現(xiàn)有用變量的選擇[17]。 其模型為
(1)
其中, (xi1,xi2,…,xip)為樣本i的波長, yi為樣本的響應,βi為樣本i第j個波長的系數(shù), t≥0為約束值。 在t→0, LAR通過將對樣本i影響較小的波長的系數(shù)βj置為0, 篩選出最能表征樣本i屬性的波長。
CARS利用自適應重采樣依據(jù)求解的回歸系數(shù)絕對值的大小來進行變量的選擇[17]。 假設樣本光譜數(shù)據(jù)為Xm×p, 其得分矩陣記為T, 則
T=Xm×pW
(2)
其中W為組合系數(shù), 樣本的目標響應變量Ym×1與樣品光譜Xm×p之間滿足
Y=Tc+e
(3)
式(3)中, c為Y對T進行回歸分析的回歸系數(shù),e為模型的預測殘差。 將式(2)代入式(3)中得
Y=XWc+e=Xb+e
(4)
式(4)中, b=Wc=[b1, b2, …, bp]表示相對于原始變量的回歸系數(shù)向量。 |bi|為b中第i個波長對目標響應變量Y的貢獻能力, 其值越大表示相應的波長越重要。 采用經(jīng)過標準化處理的回歸系數(shù)對各波長的重要性進行評價, 定義樣品波長的權重為
(4)
根據(jù)ωi的值對樣品變量進行篩選, 其值越大說明該波長的貢獻越大。
假設樣本的光譜數(shù)據(jù)為X={xi1, xi2, …, xil}, LAR-CARS篩選光譜波長的具體過程為:
Stage Ⅰ: LAR變量初篩
(1) 求解回歸變量矩陣βj。 將樣品的光譜數(shù)據(jù)X={xi, yi}送入LAR模型中, 遵循最小化AIC原則, 對回歸系數(shù)進行求解進而構造出回歸變量矩陣。 該矩陣中1表示該波長與樣本i相關性較高, 0表示該波長與樣本i相關性較低。
(2) 變量初篩。 LAR模型利用變量矩陣求解樣品光譜的特征波長, 即,
(6)
Stage Ⅱ: CARS變量再篩
(7)
貢獻力矩陣bi可以表示為
(8)
進而通過該矩陣求解各個波長相應的權重ωi, 式(8)代入式(4)中得,
(9)
為了評價LAR-CARS波長選擇方法的有效性, 分別采用不同樣品的光譜數(shù)據(jù)進行定量定性分析, 并采用全波長(FULL), LAR, CARS, SPA和UVE作為對比方法。
2.1.1 實驗數(shù)據(jù)
用由國際漫反射會議公開的藥品近紅外光譜數(shù)據(jù)為例評價LAR-CARS模型。 其中, 藥品樣品包含655個藥品的近紅外光譜信息(155條作為模型校正集, 460條作為測試集, 40條作為驗證集), 這些光譜由Foss NIR Systems光譜儀以2 nm為間隔在600~1 898 nm范圍內(nèi)測得。 具體信息如表1所示。
表1 實驗樣品詳細信息
2.1.2 數(shù)據(jù)預處理
藥品樣品的近紅外光譜信息如圖1所示。 從圖中可以看出受環(huán)境及儀器的影響通常采集的樣品和藥品光譜數(shù)據(jù)中包含電噪聲、 雜散光等, 這些信息會對模型的建立產(chǎn)生消極的影響。 故采用S-G卷積平滑法(窗口大小17, 多項式導數(shù)為3)對樣品光譜數(shù)據(jù)進行平滑化處理, 以消除噪聲、 雜散光等信息。
圖1 藥品的近紅外光譜
2.1.3 變量篩選結果
LAR, CARS, UVE, SPA和LAR-CARDS在藥品數(shù)據(jù)集上篩選出來的變量分布為152, 76, 198, 103和51。 圖2直觀的表示出了不同的變量篩選方法在藥品數(shù)據(jù)集上篩選出來特征變量在全譜區(qū)的分布。
圖2 各方法在藥品數(shù)據(jù)集上篩選出來的變量分布
實驗中不同變量選擇方法對樣本的波長篩選存在隨機性。 以藥品數(shù)據(jù)集一次實驗為例, 由圖2可看出LAR篩選出來的波長主要分布在1 150~1 200, 1 450~1 550和1 750~1 850 nm范圍內(nèi), CARS篩選出來的波長主要分布在1 200~1 250, 1 450~1 500和1 650~1 750 nm范圍內(nèi), LAR-CARS篩選出來的波長主要分布在1 150~1 250, 1 450~1 550和1 650~1 700 nm范圍內(nèi), 基本與LAR和CARS篩選出來的變量重合, 但其篩選出的變量更少。
2.1.4 PLS回歸結果分析
以表1中藥品光譜數(shù)據(jù)為例建立藥品近紅外光譜定量分析模型對LAR-CARS的性能進行分析評估, 并與全波長(記為FULL), LAR, CARS, UVE和SPA進行對比。 在利用PLS建立預測模型時采用RMSEC最小來確定樣品主成分數(shù), 并從校正決定系數(shù)、 校正均方根誤差、 預測決定系數(shù)和預測均方根誤差四個方面評估各模型。 預測決定系數(shù)越小、 預測均方根誤差越大表明近紅外光譜分析模型的性能越穩(wěn)定。 PLS回歸模型在藥品數(shù)據(jù)集上經(jīng)過不同波長選擇方法篩選的樣品波長數(shù)、 PLS回歸分析的主成分數(shù)以及訓練集和測試集的決定系數(shù)和均方根誤差結果如表2所示。 從表2中可看出, 采用各模型篩選的波長建立的藥品近紅外光譜定量分析模型較全波長建立的模型具有更高的預測精度且用于建立模型的波長數(shù)較少。
表2 PLS回歸模型用不同波長選擇方法的預測效果
在藥品樣品的分析模型中, 經(jīng)過LAR-CARS篩選后建立的PLS分析模型所需波長數(shù)最少為51個, 同時PLS模型具有最高的預測標準偏差和預測校正系數(shù)分別為0.929 1和4.667 4。 LAR和UVE所需要的波長數(shù)最多分別為152和198個, 但其預測標準偏差較全波長較低較LAR-CARS較高, 預測決定系數(shù)較全波長較高但是較LAR-CARS較低, 說明該模型的性能較LAR-CARS較差。
2.2.1 實驗數(shù)據(jù)
采用中國食品藥品檢定研究院利用Bruker Matrix光譜儀測定的不同生產(chǎn)廠家生產(chǎn)的頭孢克肟片光譜數(shù)據(jù)驗證LAR-CARS方法的有效性。 其中光譜儀的采樣區(qū)間設置為4 000~11 995 cm-1, 采樣間隔為4 cm-1, 每個頭孢克肟片光譜包含2 074個特征波長。 頭孢克肟片樣品的詳細信息如表3所示。
表3 頭孢克肟片近紅外光譜數(shù)據(jù)集數(shù)據(jù)統(tǒng)計
2.2.2 數(shù)據(jù)預處理
由于頭孢克肟片藥品的光譜數(shù)據(jù)存在偏移, 為了增大頭孢克肟光譜樣品數(shù)據(jù)的識別度、 減少樣品譜圖之間的信息重疊, 采用歸一化、 平滑求導及標準正態(tài)變量多階段數(shù)據(jù)預處理方法對其進行處理, 預處理后的光譜信息如圖3所示。 可以看出經(jīng)過預處理后的頭孢克肟片的光譜的辨識度增加, 更有利于藥品的鑒別。
圖3 頭孢克肟片的原始近紅外光譜
2.2.3 定量結果分析
將江蘇正大生產(chǎn)的藥品光譜數(shù)據(jù)作為正類藥品, 其他三個廠商生產(chǎn)藥品的作為負類藥品。 采用分類精度、 預測時間以及預測標準偏差作為各個模型性能的衡量指標。
(1) 與其他模型比較
為了進一步驗證LAR-CARS在近紅外光譜定性分析模型中的性能, 采用SVM, ELM, SWELM和BP作為對比方法進行鑒別實驗, 將測試集按0.1~0.9的比例從藥品近紅外光譜數(shù)據(jù)集中隨機抽取數(shù)據(jù)構建不同規(guī)模的訓練集, 并對SVM, ELM, SWELM和BP各模型進行配置。 結果如表4所示。 從表中可看出無論訓練集的大小如何, 經(jīng)過LAR-CARS篩選波長并采用SVM對藥品鑒別較全波長建立SVM模型的預測準確度有了較大的提高, 尤其當比例越大LAR-CARS-SVM的預測精度越高, 最高達100%。 之所以LAR-CARS-SVM較SVM的鑒別精度有提高, 是因為LAR-CARS方法濾除了樣品光譜數(shù)據(jù)中無關的波長。 ELM和SWELM表現(xiàn)出的分類能力一致, 表明激活函數(shù)對模型的分類精度影響不大。 BP神經(jīng)網(wǎng)絡較ELM和SWELM具有較高的分類準確度, 這說明BP神經(jīng)網(wǎng)絡較ELM和SWELM具有較強的建模能力。
表4 不同比例下各模型的分類準確度
在運行時間方面, 從表4中可看出ELM, SVM, SWELM和LAR-CARS-SVM模型較BP神經(jīng)網(wǎng)絡訓練時間均更短, 這是因為BP神經(jīng)網(wǎng)絡需要通過多次迭代對網(wǎng)絡參數(shù)進行反向微調(diào)從而求解出最優(yōu)模型, 然而ELM和SWELM屬于淺層神經(jīng)網(wǎng)絡無需參數(shù)的反向微調(diào)、 SVM則無需對參數(shù)的迭代更新。 此外經(jīng)LAR-CARS篩選后用于建立SVM模型的時間較采用全波長建立模型的時間較短, 這主要是LAR-CARS篩選后用建立模型的波長數(shù)較少, 減少了運算量使得LAR-CARS-SVM較SVM模型的運行時間更短。
以預測標準偏差作為模型穩(wěn)定性的評價指標, ELM, SVM, SWELM, LAR-CARS-SVM模型在不同規(guī)模訓練集的預測標準偏差如圖4所示。 從圖中可看出, 經(jīng)過LAR-CARS變量篩選后建立的SVM藥品鑒別模型較全波長建立的SVM模型具有更強的穩(wěn)定性, 說明LAR-CARS可有效刪除不利于模型穩(wěn)定性的樣品波長。 BP神經(jīng)網(wǎng)絡的穩(wěn)定性次之、 SWELM和ELM表現(xiàn)出最差的穩(wěn)定性。
圖4 不同比例訓練集下各模型的預測標準偏差
(2)變量篩選結果
為了更加直觀的表示出LAR, CARS, LAR-CARS, SPA和UVE變量篩選方法篩選出來的變量分布, 以比例為0.7訓練集為實例進行實驗。 LAR, CARS, LAR-CARS, SPA和UVE在訓練集上篩選出來的變量數(shù)分別為70, 46, 40, 100和130, 其在全譜區(qū)的分布如圖5所示。 由于波長在選擇過程中會存在些許誤差。 以頭孢克肟片光譜數(shù)據(jù)的一次實驗為例, 由圖5可以看出LAR篩選出來的波長主要分布在8 050~9 050和10 800~11 300 nm范圍內(nèi), CARS篩選出來的波長主要分布在8 050~9 060和10 500~11 200 nm范圍內(nèi), LAR-CARS篩選出來的波長主要分布在8 050~9 050和11 000~11 500 nm范圍內(nèi), 可看出LAR-CARS篩選出來的波長變量基本和上述LAR和CARS篩選出來的波長變量吻合。
圖5 各方法在頭孢克肟片數(shù)據(jù)集中篩選出來的變量分布
(3)與已有波長選擇方法比較
為了說明LAR-CARS波長篩選方法的有效性, 分別采用FULL, LAR, CARS, SPA和UVE變量選擇方法作為對比方法, 然后將不同變量篩選法篩選出來的樣品的特征波長點送入ELM, SWELM和SVM進行真假藥品的鑒別。 在訓練集占頭孢克肟片光譜數(shù)據(jù)的比例為0.7時的實驗結果如表5所示。
表5 不同變量選擇方法下各模型的分類精度
從表5中可看出采用全波長建立的ELM, SWELM和SVM模型的分類精度較采用變量篩選選擇的變量建立的模型低, 這是由于樣品的近紅外光譜數(shù)據(jù)包含了隨機噪聲和對表征樣品特征相關性較差的波長, 這些波長對于鑒別模型的建立起著消極的影響, 而變量篩選能夠篩選出更能表征樣品特征的波長并將無關的波長刪除。 與SPA, UVE相比, 用本方法篩選的樣品光譜數(shù)據(jù)的波長建立的ELM, SWELM和SVM模型具有更優(yōu)良的性能。
近紅外光譜分析應用廣泛, 但樣品光譜數(shù)據(jù)中通常包含較多的共線性或低信噪比波長, 嚴重影響了近紅外光譜分析模型的準確性。 針對這一問題, 采用LAR結合CARS提出了一種新的變量選擇方法, 并以藥品數(shù)據(jù)集的定量和定性分析為例對該方法進行了評價。 首先, 利用PLS模型建立了藥品近紅外光譜定量回歸分析模型, 實驗結果表明經(jīng)過LAR-CARS篩選出的變量建立的PLS模型具有更優(yōu)的性能。 接著, 以四個不同廠家生產(chǎn)的頭孢克肟片光譜數(shù)據(jù)為例構建了不同廠商藥品近紅外光譜的定性分析模型, 采用不同比例的訓練驗證LAR-CARS方法的有效性, 結果表明, 采用LAR-CARS篩選出來的變量建立的分類模型具有更高的分類準確度。 綜上, LAR-CARS方法能夠很好的篩選出樣品的有效波長, 建立的近紅外光譜分析模型具有更強的應用性和魯棒性。