陶 洋,李 強(qiáng),吳 鵬
(重慶郵電大學(xué)通信與信息工程學(xué)院,重慶 400065)
1994年,由Gardner發(fā)表的文章中對電子鼻系統(tǒng)做了完整的解釋:電子鼻系統(tǒng)是一個(gè)由不同專一性傳感器構(gòu)成的傳感器陣列,同時(shí)再輔以信號處理及模式識別算法,最后用于單一或者復(fù)雜的氣體檢測[1]。
近年來,隨著材料技術(shù)的更新以及模式識別算法的迅速發(fā)展,電子鼻系統(tǒng)在各領(lǐng)域均得到了廣泛的應(yīng)用。例如Z. B. Wei等開發(fā)了一套由12個(gè)金屬氧化物傳感器集成的便攜式電子鼻系統(tǒng),并將其應(yīng)用于不同年份的米酒識別[2]。M. Rivai等用3種氣體傳感器和1個(gè)顏色分類傳感器陣列研發(fā)了電子鼻系統(tǒng),用于對肉類的新鮮、半腐爛、腐爛狀態(tài)進(jìn)行分類識別,并取得了較高的實(shí)驗(yàn)精度[3]。C. Sanchez等用研發(fā)的電子鼻系統(tǒng)結(jié)合主成分分析和人工神經(jīng)網(wǎng)絡(luò)來對酒精含量不同的啤酒進(jìn)行識別[4]。T. M. A. Sabeel等將Cyranose E-320電子鼻系統(tǒng)用于早期糖尿病和細(xì)菌感染檢測中[5]。
電子鼻在環(huán)境監(jiān)測、食品安全、醫(yī)療輔助等行業(yè)應(yīng)用廣泛。傳感器自身的漂移問題是電子鼻最突出的問題之一。傳感器漂移即傳感器在長期使用的過程中,因?yàn)樽陨碛布匣碍h(huán)境變化導(dǎo)致的傳感器的輸出響應(yīng)偏離正常值的情況。針對傳感器的長期漂移問題,本文提出了一種基于混合策略的電子鼻在線漂移抑制算法(online drift suppression algorithm for electronic nose based on hybird strategy,ODHS)。該算法結(jié)合主動學(xué)習(xí)和分類器集成方法在使用較少訓(xùn)練集樣本的情況下,通過混合信息篩選標(biāo)記少量測試集樣本來更新分類器,獲得相近甚至優(yōu)于離線漂移補(bǔ)償方法的分類精度。
本文提出的ODHS算法的創(chuàng)新點(diǎn)在于:
(1)初始分類器的訓(xùn)練只需要使用少量的訓(xùn)練集樣本,減少對初始訓(xùn)練樣本數(shù)量的要求。
(2)結(jié)合主動學(xué)習(xí)方法,在檢測的過程中標(biāo)記少量樣本,大幅度提高檢測的精度。
(3)結(jié)合分類器集成的方法,捕捉在線檢測過程中傳感器的漂移趨勢。
主動學(xué)習(xí)(active learning,AL)作為機(jī)器學(xué)習(xí)的一個(gè)子領(lǐng)域,其核心思路在于以盡可能少的標(biāo)注樣本達(dá)到近似或者更高的識別精度。由于主動學(xué)習(xí)有選擇地處理樣本并與領(lǐng)域?qū)<疫M(jìn)行信息交互,近年來得到廣泛研究。例如M. Goudjil等將主動學(xué)習(xí)與支持向量機(jī)相結(jié)合用于文本分類[6]。S. J. Huang等將主動學(xué)習(xí)用于深度卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練中,該方法使用較低的成本實(shí)現(xiàn)有效的深度網(wǎng)絡(luò)訓(xùn)練[7]。H. Xu等將主動學(xué)習(xí)中基于委員會查詢方法與Tri-Training算法相結(jié)合提出QTB-ASVM算法,該方法用于解決支持向量機(jī)中標(biāo)記樣本不易獲得問題[8]。
主動學(xué)習(xí)流程可以分為2個(gè)部分:初始化階段和循環(huán)查詢階段。主動學(xué)習(xí)開始時(shí),首先是通過少量有標(biāo)記樣本訓(xùn)練初始分類器,然后進(jìn)入循環(huán)查詢階段,查詢流程如圖1所示。領(lǐng)域?qū)<?S)按照一定的查詢策略(Q)從未標(biāo)注樣本集合(U)中挑選滿足要求的樣本進(jìn)行標(biāo)記,標(biāo)記完成的樣本送入已標(biāo)記樣本集合(L)中,用于更新分類器。直至達(dá)到循環(huán)截止條件為止。如圖2所示,主動學(xué)習(xí)方法按照待標(biāo)記樣本處理形式可以分為基于流式和基于池式兩種,按照不同的采樣策略也可以分為基于不確定性采樣、基于委員會查詢、基于模型變化期望等。
圖1 主動學(xué)習(xí)流程
圖2 主動學(xué)習(xí)分類
本文中主要涉及到的主動學(xué)習(xí)采樣策略包括不確定性采樣(uncertainty sampling,US),基于委員會查詢(query by committee,QBC)及其變體EQBC[9]。
US方法認(rèn)為最不確定的樣本最有利于提高分類器性能,通過分類器對樣本的識別輸出來衡量樣本的不確定度,ODHS算法通過邊緣熵(margin entropy,ME)來衡量樣本的整體不確定度,如式(1)所示。
eime=-log[f(C1|xi)-f(C2|xi)]
(1)
式中:eime為樣本對應(yīng)的邊緣熵;f(C1|xi)和f(C2|xi)分別為樣本xi被分類為最大可能和次大可能類的概率,這種衡量方式會選擇最大和次大概率最接近的樣本用于專家標(biāo)記。
QBC方法的核心是建立一個(gè)由不同分類器組成的分類委員會,而這些分類器之間需要存在一定程度的分歧。QBC方法中對樣本的衡量方式主要有2種,分別是KL散度(kullback-leibler divergence,KLD)以及投票熵(vote entropy,VE)。本文提出的算法,采用KL散度來衡量內(nèi)部子分類器對于樣本分類的差異性。其公式如式(2)所示。
(2)
式中:eikl為樣本對應(yīng)的KL散度;K為分類委員會中分類器的數(shù)量;C為樣本總的類別數(shù);fm(Cj|xi)為樣本xi被分類委員會中分類器m判定為類Cj的概率。
分類器集成本質(zhì)上是集成學(xué)習(xí)的一種。集成學(xué)習(xí)通過合并多個(gè)分類器的結(jié)果來完成學(xué)習(xí)任務(wù),一般來說集成學(xué)習(xí)可以分為3大類:用于減少方差的Bagging,用于減少偏差的Boosting,用于提升預(yù)測結(jié)果的Stacking。按照分類器的生成方式又可分為串行以及并行生成方式。集成學(xué)習(xí)通過多分類器投票的方式,結(jié)合不同分類器的分類優(yōu)勢來提升集成分類器的分類精度。
ODHS算法整體框圖如圖3所示。其中分類器訓(xùn)練使用分類器集成方法。集成分類器包括內(nèi)部的子分類器以及由子分類器整體構(gòu)建的一個(gè)集成分類器?;旌喜呗砸詷颖镜幕旌闲畔榛A(chǔ),樣本的混合信息包括混合熵以及樣本的相似度信息。樣本的混合熵包括樣本的KL熵以及ME熵。樣本的相似度信息主要指的是候選標(biāo)注樣本與訓(xùn)練集中樣本的相似度。
圖3 ODHS算法流程
ODHS算法在分類器訓(xùn)練時(shí)共訓(xùn)練3個(gè)內(nèi)部子分類器,對內(nèi)部子分類器分別賦予不同的結(jié)果權(quán)重,并由此構(gòu)成一個(gè)整體的分類器,如圖4所示。用訓(xùn)練樣本集整體、前半部分、后半部分訓(xùn)練3個(gè)子分類器C0、C1、C2,權(quán)重分別為W0、W1、W2。3個(gè)內(nèi)部子分類器構(gòu)成的集成分類器為C??紤]在實(shí)際的漂移過程中,當(dāng)前漂移樣本與在時(shí)間線上相隔越近的樣本聯(lián)系更密切,因此C2的權(quán)重應(yīng)該比C1大,考慮到C0使用了所有的樣本來訓(xùn)練,在分類的全局性上相比其他2個(gè)分類器更好,因此3個(gè)分類器的權(quán)重滿足式(3)所示的關(guān)系。
圖4 分類器集成
(3)
對候選樣本進(jìn)行評價(jià)時(shí)不能只依靠集成分類器對于樣本分類的不確定性或者內(nèi)部子分類器對于樣本分類的差異性,原因在于只考慮兩者之一,則會存在忽略整體性或局部性的情況。表1、表2分別為實(shí)際實(shí)驗(yàn)的過程中通過MATLAB軟件計(jì)算內(nèi)部的子分類器及集成分類器對于樣本A、B分類的結(jié)果。表1為內(nèi)部子分類器將樣本分為不同類的概率,表2為表1數(shù)據(jù)按照不同分類器的權(quán)重加權(quán)計(jì)算后得到。每一行表示單個(gè)分類器對某一樣本分類結(jié)果,列表示該樣本屬于某一類的概率。
表1 內(nèi)部分類器分類結(jié)果
表2 集成分類器分類結(jié)果
由式(1)、式(2)及表1、表2數(shù)據(jù)計(jì)算得到樣本A、B的KL散度分別為0.012 5、0.009 6,ME熵值分別為1.074 1、1.086 1。按照KL散度則應(yīng)選擇樣本A進(jìn)行專家標(biāo)記,按照ME熵則應(yīng)選擇樣本B進(jìn)行專家標(biāo)記。因此綜合考慮,將KL散度和ME熵值結(jié)合起來得到如式(4)所示的混合熵。
eikl-me=ω·noml_eikl+(1-ω)·noml_eime
(4)
式中:noml_eikl以及noml_eime分別為eikl和eime各自歸一化后得到的;ω為KL散度的權(quán)重參數(shù)。
對于計(jì)算了混合熵的樣本,采用局部離群因子(local outlier factor,LOF)進(jìn)行離群點(diǎn)檢測,檢測后的樣本,取前N個(gè)樣本送入后續(xù)的相似性度量中。如果只是單純的按照混合熵來進(jìn)行樣本的篩選,則忽略了候選樣本與訓(xùn)練集中樣本的相似性。如圖5所示,其中實(shí)心代表訓(xùn)練樣本,空心代表候選樣本。在分類平面更新時(shí),如果按照熵值來計(jì)算應(yīng)該選擇樣本A進(jìn)行標(biāo)記,但是在訓(xùn)練集中樣本A周圍已經(jīng)存在有與其相似的樣本,考慮到樣本之間的相似性,樣本B在分類平面的更新上相對于樣本A來說可能更好。
圖5 分類平面更新
用余弦相似度來度量候選樣本與訓(xùn)練集樣本的相似度,從而解決樣本的冗余性問題。其計(jì)算公式如式(5)、式(6)所示。
(5)
(6)
式中:L為訓(xùn)練樣本集;n為訓(xùn)練集中與候選樣本xi余弦相似度最大的前n個(gè)樣本。
取這n個(gè)樣本的余弦相似度的均值作為樣本xi與訓(xùn)練集的相似度。因此樣本的混合信息如式(7)所示:
eimix=α·noml_eikl-me+(1-α)·(1-noml_eisimi)
(7)
式中α為混合熵的權(quán)重,混合熵以及相似度在合并計(jì)算之前均需要先分別歸一化。
根據(jù)得到的eimix,選擇最大的前chooseN個(gè)樣本用于專家標(biāo)記。并將標(biāo)記后的樣本送入訓(xùn)練集用于分類器的更新。
算法流程包括2個(gè)部分:初始化訓(xùn)練階段以及在線檢測階段。偽代碼分別如表3、表4所示。
表3 初始化階段算法偽代碼
表4 在線檢測階段算法偽代碼
實(shí)驗(yàn)所使用的數(shù)據(jù)集是來自于加州大學(xué)歐文分校的開源數(shù)據(jù)集[10]。該數(shù)據(jù)集是使用16個(gè)傳感器構(gòu)成傳感器陣列,每個(gè)傳感器采集8個(gè)物理參數(shù)。單個(gè)樣本是一個(gè)128維的數(shù)據(jù)。該數(shù)據(jù)集通過3 a的采樣,對乙醇、乙烯、乙醛、丙酮、氨氣以及甲苯6種氣體進(jìn)行檢測,共采集了13 910個(gè)樣本。該數(shù)據(jù)集詳細(xì)情況如表5所示。
表5 數(shù)據(jù)集詳細(xì)信息
使用Batch1樣本集合作為訓(xùn)練集和驗(yàn)證集,其余的Batch2~10作為在線漂移檢測的測試集。
實(shí)驗(yàn)的過程中對于Batch1中的445個(gè)樣本,選擇其中60個(gè)樣本作為訓(xùn)練集,剩余的385個(gè)樣本作為驗(yàn)證集。為了避免初始訓(xùn)練時(shí)出現(xiàn)類不均衡問題,因此60個(gè)訓(xùn)練樣本是對于樣本集中的6個(gè)類別分別取前10個(gè)樣本。對于初始化訓(xùn)練階段的閾值以及迭代次數(shù)分別設(shè)置為0.95以及10次。
在線檢測階段,在線樣本池的大小設(shè)置為30,單次選擇的樣本數(shù)量chooseN設(shè)置為1,分類器的權(quán)重W0、W1、W2分別設(shè)置為0.58、0.15、0.27。KL散度的權(quán)重ω以及混合熵的權(quán)重α分別設(shè)置為0.21、0.77。使用SVM分類器作為基礎(chǔ)分類器。實(shí)驗(yàn)中所使用的對比算法主要包括AL-US、AL-QBC、AL-EQBC、AL-ACR[11],實(shí)驗(yàn)結(jié)果如表6所示,AL-ACR算法作者將Batch4,5以及Batch8,9分別合并后進(jìn)行檢測。
表6 平均分類準(zhǔn)確率 %
表6中加粗?jǐn)?shù)據(jù)是該批次樣本方法分類準(zhǔn)確率的最大值。其中AL-US,AL-QBC,AL-EQBC與ODHS在算法流程上是一樣的,只是標(biāo)記樣本的選擇策略不同。觀察表6中可以發(fā)現(xiàn)在用約3.69%的樣本作為訓(xùn)練集時(shí),ODHS方法比AL-US、AL-QBC、AL-EQBC、AL-ACR在分類準(zhǔn)確度上分別提高了5.2、6.2、2.8、6.6個(gè)百分點(diǎn)。綜上可以發(fā)現(xiàn)ODHS方法對于提高在線漂移檢測的準(zhǔn)確度相比于其他方法效果好。
對于實(shí)驗(yàn)的參數(shù)分析,選取單次采樣的數(shù)量chooseN,KL散度的權(quán)重ω,混合熵的權(quán)重α進(jìn)行分析。圖6、圖7是在保持其他參數(shù)不變的情況下,設(shè)置chooseN的范圍為1~10,步進(jìn)為1,得到的平均分類準(zhǔn)確率及整體準(zhǔn)確率的變化趨勢。
圖6 chooseN對平均準(zhǔn)確率的影響
圖7 chooseN對整體準(zhǔn)確率的影響
由圖6、圖7可以看出,當(dāng)單次選擇的樣本數(shù)量chooseN增加時(shí),ODHS方法的平均準(zhǔn)確率在chooseN為1~7的范圍內(nèi)一直最高,尤其是在chooseN從1升高為2時(shí),對平均以及整體準(zhǔn)確率的提高最明顯。后期在chooseN為8時(shí)比AL-US平均準(zhǔn)確率低,為9時(shí)與AL-US近乎持平,到10時(shí)則是4種方法中最高的。雖略有波動,但整體趨勢仍為上升。除此之外chooseN的增加使得4種方法的整體分類準(zhǔn)確率持續(xù)上升,且ODHS方法在這一過程中準(zhǔn)確率一直是最高。平均準(zhǔn)確率在后期出現(xiàn)波動,整體準(zhǔn)確率在后期提高趨于平緩。可能的原因在于chooseN的升高,使得標(biāo)記的樣本數(shù)量上升,而這些樣本之間仍然存在著信息冗余,導(dǎo)致分類器性能下降。
圖8、圖9實(shí)驗(yàn)均是在保持其余參數(shù)不變的情況下,對ω及α單一參數(shù)進(jìn)行實(shí)驗(yàn)。由圖8可以發(fā)現(xiàn),隨著ω的增加,整體準(zhǔn)確率整體趨勢是下降的,在ω為0.14~0.17區(qū)間內(nèi)出現(xiàn)了較大值。平均準(zhǔn)確率是先上升后下降,因此可以確定如果只由KL散度或者M(jìn)E熵來評價(jià)樣本均是不合適的,當(dāng)ω在0.1~0.5范圍內(nèi)平均準(zhǔn)確率以及整體準(zhǔn)確率都有一個(gè)較大值。由圖9可知,混合熵的權(quán)重α在0.7~0.9范圍內(nèi),平均以及整體準(zhǔn)確率均處于一個(gè)較大范圍,且α在0.77左右時(shí),平均以及整體準(zhǔn)確率均處于一個(gè)較大值。因此也證明了將樣本不確定性的混合熵與樣本的相似性結(jié)合有助于提高平均以及整體分類的準(zhǔn)確率。
圖8 ω對準(zhǔn)確率的影響
圖9 α對準(zhǔn)確率的影響
為了解決電子鼻系統(tǒng)中存在的漂移問題,本文提出了ODHS算法,該算法用主動學(xué)習(xí)和分類器集成方法構(gòu)建算法框架,然后在主動學(xué)習(xí)中充分考慮內(nèi)部子分類器以及集成分類器對樣本分類的意見,并結(jié)合樣本相似性度量,從而選擇對于提高分類準(zhǔn)確率更有效的樣本。實(shí)驗(yàn)證明相對于其他方法,在使用少量訓(xùn)練樣本的情況下,該方法仍能取得一個(gè)較好的精度。但是在采樣過多的情況下,該算法對于分類準(zhǔn)確率的提高幅度逐漸降低。后期的工作將改進(jìn)ODHS算法,使其在采樣數(shù)量增加時(shí)能繼續(xù)大幅提高分類準(zhǔn)確率。