王 磊,覃 鴻*,李 靜,張小波,于麗娜,李衛(wèi)軍,黃璐琦
1. 中國科學院半導體研究所高速電路與神經(jīng)網(wǎng)絡(luò)實驗室,北京 100083 2. 中國科學院大學材料科學與光電子工程中心,微電子學院,北京 100049 3. 中國中醫(yī)科學院中藥資源中心道地藥材國家重點實驗室培育基地,北京 100700 4. 中國中醫(yī)科學院道地藥材國家重點實驗室培育基地,北京 100700
寧夏枸杞(Lycium barbarum)是茄科枸杞屬的一種,果實稱為枸杞子[1]。 近現(xiàn)代醫(yī)學研究表明,枸杞子具有抗氧化、抗疲勞、降血脂、降血糖等多方面的藥理功效[2]。 寧夏枸杞是《中華人民共和國藥典》中唯一列為藥品的枸杞品種[3]。 寧夏產(chǎn)地的枸杞由于色艷,皮薄,肉厚,甘甜,活性成分多以及藥用價值高而受到消費者的青睞。 但是品質(zhì)優(yōu)良的枸杞子受制于種植面積,產(chǎn)量有限,市場流通的商品來源無法確保,致使枸杞子市場混亂,以其他產(chǎn)地假冒寧夏產(chǎn)地的現(xiàn)象頻發(fā)[4]。
鑒別枸杞子的傳統(tǒng)方法有性狀鑒別、顯微鑒別、化學成分分析鑒別、分子生物學技術(shù)鑒別等,但是這些方法周期都比較長且具有破壞性,不能批量鑒別[5-6]。 王歡[7]等研究了不同產(chǎn)地寧夏枸杞藥用活性成分的差異,發(fā)現(xiàn)不同產(chǎn)地的枸杞多糖及甜菜堿含量存在顯著性差異。 曲云卿[8]等研究了不同產(chǎn)地枸杞類胡蘿卜素含量的差異。 不同產(chǎn)地中枸杞成分含量的不同,可以反映出枸杞內(nèi)部含氫基團對近紅外譜區(qū)具有不同的吸收強度,以上研究為使用近紅外光譜建立枸杞產(chǎn)地鑒別模型提供了依據(jù)。 然而枸杞子樣本較小、形狀不規(guī)則、成分分布不均勻,近紅外光譜鑒別通常需要把樣品碾碎成粉末,無法做到無損批量地采集光譜數(shù)據(jù)。 近紅外高光譜圖像結(jié)合了近紅外光譜和圖像,包含豐富的空間信息和光譜信息,可以實現(xiàn)無損批量地采集非均勻樣本光譜信息。
采用近紅外高光譜圖像技術(shù)進行枸杞產(chǎn)地的鑒別,為建立快速有效的枸杞產(chǎn)地鑒別模型提供實驗依據(jù)。 通過比較ZCA白化[9]預處理和常用的標準化預處理,采用偏最小二乘降維[10-11]算法對輸入數(shù)據(jù)進行降維,驗證SVM[12],LDA[13],Softmax[14]不同分類器性能表現(xiàn),提出了在當前應用場景下快速有效鑒別枸杞產(chǎn)地的方法。
樣品的品種都為寧杞1號,產(chǎn)地分別為內(nèi)蒙新安鎮(zhèn)、甘肅靖遠縣、青海都蘭縣、新疆精河縣和寧夏銀川市。 樣品從產(chǎn)地收集,每個地方采集330個樣本,統(tǒng)一烘干保存。 使用近紅外高光譜圖像設(shè)備分三批采集數(shù)據(jù),每批每個產(chǎn)地采集110個樣本的高光譜信息。 接下來使用隨機采樣的方法分割訓練集、驗證集和測試集。 從第一批和第二批中每個產(chǎn)地隨機選取150個樣本作為訓練集,剩下的作為驗證集,第三批數(shù)據(jù)單獨作為測試集,該方法重復50次用來觀察模型穩(wěn)定性。
采集數(shù)據(jù)用的是實驗室級別的高光譜相機,相機是Norsk Elektro Optikk AS(NEO)公司研發(fā)的HySpex系列的SN3124 SWIR-384。 光譜范圍是948.72~2 512.97 nm,波段間隔5.45 nm,總共288個波段。 采集數(shù)據(jù)參數(shù)設(shè)置包括高光譜成像儀的鏡頭與枸杞子距離為20~30 cm; 平臺移動速度為1.5 mm·s-1; 積分時間4 500。 高光譜圖像采集系統(tǒng)示意圖如圖1所示。
圖1 高光譜圖像系統(tǒng)示意圖
批量的把樣本按圖1所示擺放在移動平臺上,樣本之間沒有重疊,高光譜設(shè)備采集數(shù)據(jù),數(shù)據(jù)分析全部采用MATALB 2017b。
枸杞在近紅外譜區(qū)吸收較弱的波段,對應的反射率相對較大,可以體現(xiàn)出樣本與黑板之間更明顯的差異性,有利于通過圖像處理分割出樣本位置。 選擇1 107 nm波段進行圖像處理操作,然后進行掩模處理。 閾值分割可以從背景中分離出樣本,通過公式(1)計算樣本平均反射率,Iraw其中表示樣本光譜反射值,Idark表示黑板光譜反射值,Iwhite表示白板光譜反射值,Inew為計算得到的光譜反射率。
(1)
1.4.1 ZCA白化
采集的高光譜圖像光譜波段之間具有很強的相關(guān)性,常用的去均值和標準化(特征去均值除方差)等方法都是基于高斯歸一化去平移或縮放原始數(shù)據(jù)的特征,并沒有有效的去除特征之間的相關(guān)性。 因此,采用白化讓原始數(shù)據(jù)經(jīng)過一個線性變換得到的新數(shù)據(jù)的協(xié)方差矩陣為單位矩陣來去除相關(guān)性。 白化的方式并不唯一,本實驗選擇了ZCA白化得到接近原始數(shù)據(jù)的新特征。 ZCA白化的算法實現(xiàn)步驟如下:
(3) 接下來對Σ進行奇異值分解得到左特征向量矩陣U和特征值矩陣S。
1.4.2 偏最小二乘降維(PLSDR)
近紅外高光譜圖像系統(tǒng)波段較多,數(shù)據(jù)具有多維度的特點。 對輸入數(shù)據(jù)降低維度可以使后續(xù)的分類器設(shè)計在計算上更容易實現(xiàn)。 常用的主成分分析(principal component analysis, PCA)在映射過程中只是保留數(shù)據(jù)集中對方差貢獻較大的特征,映射時沒有利用數(shù)據(jù)內(nèi)部的分類信息,所以降維后的特征在分類器的表現(xiàn)可能相對較差。 PLSDR結(jié)合PCA的優(yōu)點,使得原始數(shù)據(jù)的隱藏特征和預測變量具有最大相關(guān)性,可以減少原始數(shù)據(jù)中與預測變量無關(guān)的信息,使新的隱藏特征更有利于分析,該方法在光譜數(shù)據(jù)處理中應用十分廣泛。
定義矩陣T=[t1,…,tK]∈Rm×K表示m個觀測樣本的K個隱藏特征,T與預處理后的數(shù)據(jù)X的關(guān)系表述如式(2)。
T=XW
(2)
W=[w1,…,wk]∈Rn×K是線性映射矩陣。 第一個隱藏特征為t1=Xw1,通過拉格朗日乘子法求解公式(3)可以得到w1=XTY/‖XTY‖。
(3)
基于第一個隱藏特征,X和Y可以按照式(4)做如下分解。
(4)
式中,p1和q1可以通過最小二乘算法求解,殘差矩陣E,F可以作為新的X和Y,通過迭代繼續(xù)求解新的隱藏特征。
要對多個產(chǎn)地進行分類,一般有one vs all和one vs one投票的方法進行多分類。 為了避免分界面具有不確定性區(qū)域、投票時票數(shù)相同以及增加模型復雜度等問題,采用了基于統(tǒng)計學中最大似然估計框架的Softmax進行多分類,同時和SVM和LDA模型做比較。
不同產(chǎn)地的寧夏枸杞的全波段(948~2 512 nm)平均反射率光譜如圖2所示。 通過圖2可以看出不同產(chǎn)地的平均曲線趨勢相似,但是每個波段對應反射率值不同,代表內(nèi)部的化學成分含量不同。 相似性可以體現(xiàn)在它們都是寧夏枸杞這一品種; 差異性的影響因素可能比較多,包括地理環(huán)境,天氣,種植培育過程等。
圖2 不同產(chǎn)地的枸杞的全波段(948~2 512 nm)平均反射率
Fig.2MeanreflectancespectraofLyciumbarbarumfromdifferentregionsinthefull-bands(948~2512nm)
NM: Inner Monglia; GS: Gansu; QH: Qinghai;
XJ: Xinjiang; NX: Ningxia
訓練集經(jīng)過ZCA白化預處理后,對青海和寧夏兩個產(chǎn)地的數(shù)據(jù)取平均得到圖3。 從圖3可以清楚的看出經(jīng)過ZCA白化處理后的數(shù)據(jù)變的具有離散性,放大了每一個波段的差異性,同時去除了原始數(shù)據(jù)不同波段之間的相關(guān)性,結(jié)合ZCA白化的理論分析表明ZCA白化可以很好的去除特征之間的相關(guān)性。
圖3 ZCA白化預處理結(jié)果示意圖
使用不同的數(shù)據(jù)分析方法建模時,都需要進行調(diào)參。 采用PLSDR和Softmax進行分類時,可以設(shè)定主成分數(shù)ncomp=[1∶60]以及正則項參數(shù)λ(lambda)=[1e-1,1e-2,…,1e-8]進行網(wǎng)格調(diào)參。 圖4和圖5是分別使用標準化和ZCA白化預處理后的調(diào)參結(jié)果。 從圖4可以看出經(jīng)過標準化預處理后PLSDR算法降低到40個主成分,識別結(jié)果趨于穩(wěn)定(96.54%±0.05%),當主成分數(shù)大于40時,正則項參數(shù)的影響弱化。 ZCA白化預處理后的調(diào)參結(jié)果與標準化類似,但是可以降低到4個主成分來表示。 正則項參數(shù)是用來防止模型過擬合的,但是這個參數(shù)不是非常敏感。 如果設(shè)置太大,會出現(xiàn)欠擬合現(xiàn)象。 由于降低到一定主成分數(shù)之后,正則項參數(shù)的影響效果不是很明顯,本實驗統(tǒng)一設(shè)置λ為1e-6。
圖4 標準化模型的調(diào)參結(jié)果
圖5 ZCA白化模型的調(diào)參結(jié)果
當使用SVM分類器時,也有兩個重要的參數(shù)c和g進行調(diào)參。 參數(shù)c是懲罰因子,表示對錯誤分類的容忍度。c越大越容易導致過擬合,反之c越小越容易欠擬合。 參數(shù)g是RBF核自帶的參數(shù),隱含地決定了數(shù)據(jù)映射到新的特征空間后的分布,g越大,支持向量越少,g越小,支持向量越多。 同樣使用網(wǎng)格調(diào)參法,設(shè)定c=[0.1, 0.3, 1, 3, 10, 30]和g=[0.01, 0.03, 0.1, 0.3, 1, 3]尋找一組相對較好的模型參數(shù)。 最后尋找到合適的參數(shù)為c=1,g=0.01。
通過對比實驗,得到了如表1所示的不同模型的識別結(jié)果。 對比模型1和模型2的結(jié)果,ZCA白化預處理模型在測試集上的平均準確率(93.87%)比標準化預處理模型在測試集上的平均準確率(87.23%)要高出大約6.6%。 ZCA白化模型在測試集上的準確率標準差(0.008 8)相對較低,說明多次隨機采樣建模測試結(jié)果的離散程度較低,ZCA白化模型的魯棒性更好,而且ZCA白化模型具有較低的建模測試運行時間(3.54 s)。 以上實驗結(jié)果表明ZCA白化去除特征之間的相關(guān)性的同時,還可以提升模型準確率。 因此,ZCA白化是一個有效的預處理方法。
表1 不同模型的結(jié)果
從模型1(87.23%)和模型3(90.17%)的結(jié)果來看,PLSDR算法提升了模型1大約3%的準確率。 原始數(shù)據(jù)的288個特征可以降低成40個特征,這一點也可以表明原始數(shù)據(jù)的冗余性。 同時,建模及測試運行時間被大大壓縮。
通過分析模型2(93.87%)和模型4(94.06%)的結(jié)果表明PLSDR算法稍微增加了模型2的準確率。 但是,使用PLSDR算法可以把輸入特征降低成四個特征去表示。 經(jīng)過ZCA白化變換后的數(shù)據(jù),相對原始數(shù)據(jù)來說丟失了一部分原始信息,因此PLSDR并沒有顯著的提升ZCA白化模型的效果,但是可以從ZCA白化后不相關(guān)的特征中提取更有效表示輸入數(shù)據(jù)的特征。 經(jīng)過降維后,模型4的識別率仍是遠遠優(yōu)于模型3的識別率,而且從模型復雜度角度來看,ZCA白化后的模型也是優(yōu)于標準化模型,建模測試運行時間也更短,方便實時測試。
模型6使用了SVM分類器,編程實現(xiàn)借用了LIBSVM提供的工具箱。 另外,該多分類問題的實現(xiàn)采用了one vs one方法。 SVM模型降低到100個主成分時,在測試集上的準確率趨于穩(wěn)定僅有88.25%,并且建模及測試運行時間為134 s。 這個結(jié)果表明SVM分類器表現(xiàn)相對較差,而且采用one vs one方法建模復雜度太高。
LDA多分類的實現(xiàn)同樣采用了one vs one方法,建立了10個LDA分類器投票分類。 從模型5的結(jié)果可以看出在測試集上的準確率為93.85%。 同時該模型的準確率也具有較小的標準差(0.007 6)和建模測試運行時間(3.51 s)。 LDA的結(jié)果表現(xiàn)不錯也可以反映出當前實驗的數(shù)據(jù)集有很強的線性關(guān)系,所以使用Softmax的結(jié)果很好是可以預期到的。 僅從當前數(shù)據(jù)集來看,LDA和Softmax模型都表現(xiàn)不錯,但是Softmax模型具有很強的泛化能力,當面對非線性數(shù)據(jù)時,它可以作為神經(jīng)網(wǎng)絡(luò)的最后一層處理非線性數(shù)據(jù)。
近紅外高光譜圖像結(jié)合圖像和近紅外光譜可以快速無損批量采集樣本數(shù)據(jù),通過圖像處理可以有效提取出對應樣本信息。 結(jié)合理論分析和實踐驗證,提出了一種快速有效處理高光譜數(shù)據(jù)的方法。 先使用ZCA白化預處理去除輸入特征的相關(guān)性,接著通過PLSDR算法提取輸入特征與類別之間具有最大相關(guān)性的主成分,降低模型復雜度,最后通過Softmax分類器從概率角度對輸入數(shù)據(jù)進行分類。 這個模型在當前枸杞產(chǎn)地鑒別的應用場景得到了很好的表現(xiàn),50次結(jié)果測試集的平均準確率達到了94.06%,同時標準差僅有0.009,說明模型的魯棒性很好。 在當前數(shù)據(jù)量不是很多且分類類別相對較少的情況下,這個模型的優(yōu)勢并沒有完全體現(xiàn)出來。 未來有新的應用場景,而且數(shù)據(jù)非線性特征較強時,模型也可以很好的遷移新問題上面,把Softmax分類器作為神經(jīng)網(wǎng)絡(luò)的最后一層去處理非線性數(shù)據(jù)。