李紫蕊,范書瑞,花中秋,夏克文,張 艷
(河北工業大學電子信息工程學院,天津市電子材料與器件重點實驗室,天津 300401)
氣敏傳感陣列因具有低成本、低功耗、能夠實現多元氣體檢測等優點在電子鼻系統和無線傳感網等領域中應用廣泛[1-2]。然而,氣敏傳感器具有交叉敏感性,單個傳感器在多元氣體環境中無法實現目標氣體的檢測[3]。
對于這一問題主要從傳感器陣列的選擇和模式識別兩個方面來解決。劉文貞等人[4]將遺傳算法優化的小波神經網絡用于建立基于紅外光譜的三組分氣體定量分析模型中有效地解決了氣體之間相互干擾的問題。陳寅生等人[5]提出基于KPCA與MRVM的二元混合氣體成分識別算法,提高了二元混合氣體成分識別的準確率。但KPCA需要選擇合適的核函數與參數ξ,降低了訓練效率。為此,奉軻等人[6]提出PCA(Principle Component Analysis,主成分分析)與BP神經網絡相結合的方法,雖然PCA減少了信息的冗余度,但BP神經網絡的結構依舊復雜。因此,需要一種識別準確率較高且模型復雜度較低的氣體定性識別方法。在回歸方法中SVR(Support Vector Regression,支持向量回歸)表現出了優異的性能[7-8],然而其性能的優劣在很大程度上取決于超參數。在以前支持向量機應用于傳感器陣列的工作中,都采用一種簡單的網格搜索方法[9-10]來選擇合適的超參數。這種技術遍歷指定值參數的子空間來選擇最優值。由于超參數的取值空間不受限制,在很多情況下可以取任意實數值,因此子空間的選擇并不簡單。
為了解決上述問題,本文提出一種基于隨機森林和粒子群優化的SVR的混合氣體分析方法,實現對混合氣體的高準確率檢測,解決SVR超參數選擇的問題。
本文提出的混合氣體分析方法主要分為氣體定性識別和氣體定量分析兩個部分,定性識別采用PCA和隨機森林相結合的方法,定量分析采用粒子群優化的SVR進行分析。
基于PCA和隨機森林的混合氣體定性識別算法框圖如圖1所示。訓練過程中,利用PCA對訓練樣本集進行特征提取,得到特征向量集,利用特征向量集訓練隨機森林,得到隨機森林模型;測試過程中,利用PCA對測試樣本集進行特征提取,得到特征向量,利用訓練得到的隨機森林模型進行定性識別,得到定性識別結果。

圖1 混合氣體定性識別方法
基于粒子群優化的SVR算法的混合氣體定量分析方法框圖如圖2所示,整個過程分為訓練過程和測試過程。訓練過程中,用粒子群優化的SVR算法對訓練樣本集進行訓練,獲取最優超參數C和Gamma,然后保存最優模型;測試過程中,用訓練得到的最優模型對測試樣本集進行各成分的濃度估計。

