陶 洋, 黎春燕, 梁志芳, 楊皓誠
(重慶郵電大學 通信與信息工程學院,重慶 400065)
電子鼻是一種檢測復雜性氣味的儀器,又稱為機器嗅覺系統(tǒng),主要由氣體傳感器陣列和相應的模式識別算法組成。它在食品安全[1]、空氣質(zhì)量檢測[2]、醫(yī)學[3]等領域有著廣泛的應用。但電子鼻傳感器的靈敏度會隨著環(huán)境、自身老化和“中毒”等原因發(fā)生變化,故傳感器的輸出響應也隨之改變,即傳感器產(chǎn)生漂移。傳感器漂移使電子鼻性能下降,壽命降低,極大限制了電子鼻在實際生活中的應用。因此,解決傳感器漂移能夠延長電子鼻使用壽命,同時也是近年來針對電子鼻的研究熱點。
目前,已有許多學者針對電子鼻傳感器漂移提出了一系列方法,主要包括信號預處理[4]、成分校正法[5,6]、分類器集成法[7]、域自適應法[8,9]。信號預處理獨立校正每只傳感器響應信號,故該方法易于實現(xiàn)、時效性高,但無法處理數(shù)只傳感器之間復雜的漂移。成分校正法試圖利用實驗環(huán)境下參考氣體的漂移方向移除測試樣本的漂移成分,但漂移方向的準確性依然值得研究。分類器集成法需利用大量標記樣本。域自適應是近年來在電子鼻漂移補償中應用較為廣泛的方法,本文也將從域自適應角度繼續(xù)研究漂移補償算法。Zhang L等人提出域自適應極限學習機(domain adaptive extreme learning machine, DAELM)方法用于補償傳感器漂移[8]。 Liang Z等人[9]提出一種方法從特征和分類器決策層解決電子鼻傳感器漂移。綜上所述,這些漂移補償方法均屬于半監(jiān)督域自適應方法,并抑制了傳感器的漂移,但這些方法利用較多的目標域標記樣本。
本文受對抗學習和半監(jiān)督域自適應的啟發(fā),提出一種基于對抗學習估計域不變原型(estimate domain-invariant prototypes via adversarial learning,ALDIP)的漂移補償方法。將對抗學習加入半監(jiān)督域自適應學習過程中,同時利用更少的目標域標記樣本研究傳感器漂移補償算法。該方法的主要目的是最小化估計原型與目標域未標記樣本之間的距離,從而提取目標域可區(qū)分性特征。實驗表明,本文所提出的方法能夠有效地對傳感器漂移進行補償。
受文獻[10]的啟發(fā),本文提出的方法主要利用神經(jīng)網(wǎng)絡構建一個特征提取器和余弦相似度分類器。整個網(wǎng)絡結構如圖1所示。
圖1 基于對抗學習域不變原型的網(wǎng)絡框架
在整個訓練過程中,首先利用特征提取器F和余弦相似度分類器C訓練源域和目標域標記樣本,并選用交叉熵作為損失函數(shù)。特征提取器表示為利用網(wǎng)絡參數(shù)θF學習一個函數(shù)fg,分類器表示為利用網(wǎng)絡參數(shù)θC學習一個函數(shù)fc,其中,θC為分類器權重向量W=[w1,w2,…,wk]的集合。最后,利用標記樣本獲得的分類器經(jīng)驗損失為
(1)
假設對于每種類別都存在一個域不變估計原型,并視該原型為兩個域之間的代表點,但估計原型更適于源域分布,因為在分類器訓練過程中源域標簽信息更多。為使估計原型具有域不變特性,將原型wi向目標域特征移動以估計原型的位置,故利用熵度量W與無標記目標域特征之間的相似度,熵的計算公式如下
(2)
式中K為類別數(shù)量,p(y=k|x)為樣本x預測為類別k的概率。熵越大則表明估計原型wi與所有目標域特征越相似,故最大化熵以估計域不變原型。為獲得目標域樣本可區(qū)分性特征,將目標域未標記樣本圍繞估計原型聚類,故最小化特征提取器F以減小目標域未標記樣本的熵,即每個目標域樣本應分配給唯一的估計原型。因此,重復進行熵最大化和最小化過程能夠學到更具有區(qū)分性的特征。整個熵的最大最小化過程如圖2所示。
圖2 熵最大最小化過程
總的來說,該方法可形式化為C和F之間的對抗學習,訓練分類器C最大化熵,訓練特征提取器F以最小化熵。整個對抗學習的目標函數(shù)為
(3)
式中γ為超參數(shù),用于控制最大最小化熵訓練和分類損失之間的平衡。在一個包含有源域和目標域小批量數(shù)據(jù)中,該目標函數(shù)可形式化為最大最小化迭代訓練。小批量是指將兩個域的所有樣本劃分成幾個批次,并以每個批次更新神經(jīng)網(wǎng)絡的參數(shù),從而降低計算復雜度。為簡化訓練過程,利用梯度反轉層[11]使C和F之間的梯度相對于H反轉,其中,梯度反轉層可利用一次前向和后向傳播實現(xiàn)最大最小化訓練。
本文利用一組公開數(shù)據(jù)集完成實驗,它被許多學者用于電子鼻漂移補償算法研究。該數(shù)據(jù)是長達3年的電子鼻傳感器基準數(shù)據(jù)集,由來自加州大學(University of California, San Diego,UCSD)的Vergara等人[7]采集所得。電子鼻是由16只MOS傳感器組成的傳感器陣列,其中每只傳感器提取樣本的8個特征,故每個樣本共有128(16×8)維特征。最后,利用電子鼻對不同濃度的6種氣體(丙酮,乙醛,乙醇,乙烯,氨和甲苯)進行測量,在整個36個月中共收集了13 910個樣本,并按時間順序將其分為10批數(shù)據(jù)。其中,第10批數(shù)據(jù)是電子鼻關閉電源5個月后所采集的數(shù)據(jù),而在電子鼻關閉電源的5個月中,傳感器將遭受到嚴重的污染,且這些污染不可避免,因此當電子鼻再次工作時,電子鼻傳感器陣列無法恢復到正常的工作溫度,故采集的數(shù)據(jù)將發(fā)生比平常更嚴重的漂移。表1為所有批次收集的時間以及每個批次每種氣體的數(shù)量。另外,更多關于論文采用的傳感器基準數(shù)據(jù)集信息可見文獻[7]。
表1 基準傳感器漂移數(shù)據(jù)集
為更直觀地觀察所有批次數(shù)據(jù)分布差異,圖3為原始數(shù)據(jù)的二維主成分散點圖。從圖3中可觀察到傳感器漂移使各批次的2維主成分子空間數(shù)據(jù)分布不一致。因此,若將批次1視為源域用于建立模型,在目標域批次b(b=2,3,…,10)上測試,模式識別準確性會產(chǎn)生較大的偏差。因為在機器學習中,通常假設訓練集和測試集應保持相同或相似的概率分布,而傳感器漂移使測試集和訓練集的分布不再滿足機器學習的假設,故可考慮減小域間分布差異提高模式識別的準確率。
圖3 10批數(shù)據(jù)二維特征(PC1,PC2)散點圖
對電子鼻傳感器基準數(shù)據(jù)集進行兩種實驗設置,并將兩種實驗設置下的結果與一些漂移補償方法進行對比,包括常用的特征提取方法,主成分分析(principal component analysis,PCA)法[5]和線性判別分析(linear discriminant analysis,LDA)法[12],集成分類器法SVM-COMGFK和SVM-RBF,以及近年的半監(jiān)督域自適應方法,域自適應極限學習機(DAELM-S)[8]。由于神經(jīng)網(wǎng)絡初始權重的不確定性,故本次實驗實現(xiàn)ALDIP共10次,并取實驗10次最優(yōu)結果的平均值作為本實驗的結果。在實驗過程中,等式(3)中的平衡參數(shù)γ為0.1,并利用常見的KS算法選取目標域標記樣本。
設置1:將批次1作為源域用于模型訓練,其余批次b(b=2,3,…,10)作為目標域用于模型測試。
設置2:將批次b(b=1,2,…,9)作為源域用于模型訓練,批次b+1作為目標域用于模型測試。
在實驗設置1下,表2給出了ALDIP在最佳實驗結果下的小批量設置,表3給出了ALDIP與其他漂移補償算法的識別精度。從表3可知ALDIP平均精度結果最佳,雖然平均精度只比DAELM-S高出0.91 %,但從表格的第一列可知ALDIP比DAELM-S少利用10個目標域標記樣本。從總的10批數(shù)據(jù)來看,2,4,5,6,10批次數(shù)據(jù)的識別精度均比DAELM-S高,尤其第10批數(shù)據(jù),ALDIP的識別精度比DAELM-S高出15.17 %,由2.1節(jié)可知,第10批數(shù)據(jù)漂移最嚴重,故這也證明了該方法對漂移的補償作用。最后還給出了實驗設置1下ALDIP方法在包含0,5,10,15,20,25個目標域標記樣本下每批次的識別精度圖,并與DAELM-S在該環(huán)境下的識別精度進行對比,如圖4所示。從圖4中可看出隨著目標域標記樣本的增加,ALDIP方法的識別精度逐漸增加,且在相同的目標域樣本下,大多數(shù)批次的識別效果優(yōu)于DAELM-S。因此,該模型能夠有效補償傳感器漂移。另外ALDIP比次之的DAELM-S效果更佳的一個原因是ALDIP利用了對抗學習使提取的源域和目標域特征具有域不變特性,并且利用余弦相似度分類器可使類內(nèi)更緊密,而DAELM-S利用極限學習機只考慮了分類決策層的自適應。
表2 實驗設置1下獲得最高精度時小批量參數(shù)設置
表3 實驗設置1下ALDIP以及對比算法的識別精度
圖4 不同數(shù)量目標域標記樣本下每個批次的識別精度
在實驗設置2下,批次b視為源域,批次b+1視為目標域,若將批次b→b+1視為一個任務,則共有9個任務。表4給出了在實驗設置2下每個任務獲得最佳實驗結果的小批量大小參數(shù)設置。表5給出ALDIP方法與所有比較的漂移補償方法對9個任務的識別精度結果。從表5中可看出ALDIP方法的識別精度依然是最高的。雖然僅比與它次之的DAELM-S方法高出0.45 %,但該方法依然利用了更少的目標域標記樣本。對于現(xiàn)實場景來講,從目標域獲取更多的標記樣本將耗費大量人力且不易獲取,故這證明了該方法的有效性。總的來說,無論從實驗設置1還是實驗設置2,都能夠說明ALDIP方法對傳感器漂移的補償作用。
表4 實驗設置2下獲得最高精度時小批量參數(shù)設置
表5 實驗設置2下ALDIP以及對比算法的識別精度表
為了補償傳感器的漂移,本文提出一種基于對抗學習估計域不變原型的算法。該方法的特點為:1)利用熵的最大最小化過程達到源域與目標域之間的自適應;2)在網(wǎng)絡結構中,為了達到對抗的目的,在特征提取器和分類器之間加入梯度反轉層;3)該模型不僅能夠學習到域不變特征,而且能夠學習到域不變原型。最后,為了驗證提出方法的有效性,在加州大學的電子鼻基準數(shù)據(jù)集上進行實驗,并證明了該方法比其他漂移補償方法識別率更高。