劉鑫鵬,秦玉華,張鳳梅,蔣 薇,尹志豇
(1.青島科技大學 信息科學技術(shù)學院,山東 青島 266061;2.云南中煙工業(yè)有限責任公司技術(shù)中心,云南 昆明 650231)
近紅外光譜分析技術(shù)可以快速高效地鑒定樣品的化學組成和物質(zhì)性質(zhì),分析過程不破壞樣本、不污染環(huán)境,被廣泛用于食品、農(nóng)業(yè)、石化、煙草等領域[1]。在實際應用中,儀器間的臺間差、外界環(huán)境的變化都會影響樣品光譜的采集,導致對某臺儀器建立的分析校正模型難以適用于其它儀器。若針對不同儀器、環(huán)境重新建立新的分析校正模型將消耗大量的人力和物力,難以滿足網(wǎng)絡化在線快速檢測和分析的需求。目前解決這一問題最經(jīng)濟有效的方法是建立不同儀器之間光譜的轉(zhuǎn)移模型,轉(zhuǎn)移后的光譜可直接應用于現(xiàn)有的分析校正模型。該方法能夠緩解重復建模帶來的問題,節(jié)約建模成本,實現(xiàn)數(shù)據(jù)共享,尤其對近紅外網(wǎng)絡化的推廣具有較大的應用價值[2]。
模型轉(zhuǎn)移通過數(shù)學方法建立主機和從機所測光譜之間的函數(shù)關(guān)系,由確定的函數(shù)關(guān)系對光譜進行轉(zhuǎn)換以實現(xiàn)現(xiàn)有模型的通用性[3]。襲辰辰等[4]將阿莫西林膠囊及其內(nèi)容物光譜經(jīng)分段直接校正(PDS)算法校正后,利用阿莫西林膠囊定量模型對校正后的光譜進行含量預測,通過探討PDS中校正光譜和模型訓練集中不同均質(zhì)樣本平均光譜的相似系數(shù)與預測誤差的關(guān)系,尋找用于判定PDS校正準確性的量化指標;Zheng等[5]利用典型相關(guān)性分析(CCA)算法驗證了光譜模型轉(zhuǎn)移的效果;劉翠玲等[6]通過光譜空間轉(zhuǎn)換法與多種方法,實現(xiàn)了模型轉(zhuǎn)移后食用油酸值與過氧化值的分析。上述模型轉(zhuǎn)移算法均為對光譜數(shù)據(jù)進行線性變化得到轉(zhuǎn)移光譜。根據(jù)朗伯-比爾定律與加和定律[7],樣品的混合光譜應為其組成成分的純光譜與對應濃度的乘積之和,但在光譜采集過程中,受環(huán)境因素的影響,獲取的光譜往往摻雜了噪聲,非線性誤差將導致通過線性變換進行模型轉(zhuǎn)移時光譜信息的丟失或重復。劉貞文等[8]采用深度自編碼器的方法建立了不同儀器之間的非線性映射,作為一種非線性特征提取方法,其在藥物片劑和玉米數(shù)據(jù)集上的模型轉(zhuǎn)移效果優(yōu)于傳統(tǒng)線性光譜轉(zhuǎn)移方法。但隨著自編碼器的加深,模型變得難以訓練,產(chǎn)生梯度消失和過擬合現(xiàn)象[9]。
深度前饋神經(jīng)網(wǎng)絡作為一種應用廣泛、發(fā)展迅速的人工神經(jīng)網(wǎng)絡,能夠簡單高效地擬合函數(shù)的特征映射,擁有復雜的非線性處理能力。由于光譜模型轉(zhuǎn)移過程中,標樣光譜樣本的數(shù)量受到限制,網(wǎng)絡各層的權(quán)值和閾值采用隨機初始化,導致網(wǎng)絡函數(shù)訓練速度慢、擬合效果差。因此,本文引入麻雀搜索算法(SSA)對深度前饋神經(jīng)網(wǎng)絡進行全局參數(shù)優(yōu)化。麻雀搜索算法是一種群智能優(yōu)化算法[10],通過模擬麻雀的覓食行為,求解參數(shù)的最優(yōu)值,進而降低網(wǎng)絡的復雜性。
本文基于麻雀搜索算法和深度前饋神經(jīng)網(wǎng)絡的優(yōu)勢,將兩者結(jié)合用于近紅外光譜的模型轉(zhuǎn)移。以不同儀器采集的煙草光譜為研究對象[11],建立主機與從機之間的非線性函數(shù)關(guān)系,并與傳統(tǒng)的PDS、CCA方法進行了對比分析,驗證了方法的有效性。
深度前饋神經(jīng)網(wǎng)絡(DFN)是一種基于前饋神經(jīng)網(wǎng)絡(FNN)的深度學習模型[12]。前饋神經(jīng)網(wǎng)絡通過定義一個函數(shù)映射,經(jīng)多層神經(jīng)網(wǎng)絡的學習,調(diào)整網(wǎng)絡中隱含層的連接權(quán)值和閾值參數(shù),使非線性函數(shù)能夠無限接近目標函數(shù)[13],實現(xiàn)輸入空間到輸出空間的復雜映射。深度前饋網(wǎng)絡架構(gòu)如圖1所示。本文利用深度前饋神經(jīng)網(wǎng)絡建立主機和從機所測標樣光譜之間的函數(shù)關(guān)系,由確定的函數(shù)關(guān)系實現(xiàn)對煙葉光譜數(shù)據(jù)的轉(zhuǎn)移,在已建立的光譜定性、定量分析模型下對轉(zhuǎn)移后的光譜進行處理,提高了煙葉在線分析的效率。但深度前饋神經(jīng)網(wǎng)絡具有較深的網(wǎng)絡架構(gòu),訓練各層參數(shù)的權(quán)值和閾值需要消耗計算機大量的運行內(nèi)存,增加時間成本投入。
圖1 深度前饋神經(jīng)網(wǎng)絡結(jié)構(gòu)Fig.1 Deep feedforward neural network structure
麻雀搜索算法是一種高精度、易擴充、自組織的智能優(yōu)化算法,具有較高的全局尋優(yōu)和求解能力[14]。通過模擬麻雀種群覓食的行為,在種群中設定發(fā)現(xiàn)者、加入者、偵察者3種身份的個體,通過疊加偵查預警機制,迭代更新群體覓食位置,以獲得全局最優(yōu)的覓食資源,從而獲得參數(shù)的最優(yōu)解。
在麻雀種群尋優(yōu)過程中,發(fā)現(xiàn)者為種群尋覓高食物資源,引導加入者提供覓食方向,在安全區(qū)域內(nèi),通過位置記憶更新獲取食物來源。在每次的迭代過程中,發(fā)現(xiàn)者的位置更新如下:
其中,t代表當前迭代次數(shù),Si,j表示第i只麻雀在第j維中的位置,α為一個隨機數(shù),Normal是一個服從正態(tài)分布的隨機數(shù),L是1×d的矩陣,其內(nèi)所有元素均為1。R2(R2∈[0,1])和ST(ST∈[0.5,1])分別表示預警值和安全值。R2≥ST表示位置安全可以搜索,反之發(fā)出預警并離開。
加入者通過偵聽發(fā)現(xiàn)者位置處適應度值的高低選擇位置覓食,當發(fā)現(xiàn)者處有較高食物資源時,加入者會離開當前位置前往發(fā)現(xiàn)者位置爭奪資源,加入者位置變化如下:
Sposition是發(fā)現(xiàn)者所處的局部最優(yōu)位置,Sworst表示全局最差的位置。A表示一個1×d的矩陣,每個元素隨機賦值1或-1,且A+=AT(AAT)-1。當i>n2時,表明第i個加入者仍未獲得食物且適應度較低,需找尋其他位置獲得食物資源。
偵察者為種群中發(fā)出預警更新安全區(qū)域的個體,其數(shù)量占種群的15%,位置更新如下:
Sbest是本輪迭代中的全局最優(yōu)位置。β作為步長控制參數(shù),是服從均值為0、方差為1的正態(tài)分布隨機數(shù)。K是[-1,1]的一個隨機數(shù);fi、fb和fw分別表示當前麻雀的適應度、全局最優(yōu)和最差適應度。ε是常數(shù),避免分母為0。當fi>fb表示麻雀所處位置易遭受捕食者攻擊且正處于種群的邊緣,當fi=fb時,表明麻雀意識到了危險,需要更新其位置降低被攻擊的風險。
本文使用麻雀搜索算法優(yōu)化深度前饋神經(jīng)網(wǎng)絡的連接權(quán)值和閾值,利用深度前饋神經(jīng)網(wǎng)絡建立近紅外光譜轉(zhuǎn)移模型的步驟如圖2所示。
圖2 基于SSA-DFN建立光譜轉(zhuǎn)移模型Fig.2 Establishment of spectral transfer model based on SSA-DFN
Step1:根據(jù)深度前饋神經(jīng)網(wǎng)絡的架構(gòu)初始化麻雀種群數(shù)量(Population)和種群進化次數(shù)(MaxEvo)。以種群中容易找到食物的個體作為發(fā)現(xiàn)者,其他個體作為加入者,少部分為偵察者,隨機初始化位置矩陣S,將優(yōu)化后的位置矩陣作為深度前饋神經(jīng)網(wǎng)絡各層參數(shù)的初始值。計算個體所處位置食物資源的分配情況,即位置矩陣S個體的種群適應度(Fitness)。在深度前饋神經(jīng)網(wǎng)絡中,均方根誤差Ek可以反映光譜轉(zhuǎn)移的變化情況,因此使用均方根誤差作為種群適應度的值,適應度函數(shù)表達如下:
Step2:麻雀種群數(shù)量是影響種群找尋食物資源的關(guān)鍵因素,為確定麻雀種群數(shù)量與優(yōu)化算法性能之間的關(guān)系,將麻雀種群數(shù)量以6為間隔從20變化到140,以從機轉(zhuǎn)移光譜與對應主機光譜之間的交叉驗證均方根誤差(RMSECV)作為評價參數(shù),生成RMSECV與麻雀種群數(shù)量之間的關(guān)系圖。如圖3所示,隨著種群數(shù)量增多,RMSECV逐漸降低,當種群數(shù)量為92時,RMSECV達到最低;種群數(shù)量超過92后,RMSECV逐步上升,因此將麻雀種群數(shù)量設為92。
圖3 RMSECV隨麻雀種群數(shù)量的變化Fig.3 Variation of RMSECV with sparrow population
Step3:種群進化次數(shù)能夠決定模型收斂的情況,使優(yōu)化后深度前饋神經(jīng)網(wǎng)絡各層參數(shù)的初始值更容易訓練。種群進化次數(shù)過少,麻雀搜索算法參數(shù)尋優(yōu)結(jié)果不充分;種群進化次數(shù)過多,RMSECV達到一定水平后將不再變化,額外的種群進化將帶來不必要的時間開銷。如圖4所示,種群進化次數(shù)從20變化到300,RMSECV呈階梯式下降,當種群進化次數(shù)達210次后,RMSECV不再變化,說明麻雀種群個體位置已達全局最優(yōu)解,模型的優(yōu)化效果最佳[15]。
圖4 RMSECV隨麻雀種群進化次數(shù)的變化Fig.4 Variation of the RMSECV with the number of sparrow population iterations
Step4:分別采用公式(1)、(2)、(3)對發(fā)現(xiàn)者、加入者、偵察者進行位置更新,找尋更多的食物。調(diào)整個體身份,使覓食過程中加入者和發(fā)現(xiàn)者身份不斷變化但所占比例不變,即當有一只麻雀變?yōu)榘l(fā)現(xiàn)者必然有一只麻雀變?yōu)榧尤胝撸N群個體在獲取更多食物資源的同時躲避捕食者。
Step5:計算位置更新后種群中個體的適應度,根據(jù)種群個體適應度標記位置矩陣資源分配情況,并與原位置處的適應度進行比較,將適應度高的位置作為該個體的新位置。判定是否滿足全局位置適應度最優(yōu)或達到MaxEvo次種群進化,若滿足則輸出位置矩陣,否則重復執(zhí)行步驟2、3,更新種群個體的位置信息與適應度。當麻雀種群處于安全區(qū)域內(nèi)最優(yōu)的覓食點,獲取全局最優(yōu)的位置矩陣,實現(xiàn)網(wǎng)絡參數(shù)初始尋優(yōu)。
Step6:對于給定光譜訓練集Train={(x1,y1),(x2,y2),…(xn,yn)},xn∈Rd,yn∈Rd,輸入從機光譜xi,輸出對應的主機光譜yi,xi和yi皆為由d個波長點組成的實值向量。設在深度前饋神經(jīng)網(wǎng)絡中輸入層包含n個輸入量,輸出層包含n個輸出量,隱藏層包含q個神經(jīng)元,建立7層神經(jīng)網(wǎng)絡模型,通過麻雀搜索算法初始化網(wǎng)絡各層的權(quán)值和閾值。共優(yōu)化8 092個參數(shù),對經(jīng)過迭代尋優(yōu)后的種群位置矩陣S賦予網(wǎng)絡各層權(quán)值和閾值。
Step7:深度前饋神經(jīng)網(wǎng)絡接收輸入向量x,由前向傳遞函數(shù)計算得到輸出結(jié)果?并與對應的主機光譜y進行比較,再結(jié)合誤差逆?zhèn)鞑ィ˙P)算法,更新網(wǎng)絡中的連接權(quán)值和閾值大小。根據(jù)公式(5)、(6)實現(xiàn)數(shù)據(jù)前向計算:
其中,vit為輸入層第i個神經(jīng)元與隱藏層第t個神經(jīng)元之間連接權(quán)值,ωtj為輸出層第j個神經(jīng)元與隱藏層第t個神經(jīng)元之間連接權(quán)值;隱藏層第t個神經(jīng)元的閾值用γt表示,輸出層第j個神經(jīng)元的閾值用μj表示。隱藏層第t個神經(jīng)元接收到輸入為αt,經(jīng)過Sigmoid激活函數(shù)生成st;輸出層第j個神經(jīng)元接收到的輸入為βj,經(jīng)過激活函數(shù)生成從機預測轉(zhuǎn)移光譜向量完成前向計算。在訓練集上的均方根誤差為:
Step8:基于梯度下降策略,以目標的負梯度方向?qū)Ω鲗訁?shù)進行調(diào)整,直至均方根誤差Ek達到一個較小的水平。在給定的學習率η下,根據(jù)下列公式調(diào)整連接權(quán)值ωtj、υit和閾值μj、γt:
誤差反向傳播算法通過在每一輪的迭代中訓練更新前饋神經(jīng)網(wǎng)絡每一層的連接權(quán)值與閾值,不斷降低損失函數(shù)的值,使損失函數(shù)逐漸收斂,從而獲取從機光譜與主機光譜的非線性函數(shù)映射,建立主、從機之間的光譜轉(zhuǎn)移模型[16]。
選取某煙草企業(yè)提供的具有代表性的452個煙葉樣品,置于60℃烘箱內(nèi)2 h,磨碎過40目篩,常溫避光密封保存24 h進行光譜采集。實驗室溫度控制在18~22℃、濕度<60%。每個樣品取20 g置于樣本杯中用壓樣器壓實,使用2臺賽默飛世爾公司AntarisⅡ近紅外光譜儀分別作為主機和從機進行光譜采集,光譜掃描范圍為4 000~10 000 cm-1。為獲得精準的光譜數(shù)據(jù),每個樣品在主機和從機上均重復掃描3次取平均值作為該樣品的光譜。
樣品的近紅外光譜除包含自身的質(zhì)量信息外,還承載了噪聲、環(huán)境參數(shù)的影響。在建立校正模型前,選用Savitzky Golay(5,3)一階導數(shù)進行預處理,以降低高頻噪聲、基線漂移和環(huán)境因素造成的影響。
以煙葉中總糖、總煙堿含量作為研究指標,選取315個主機和從機掃描的樣品光譜作為訓練集分別建立主機和從機的校正模型。另外選取25個不同產(chǎn)區(qū)、不同部位、不同等級、重復性好的樣品作為模型轉(zhuǎn)移的標準樣品集,最終根據(jù)測試集均方根誤差(RMSEP)確定模型轉(zhuǎn)移最佳標準化樣品個數(shù),分別采用PDS、CCA、SSA-DFN 3種方法進行轉(zhuǎn)移研究。剩余樣品作為測試集,用來驗證、對比轉(zhuǎn)移方法的有效性。
標準化樣品個數(shù)的選取對模型轉(zhuǎn)移的效果有一定影響,標準化樣品數(shù)過多將造成數(shù)據(jù)冗余,過少則會使轉(zhuǎn)移數(shù)據(jù)丟失,從而影響轉(zhuǎn)移效果。圖5為不同標準化樣品個數(shù)下測試集總糖指標RMSEP的變化情況。
由圖5可以看出,3種轉(zhuǎn)移方法測試集的RMSEP均隨標準化樣品數(shù)的增多而降低,當標準化樣品數(shù)為17個時RMSEP值最小,隨著標準化樣品數(shù)的繼續(xù)增多,RMSEP值有所增大后趨于平穩(wěn),因此選定17個樣品作為轉(zhuǎn)移的標準化樣品。
圖5 不同標準化樣品數(shù)下測試集總糖指標的RMSEPFig.5 RMSEP of total sugars in the test set under different standardized samples
圖6為某煙葉樣品主機、從機采集的光譜對比??梢钥闯觯瑑膳_儀器的差異主要集中在4 900~5 700 cm-1,說明兩臺光譜儀器之間存在較為顯著的非線性偏移。
圖6 主機、從機的原始光譜對比Fig.6 Comparison of original spectra between master and slave
圖7為采用PDS、CCA和SSA-DFN方法轉(zhuǎn)移后的主、從機光譜對比??梢钥闯觯?種方法轉(zhuǎn)移后的從機光譜與主機光譜均有不同程度的重合,說明3種轉(zhuǎn)移方法均具一定的效果。從全波段來看,SSA-DFN轉(zhuǎn)移后的從機光譜與主機光譜重合度最高,在各個波數(shù)點處消除儀器間非線性偏移的效果較好,從機每個波數(shù)點的吸光度與主機基本一致,說明該方法能夠有效對不同儀器光譜進行轉(zhuǎn)移。
圖7 轉(zhuǎn)移光譜譜圖對比Fig.7 Comparison of transferred spectra
利用主成分分析可將光譜數(shù)據(jù)降維,使新變量能夠盡可能多地表達原始數(shù)據(jù)的特征。圖8為分別采用不同轉(zhuǎn)移方法后主機和從機測試樣品的主成分空間分布圖。
圖8 不同轉(zhuǎn)移方法光譜投影對比Fig.8 Comparison of spectral projection with different transfer methods
可以看出,轉(zhuǎn)移前的主機光譜與從機光譜存在明顯差異,經(jīng)過PDS、CCA、SSA-DFN 3種方法轉(zhuǎn)移后的從機光譜與主機光譜均有不同程度的重合。相比PDS、CCA方法,SSA-DFN轉(zhuǎn)移后的光譜與主機光譜的投影重合度最高,說明轉(zhuǎn)移后從機光譜與主機光譜所包含的數(shù)據(jù)特征最為相近,數(shù)據(jù)信息在轉(zhuǎn)移后丟失率低,轉(zhuǎn)移效果最佳。
表1為不同的主、從機模型對不同測試集預測結(jié)果的對比??梢钥闯?,直接使用主、從機模型分別對對應的主、從機測試集進行預測時,各項指標均達到較理想的效果,說明不同儀器建立的校正模型對本機采集的光譜適用度較高,單臺儀器建??梢匀〉幂^好的效果。而使用主機模型對從機測試集、從機模型對主機測試集進行預測的誤差均較大(高于5%),難以滿足企業(yè)需求,且在t檢驗下(顯著性水平α=0.05),主、從機模型對不同測試集的預測結(jié)果均存在顯著性差異,說明主機和從機的臺間差較大,主機模型無法適用于從機采集的光譜,需要進行模型轉(zhuǎn)移。
表1 主、從機模型對不同測試集的預測結(jié)果對比Table 1 Comparison of prediction results between master and slave models for different test sets
表2為主機模型分別采用PDS、CCA、DFN、SSA-DFN 4種方法對從機測試集光譜轉(zhuǎn)移前后總糖、煙堿含量的預測結(jié)果。可以看出,轉(zhuǎn)移前主機模型對從機樣品的預測誤差較大,4種方法轉(zhuǎn)移后的預測誤差較轉(zhuǎn)移前均有所降低。對于PDS、CCA、DFN方法,雖然模型轉(zhuǎn)移后t檢驗差異不顯著,但經(jīng)PDS和CCA轉(zhuǎn)移后光譜預測的總糖、煙堿平均誤差高于5%,DFN轉(zhuǎn)移后光譜預測的總糖平均誤差為5.13%,均無法滿足企業(yè)需求(低于5%)。SSA-DFN方法轉(zhuǎn)移后總糖、煙堿預測誤差分別降為4.65%和4.82%,t檢驗差異不顯著,取得較好的轉(zhuǎn)移效果,該結(jié)果與基于譜圖及光譜投影的結(jié)果一致。
表2 不同轉(zhuǎn)移算法預測結(jié)果對比Table 2 Comparison of prediction results of different transfer algorithms
為提高不同儀器之間光譜模型轉(zhuǎn)移的準確性,本文提出了基于麻雀搜索算法結(jié)合深度前饋神經(jīng)網(wǎng)絡的模型轉(zhuǎn)移方法SSA-DFN,在譜圖、光譜投影以及建模效果等方面均取得了較優(yōu)的實驗結(jié)果,證明SSA-DFN是一種穩(wěn)定、高效的非線性模型轉(zhuǎn)移方法。將深度前饋神經(jīng)網(wǎng)絡用于擬合模型轉(zhuǎn)移的映射函數(shù),并利用麻雀搜索算法優(yōu)化神經(jīng)網(wǎng)絡,可使網(wǎng)絡訓練變得容易且高效。通過SSA-DFN方法對光譜進行模型轉(zhuǎn)移,將一臺儀器上建立的模型應用于其他儀器,一定程度上滿足了網(wǎng)絡化快速分析的需求,減少了重復建模的額外開銷,提高了已有模型的利用率。