圖2 混合氣體定量分析方法
特征提取是模式識別和機器學習領域的基礎和重要課題之一[11]。PCA是特征提取的一種方法,其基本思想是通過一組正交向量將原有特征(n個)變換為一組按照重要性從大到小依次排列的新特征(r個,r 假設X=[x1,x2,…,xM]∈RM×N為原始樣本,其中,N為變量個數,M為樣本個數,xi∈RN表示第i個N維樣本。 (1) 用特征值分解方法求解協方差矩陣C(式(2))的特征值和特征向量,特征值從大到小排序為λ1,λ2,…,λN,對應的特征向量為α1,α2,…,αN。 (2) 最后通過特征值對方差的累計貢獻率rCCR(式(3))確定要降的維數,rCCR≥95%時的p即為維數。 (3) 隨機森林來源于決策樹和bagging,決策樹從給定的訓練數據集中學習到一個模型用于對新示例進行分類。該算法需要兩部分數據:用于構造決策機制的訓練數據和用于驗證所構造決策樹的測試數據。決策樹學習算法的流程如下: 隨機森林在以決策樹為基學習器構建bagging集成的基礎上,進一步在決策樹的訓練過程中引入了隨機屬性選擇。 粒子群優化算法通過群體中個體之間的協作和信息共享來尋找最優解[12],整個算法的流程如下: ①初始化一群微粒(群體規模為N)以及它們的速度和位置,設置最大迭代次數; ②定義適應度函數,評價每個微粒的適應度; ③個體極值為每個粒子找到的最優解,從這些最優解找到一個全局值,叫做本次全局最優解。與歷史全局最優比較,進行更新; ④通過式(3)和式(4)更新粒子的速度和位置,其中,Vid和Xid為粒子i的d維速度和d維位置,Pid和Pgd為粒子i搜索的d維最優位置和整個種群的全局最優位置,ω為慣性因子,C1和C2為學習因子,random(0,1)為(0,1)之間的隨機數; Vid=ωVid+C1random(0,1)(Pid-Xid)+C2random(0,1)(Pgd-Xid) (3) Xid=Xid+Vid (4) ⑤達到設定迭代次數時終止算法,未達到則返回步驟②繼續執行。 SVR已被證明在化學傳感器陣列的應用上比其他機器學習技術更準確。但超參數的選擇往往耗費大量的時間,降低了整個算法的運行效率。因此,本文利用粒子群算法選擇超參數C和gamma的最優組合,算法流程如圖3所示。 圖3 粒子群優化SVR算法 實驗樣本基于UCI數據集[13],該數據集由不同濃度的甲烷、乙烯、空氣以及其混合物在16個傳感器(TGS2600、TGS2602、TGS2610、TGS2620(每種類型有4個單元))的陣列下的響應組成,持續測量的時間為10 486 s。 為了更好地驗證本文提出的混合氣體分析方法,實驗樣本選擇2 001~4 300 s的數據,在這段時間內氣體類別有甲烷、乙烯、空氣以及甲烷和乙烯的混合物。為了使實驗結果更具有說服力,通過隨機選取的方式劃分訓練集和測試集。 獲取實驗樣本的傳感器屬于氣敏傳感器。氣敏電阻的材料是金屬氧化物,通常器件工作在空氣中,空氣中的氧和二氧化氮這樣的電子兼容性大的氣體接受來自半導體材料的電子而吸附負電荷,結果使N型半導體材料的表面空間電荷層區域的傳導電子減少,使表面電導減小,從而使器件處于高阻狀態。一旦元件與還原性氣體接觸,就會與吸附的氧發生反應,將被氧束縛的電子釋放出來,敏感膜表面電導增加,使元件電阻減小。 為了探究獲取實驗樣本的傳感器對甲烷和乙烯的響應特性,以TGS2620傳感器為例,觀察其歸一化響應以及對應時間段兩種氣體的濃度變化(為更加清楚地觀察濃度變化,分別將兩種氣體的濃度進行了歸一化)。分析圖4可以看出,在前一個時間段內只出現一種氣體(甲烷)的條件下,傳感器的響應具有三個典型階段:傳感器首先暴露于干凈的空氣來達到基線水平,隨后通入甲烷直到達到穩定的響應狀態,當氣體樣本濃度降為0 ppm時,傳感器恢復到基線水平;而在后一時間段內出現兩種氣體混合的情況,傳感器的響應曲線不再像之前一樣具有很明顯的三個階段。 圖4 傳感器響應曲線 經過以上分析可以得出,當所處環境中只有一種氣體時,TGS系列的傳感器具有穩定的響應;當有兩種氣體時,傳感器具有交叉敏感性,這嚴重影響氣體檢測的準確性。我們并不能夠直接根據原始數據準確地對混合氣體進行定性識別,需要提取出包含有用信息的特征并結合合適的分類器才能解決傳感器的交叉敏感性對氣體識別帶來的影響。 計算了16個特征值的貢獻率及其累計貢獻率,并繪制了各類別投影到前3個成分上的數據分數。由圖5可看出,在前3個主成分下,各類別分別能夠聚到一起,有助于進一步地定性識別。并且計算前3個特征值的累計貢獻率達到了97.87%(超過95%),這證明前3個主成分能夠大致代表所有的數據。原始的實驗訓練樣本為1 840×16,測試樣本為460×16,經過PCA進行特征提取后,特征訓練樣本為1 840×3,特征測試樣本為460×3。 圖5 前3個主成分的PCA得分圖 實驗數據可以分為4類:甲烷、乙烯、空氣、甲烷和乙烯的混合物,將這些數據代入到隨機森林分類中,得到4種類別的識別率。為了說明本文提出的PCA與隨機森林相結合的定性識別方法的識別效果,下面將對隨機森林(RF)、LogisticRegression(LR)和支持向量機(SVM)的識別效果進行比較。 本文用到的特征提取方法PCA屬于線性特征提取,因此SVM的核函數選擇‘linear’線性核函數,超參數C的選擇集合為{0.1,1,10,100,1 000},SVM利用C的每一選擇取值訓練模型并進行測試,最后比較每一次測試集的識別精度。經過實驗發現,5次測試集的識別精度相差不大,均在0.80~0.82范圍內,因此選擇識別精度最大值0.82對應的超參數C的值0.1。 表1給出了LR、SVM與RF3種分類方法對于4種氣體類別的識別率和平均識別率,由表2可以看出隨機森林在4種氣體成分中的識別率最高,分別為0.96、0.98、0.95、0.94,平均識別率也最高為0.95。 表1 識別率和平均識別率 混合氣體的定量分析需要在定性識別之后進行,對單一氣體和混合氣體分別利用粒子群優化的SVR進行濃度估計。 (3) 使用粒子群優化的SVR對于不同類別選擇出的C和gamma值以及濃度估計結果如表2所示。 表2 不同類別的參數和濃度估計結果 為了說明本文提出的粒子群優化SVR(PSO+SVR)算法的有效性,下面將對比該算法與SVR的濃度估計結果。 (4) 取均方根誤差RMSE最小時對應的超參數C和gamma組合,結果如表3所示。 表3 SVR預測各氣體使用的參數 圖6對比了PSO+SVR與SVR的濃度估計結果(橫坐標的“1”、“2”、“3”、“4”分別對應甲烷、乙烯、混合氣體中的甲烷、混合氣體中的乙烯),從圖5中可以看出PSO+SVR對所有氣體類別的估計準確率均比SVR高10%以上。 圖6 不同方法的濃度估計準確率對比 本文提出一種基于隨機森林和粒子群優化的SVR的混合氣體分析方法。該方法利用PCA進行特征提取,再利用隨機森林實現定性識別,最后利用粒子群優化的SVR算法進行氣體濃度的估計。通過與LogisticRegression和SVM的識別結果進行對比,證明了PCA與隨機森林相結合的平均識別率最高達到了95%;粒子群優化的SVR對各氣體類別的濃度估計準確率均比SVR高10%以上,證明了粒子群優化的SVR算法有較高的回歸效果,有效地解決了SVR超參數選擇困難的問題。
2.2 隨機森林

3 混合氣體定量分析
3.1 粒子群優化算法
3.2 粒子群優化的SVR算法

4 實驗樣本
4.1 實驗樣本組成
4.2 傳感器響應特性分析

5 實驗結果與分析
5.1 PCA特征提取

5.2 混合氣體定性識別

5.3 混合氣體定量分析





6 結論