袁 壯,董大明
1. 廣西大學(xué),廣西 南寧 530004 2. 智能裝備技術(shù)研究中心,北京市農(nóng)林科學(xué)院,北京 100097
近紅外光譜是發(fā)展快、 具有廣闊前途的成分分析技術(shù)之一,以其方便、 快速、 高效、 準(zhǔn)確、 無(wú)污染和在線預(yù)測(cè)的優(yōu)點(diǎn),一直處于食品分析的前沿[1-2]。由于近紅外光譜反應(yīng)的主要是分子中官能團(tuán)振動(dòng)的倍頻和合頻的吸收,光譜特征不明顯,特征之間存在多重共線性,對(duì)近紅外光譜進(jìn)行分析往往需借助化學(xué)計(jì)量學(xué)軟件和機(jī)器學(xué)習(xí)算法的輔助。數(shù)據(jù)降維和特征提取是分析高維數(shù)據(jù)的有效手段,利用降維結(jié)果還可以進(jìn)行可視化分析。常見的數(shù)據(jù)降維算法有:奇異值分解(SVD)[3]、 主成分分析(PCA)[4]、 線性判別分析(LDA)[5]、 因子分析(FA)[6]、 獨(dú)立成分分析(ICA)[7]。然而,這些算法都被設(shè)計(jì)為一次只能分析一個(gè)數(shù)據(jù)集,當(dāng)數(shù)據(jù)集個(gè)數(shù)較多或者一個(gè)數(shù)據(jù)集中有多個(gè)不同的背景因素影響時(shí),它們只能單獨(dú)作用然后需要手動(dòng)分析比較數(shù)據(jù)集之間特征的相同點(diǎn)和不同點(diǎn)[3]。cPCA是PCA的對(duì)比學(xué)習(xí)變體,它能夠?qū)⑿枰治龅臄?shù)據(jù)集(目標(biāo)集)與干擾因素(背景集)進(jìn)行比較、 學(xué)習(xí)到兩個(gè)集合的差異(研究人員想要的特征信息),已經(jīng)在不同水果的農(nóng)藥殘留判別中得到優(yōu)良的效果[8-9]。主成分只能通過(guò)線性的方式組合生成新特征,特征提取效果存在局限性,而在一些復(fù)雜條件下,非線性的新特征可能在下游模型中取得更好的效果,并且cPCA基于數(shù)據(jù)集方差最大化,在對(duì)背景集進(jìn)行約束時(shí)需要合理選擇對(duì)比參數(shù),實(shí)際使用時(shí)存在不確定性。
普通的自編碼器在理論上可以在低維度空間中完全擬合原始數(shù)據(jù),但是不具備任何生成能力,對(duì)新樣本無(wú)法進(jìn)行適應(yīng)[10-11]。變分自編碼器通過(guò)對(duì)模型進(jìn)行概率化,添加正則化項(xiàng)對(duì)低維隱變量Z的編碼空間進(jìn)行約束,使得模型既能一定程度上擬合原始樣本,又具備了可靠的生成能力[12]。Z被稱為隱變量,因?yàn)樗怯赡P途幋a器部分給出的低維編碼,我們不一定知道編碼中的哪些具體設(shè)置促進(jìn)生成了輸出。對(duì)比變分自編碼器是變分自編碼器的多輸入型的變體,它主要利用了變分自編碼器能夠提取隱含空間特征信息的能力和神經(jīng)網(wǎng)絡(luò)多輸入和多輸出的特點(diǎn),同時(shí)對(duì)兩個(gè)不同的數(shù)據(jù)集進(jìn)行擬合。cVAE在手寫數(shù)字圖片受背景干擾的情況下進(jìn)行數(shù)字識(shí)別、 受不同檢測(cè)批次影響的骨髓移植前后RNA信息判別分析,以及面部圖像特征提取中得到了比較好的改進(jìn)效果。我們將cVAE用于受不同品牌和批次影響的純牛奶中是否摻假三聚氰胺的檢測(cè),實(shí)現(xiàn)了非線性對(duì)比學(xué)習(xí)算法結(jié)合近紅外光譜在液態(tài)食品樣品中的首次應(yīng)用。
三元、 伊利兩種品牌的全脂純牛奶,國(guó)標(biāo)號(hào)為GB25190,前后兩個(gè)日期購(gòu)置于北京市海淀區(qū)某超市(日期新鮮、 包裝完好、 國(guó)內(nèi)大品牌)。純牛奶買回后置于常溫環(huán)境中,由于其中脂肪球和蛋白質(zhì)顆粒隨環(huán)境變化和時(shí)間推移發(fā)生不同程度的聚集,造成成分不均勻。在制備樣本前使用超聲振蕩20 min,使其中成分盡可能均勻分布。摻假牛奶的制備過(guò)程為:往試劑瓶中稱取90 mg的三聚氰胺粉末(小于常溫下三聚氰胺在水中溶解度0.33 g,也符合摻假?gòu)S商實(shí)際牟利目的),隨后向其中添加30 mL純牛奶,將所有樣本充分搖勻后靜置,等待光譜采集,上述操作與采集過(guò)程同步且連貫。每次制備的樣本分為目標(biāo)數(shù)據(jù)集與背景數(shù)據(jù)集。考慮牛奶成分的非均勻性和光譜采集方式的限制,每個(gè)樣本采集10條光譜。重復(fù)前后五次,各個(gè)類型的樣本及數(shù)目如表1所示。
表1 數(shù)據(jù)集中樣本的組成Table 1 The composition of the samples in the data set
選用傅里葉變換型近紅外光譜儀(美國(guó)賽默飛,Antaris Ⅱ)采集純牛奶光譜,采集方式為積分球漫反射,分辨率為16 cm-1,采集次數(shù)設(shè)置為64次,每次采集扣除內(nèi)置背景,采集范圍為4 000~10 000 cm-1。光譜分析使用Unscrambler X10.4(CAMO)。使用基于python3.6.8的Jupyter Notebook構(gòu)建對(duì)比學(xué)習(xí)分類模型,神經(jīng)網(wǎng)絡(luò)框架基于Tensorflow 2.0。
將上述數(shù)據(jù)集中的樣本使用FT-NIR儀器進(jìn)行掃描,為了使觀察更加清楚,隨機(jī)選取目標(biāo)數(shù)據(jù)集中四種不同樣本中的一條原始光譜圖,如圖1所示。從圖中可以看出,4 700~5 300,5 400~5 600和6 200~7 200 cm-1這三個(gè)波數(shù)段的吸光度值明顯大于其他波數(shù)段,反映了純牛奶中主要成分的光譜信息(水、 蛋白質(zhì)、 脂肪等)。四類牛奶的光譜從直觀看來(lái)并無(wú)明顯差異,原始光譜曲線平滑基本無(wú)噪聲,故不進(jìn)行預(yù)處理直接使用原始光譜建模。
圖1 四類樣本的4 000~10 000 cm-1光譜圖Fig.1 Spectra of four types of samples at 4 000~10 000 cm-1
考慮到純牛奶成分的非均勻性,和本實(shí)驗(yàn)所用均質(zhì)方法的實(shí)際效果,為了削弱不均勻性對(duì)近紅外光譜重復(fù)性的影響,我們選擇接近有關(guān)文獻(xiàn)中確定的牛奶中摻雜三聚氰胺等不同目標(biāo)物的特征分類區(qū)間4 200~4 800 cm-1,增大目標(biāo)物對(duì)光譜的影響[13]。同時(shí)為了盡可能多的保留變量個(gè)數(shù),經(jīng)過(guò)選擇后,波段為4 000~6 000 cm-1,共有259個(gè)波長(zhǎng),隨機(jī)選取四個(gè)不同類樣本的一條光譜,其間譜線如圖2所示。
圖2 四類樣本的4 000~6 000 cm-1光譜圖Fig.2 Spectra of four types of samples at 4 000~6 000 cm-1
將選擇后的數(shù)據(jù)代入cVAE模型進(jìn)行分析,多輸入神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。隱藏層采用128個(gè)神經(jīng)元的全連接層,使用ReLU激活函數(shù)。其中S為我們感興趣的編碼(也稱為隱變量或特征信息),Z為不感興趣的編碼。x為目標(biāo)數(shù)據(jù)集,b為背景數(shù)據(jù)集。
圖3 cVAE神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 cVAE neural network structure
神經(jīng)網(wǎng)絡(luò)的具體訓(xùn)練過(guò)程如下:
(1)對(duì)目標(biāo)數(shù)據(jù)集和背景數(shù)據(jù)集光譜數(shù)據(jù)進(jìn)行最大值歸一化;
(2)設(shè)置batch大小為100個(gè)的單批次數(shù)據(jù)大??;
(3)背景數(shù)據(jù)集自動(dòng)根據(jù)目標(biāo)數(shù)據(jù)集大小進(jìn)行倍數(shù)復(fù)制;
(4)定義神經(jīng)網(wǎng)絡(luò)損失函數(shù),優(yōu)化器;
(5)將目標(biāo)數(shù)據(jù)集、 背景數(shù)據(jù)集同時(shí)放入神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練;
(6)根據(jù)loss下降情況和評(píng)價(jià)指標(biāo)分析分類效果。
對(duì)比變分自編碼器的loss函數(shù)總共包含以下幾項(xiàng):
(1)重構(gòu)損失:包含兩項(xiàng),分別為目標(biāo)數(shù)據(jù)集x和背景數(shù)據(jù)集b的重構(gòu)損失;
(2)正則化項(xiàng):包含三項(xiàng),分別是目標(biāo)數(shù)據(jù)集隱變量Zx和Sx,背景數(shù)據(jù)集中隱變量Zb,他們分別對(duì)提取的隱變量空間進(jìn)行正則化約束;
(3)全局相關(guān)損失:為了增加隱變量S和Z之間的不相關(guān)性添加的損失;
(4)判別器損失:為了方便計(jì)算全局相關(guān)損失,另外構(gòu)建了單獨(dú)的判別器,利用分類概率估計(jì)該項(xiàng)。該判別器與cVAE的編碼器和解碼器同時(shí)訓(xùn)練,因此需要添加進(jìn)總的損失函數(shù)。
實(shí)驗(yàn)的主要目的是為了在不同品牌和批次生產(chǎn)的純牛奶中區(qū)分出摻假三聚氰胺和未摻假三聚氰胺的純牛奶。將200個(gè)摻假的三元牌純牛奶、 未摻假的三元牌純牛奶、 摻假的伊利牌純牛奶、 未摻假的伊利牌純牛奶混合后輸入模型,畫出二維隱空間中的散點(diǎn)圖,如圖4所示。
從圖4中可以發(fā)現(xiàn),VAE學(xué)習(xí)到的特征信息主要包含了純牛奶的不同品牌和批次的信息,這兩者都會(huì)使得牛奶中成分信息不同。對(duì)于是否摻假三聚氰胺這一重要信息,VAE無(wú)法提取。
造成VAE無(wú)法對(duì)摻假牛奶進(jìn)行判別的主要原因是數(shù)據(jù)集中包含了純牛奶品牌及批次這兩個(gè)重要變量的信息,導(dǎo)致不相關(guān)信息占據(jù)了數(shù)據(jù)變化的絕大部分。
我們考慮利用cVAE提取感興趣的數(shù)據(jù)變化,將目標(biāo)數(shù)據(jù)集200個(gè)樣本混合形成驗(yàn)證集輸入經(jīng)過(guò)訓(xùn)練的模型,畫出二維隱變量空間的數(shù)據(jù)散點(diǎn)圖,如圖5所示。從圖5中可以發(fā)現(xiàn),藍(lán)色和紅色點(diǎn)聚成一類(分別代表三元摻假牛奶、 伊利摻假牛奶),綠色和黃色點(diǎn)聚成另一類(分別代表三元未摻假牛奶、 伊利未摻假牛奶),表明此時(shí)特征信息主要反應(yīng)了純牛奶中有無(wú)摻假三聚氰胺,品牌和批次差異的無(wú)關(guān)背景信號(hào)被消除。分類邊界存在少量不明確的樣本點(diǎn),這可能與神經(jīng)網(wǎng)絡(luò)的隨機(jī)初始化參數(shù)有關(guān),需進(jìn)一步優(yōu)化模型。
圖4 VAE二維隱變量空間樣本分布Fig.4 VAE two-dimensional latent variablespace sample distribution
圖5 cVAE二維隱變量空間樣本分布Fig.5 cVAE two-dimensional latent variablespace sample distribution
為了進(jìn)一步驗(yàn)證cVAE同時(shí)改善了聚類的效果,我們使用輪廓系數(shù)(sihouette score)去定量評(píng)估降維結(jié)果與真實(shí)標(biāo)簽更接近的聚集程度。輪廓系數(shù)的值介于[-1,1],越接近1代表內(nèi)聚度和分離度都相對(duì)較優(yōu),最后將所有數(shù)據(jù)點(diǎn)的輪廓系數(shù)求平均,就是該聚類效果總的輪廓系數(shù)。重復(fù)訓(xùn)練100次,VAE與cVAE的相應(yīng)輪廓系數(shù)的比較如圖6所示,可以發(fā)現(xiàn)cVAE的輪廓系數(shù)相比VAE有了明顯提升,表明cVAE提取特征后對(duì)樣本的聚類效果要優(yōu)于VAE。
cVAE利用神經(jīng)網(wǎng)絡(luò)的非線性特點(diǎn),同時(shí)組合概率生成模型和對(duì)比學(xué)習(xí)的優(yōu)點(diǎn),是一種能夠通過(guò)引入背景數(shù)據(jù)集,來(lái)提取分析多個(gè)數(shù)據(jù)集中感興趣信息的新型數(shù)據(jù)降維方法。在對(duì)受品牌和批次干擾的純牛奶中是否摻假三聚氰胺進(jìn)行分析時(shí),使用VAE算法只能區(qū)分出不同品牌和批次的純牛奶這一背景信息,而使用cVAE算法能夠?qū)⒓兣D讨惺欠駬郊偃矍璋愤@一關(guān)鍵信息提取出來(lái),說(shuō)明cVAE能夠提取非線性的對(duì)比特征。并通過(guò)聚類評(píng)估指標(biāo)對(duì)二者聚類效果進(jìn)行評(píng)價(jià),結(jié)果表明cVAE提取到的低維空間信息對(duì)樣本的聚類效果優(yōu)于VAE。神經(jīng)網(wǎng)絡(luò)的可擴(kuò)展性和對(duì)海量數(shù)據(jù)的依賴性使得這一算法有更大的進(jìn)步空間,我們可以通過(guò)增加神經(jīng)元數(shù)量和層數(shù)增大網(wǎng)絡(luò)容量,通過(guò)增加更多的新數(shù)據(jù)使得模型
圖6 VAE和cVAE輪廓系數(shù)對(duì)比Fig.6 Comparison of VAE aod cVAE silhouette scores
的泛化性能更優(yōu),提取到的關(guān)鍵特征可以用于下游模型的建立,該算法在近紅外光譜分析中有著廣闊的應(yīng)用前景。