沈 斌, 靳春博, 劉新蕾
(黑龍江科技大學(xué) 安全工程學(xué)院, 哈爾濱 150022)
氣敏感應(yīng)器具有制造成本低、靈敏度高、穩(wěn)定性好等優(yōu)勢(shì),可用于無(wú)線傳感網(wǎng)和電子鼻系統(tǒng)等領(lǐng)域[1]。由于氣敏傳感器本身的交叉敏感性和氣體漂移現(xiàn)象的產(chǎn)生,以及受到工作環(huán)境中的外界因素影響,導(dǎo)致在各種氣體環(huán)境中工作的單個(gè)傳感器往往難以實(shí)現(xiàn)對(duì)目標(biāo)氣體的精確測(cè)量[2],因而數(shù)據(jù)傳輸時(shí)如何對(duì)監(jiān)測(cè)數(shù)據(jù)實(shí)現(xiàn)精準(zhǔn)的分析分類是當(dāng)下的難題。
提升傳感器數(shù)據(jù)分類精度主要有兩種途徑:一是提高傳感器本身的性能,以減小因傳感器本身問(wèn)題對(duì)檢測(cè)數(shù)據(jù)偏于理想情況的偏差;二是優(yōu)化模式識(shí)別算法,以提升數(shù)據(jù)分類算法的分類能力[3]。陳寅生等[4]在提高識(shí)別二元結(jié)構(gòu)有機(jī)物質(zhì)成分準(zhǔn)確性的實(shí)踐中,發(fā)現(xiàn)了KPCA和MRVM可以組合鑒別,實(shí)驗(yàn)結(jié)果提高了識(shí)別精確度,但需要選擇適合模型的核函數(shù)及設(shè)定參數(shù)ξ,使訓(xùn)練效率降低。秦軻等[5]利用主成分分析對(duì)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,雖減少了主成分分析算法的信息冗余度,但BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)依舊復(fù)雜。筆者采用兼顧隨機(jī)和復(fù)雜度低的隨機(jī)森林模型,減少算法運(yùn)行的時(shí)間成本,同時(shí)又保持了較高的識(shí)別準(zhǔn)確度,且訓(xùn)練過(guò)程中無(wú)需人工調(diào)節(jié)參數(shù)。
隨機(jī)森林算法實(shí)質(zhì)是由若干個(gè)決策樹所構(gòu)成的模型,而隨機(jī)森林算法則是取模型內(nèi)的各個(gè)決策樹對(duì)決定結(jié)論加以票選,最高得票的為分類的基礎(chǔ)結(jié)論[6]。由于隨機(jī)森林模型以決策樹特征為基礎(chǔ),所以對(duì)決策樹數(shù)學(xué)原理也加以描述,而決策樹計(jì)算則按照選擇最優(yōu)預(yù)測(cè)特征屬性的不同,主要包括ID3決策樹算法、C4.5決策樹算法和CART決策樹算法。
選擇數(shù)據(jù)樣本信息的數(shù)據(jù)增益劃分最優(yōu)屬性的類別為ID3決策樹算法。信息熵是反映統(tǒng)計(jì)樣本集合純度的指數(shù),而信息增益ED出自信息熵,表達(dá)式為
(1)
式中:D——數(shù)據(jù)樣本集;
Pk——第k類樣本所占總樣本的百分比。
由式(1)可知,ED的比值越小說(shuō)明了數(shù)據(jù)樣本集D的純度就越高。用某一特征或?qū)傩缘腶劃分集合D時(shí)會(huì)產(chǎn)生V個(gè)分支節(jié)點(diǎn),記作第V個(gè)分支節(jié)點(diǎn)為Dv,得到屬性a劃分?jǐn)?shù)據(jù)樣本集合的信息增益為
(2)
ID3決策樹算法的缺點(diǎn)是處理連續(xù)性變量屬性的能力較差,存在利用偏向于分類較多的屬性進(jìn)行分類的情況[7]。
確定了樣本中信息增益率的最優(yōu)屬性的類別為C4.5決策樹算法,利用信息增益率的分析可以減少對(duì)ID3決策樹算法的不良影響。表達(dá)式為
(3)
(4)
CART決策樹算法是利用數(shù)據(jù)集合的基尼指數(shù)劃分最優(yōu)屬性的,屬性a的基尼指數(shù)為
(5)
基尼值Gi(D)用來(lái)表示數(shù)據(jù)樣本集合D的純度,即在數(shù)據(jù)樣本集合中用隨機(jī)抽取的方式類別不相同的發(fā)生概率,概率越小表示數(shù)據(jù)樣本集合的純度越高,基尼值的表達(dá)式為
(6)
隨機(jī)森林首先使用自助采樣法隨機(jī)有放回的方法選擇樣本,每顆決策樹將選擇大約為總樣品集合63.2%的數(shù)量作為初始訓(xùn)練集,剩余36.8%的數(shù)據(jù)用作測(cè)試集也可用于隨機(jī)森林模型的改進(jìn)優(yōu)化。其次則是特征屬性選擇時(shí)的隨機(jī)抽樣,是為了在生成決策樹時(shí)隨機(jī)選取樣本特征屬性,然后將決策樹進(jìn)行組合構(gòu)成隨機(jī)森林模型[8]。隨機(jī)森林模型的運(yùn)算過(guò)程就是采用自助采樣法對(duì)訓(xùn)練集進(jìn)行訓(xùn)練,再通過(guò)訓(xùn)練結(jié)果產(chǎn)生若干個(gè)決策樹,利用產(chǎn)生的決策樹對(duì)樣本決策分類最后取投票最多的為隨機(jī)森林模型的分類結(jié)果。
隨機(jī)森林模型分類時(shí)會(huì)產(chǎn)生預(yù)測(cè)的數(shù)據(jù)集,該數(shù)據(jù)集與實(shí)際測(cè)試集存在偏差,預(yù)測(cè)正例與真實(shí)正例相同的稱之為真正例,不相同的則稱之為假正例,同樣,預(yù)測(cè)反例與真實(shí)反例相同的稱之為真反例,不相同的則稱之為假反例。統(tǒng)計(jì)以上幾種分類結(jié)果的情況可以得到二元混淆矩陣[9],見(jiàn)表1。
表1 分類結(jié)果混淆矩陣
由學(xué)習(xí)器預(yù)測(cè)的結(jié)果得到衡量算法模型優(yōu)劣的評(píng)價(jià)指標(biāo):準(zhǔn)確率A、查全率Se、查準(zhǔn)率P、特異度Sp和F1值的表達(dá)式為
(7)
(8)
(9)
(10)
(11)
統(tǒng)計(jì)準(zhǔn)確率為所分類樣本分類正確的數(shù)量與樣本總樹的百分比,而查準(zhǔn)率則表示將模型準(zhǔn)確的度量,查全率即代表模型分析的真正例數(shù),特異度即代表模型分析的真負(fù)例數(shù),F(xiàn)1值為調(diào)和平均,是機(jī)器學(xué)習(xí)算法中比較常見(jiàn)的一個(gè)評(píng)價(jià)方法。
隨機(jī)森林模型本質(zhì)是將多個(gè)決策樹結(jié)合起來(lái),每個(gè)樹都是獨(dú)立的且分布形式相同,而每個(gè)樹的分類錯(cuò)誤程度與各個(gè)樹的相關(guān)性有關(guān)。在特征選取中,隨機(jī)的對(duì)每個(gè)節(jié)點(diǎn)進(jìn)行分割,并對(duì)不同情形下的錯(cuò)誤進(jìn)行比較。所探測(cè)到的內(nèi)在估計(jì)誤差、分類能力和關(guān)聯(lián)度確定了所選取的特性數(shù)量。盡管每個(gè)樹的劃分工作能力相對(duì)較低,但經(jīng)過(guò)隨機(jī)地生成了大規(guī)模的決策樹以后,能夠根據(jù)各樣本的劃分結(jié)論加以計(jì)算,并從中選出最有可能性的類型[10]。隨機(jī)森林的具體實(shí)現(xiàn)過(guò)程分為5個(gè)步驟。
步驟1給定的訓(xùn)練集合S,檢測(cè)集合T,以及特征維度F。確定系數(shù):決策樹的數(shù)量t,每棵樹的大小d,每節(jié)點(diǎn)所用到的特征量f,以及終止條件,節(jié)點(diǎn)s,節(jié)點(diǎn)上最少的信息增益m對(duì)于第i棵樹,i=1∶t。
步驟2在S中有放回的抽取尺寸與S相同的訓(xùn)練集S(i),可以當(dāng)作根節(jié)點(diǎn)的練習(xí)樣本,從根節(jié)點(diǎn)中進(jìn)行練習(xí)。
步驟3假設(shè)在當(dāng)前節(jié)點(diǎn)上滿足了終止要求,那么設(shè)定當(dāng)前節(jié)點(diǎn)作葉子節(jié)點(diǎn),該樹葉節(jié)點(diǎn)的估計(jì)輸出就是當(dāng)前節(jié)點(diǎn)樣本集中數(shù)量最多的那一個(gè)c(j),概率p為c(j)占當(dāng)前樣本集的百分比;假設(shè)當(dāng)前節(jié)點(diǎn)不能滿足終止要求,可在所有F維特征中隨機(jī)選擇f維特征(f?F)。使用這f維特征,可以找出分類效率較好的一維特性k及閾值th,當(dāng)前節(jié)點(diǎn)上所有樣品第k維特性低于th的樣品被分配到左節(jié)點(diǎn),而剩下的則被分配到右節(jié)點(diǎn)。繼續(xù)訓(xùn)練其他節(jié)點(diǎn)。
步驟4復(fù)制步驟2、3直到每個(gè)結(jié)點(diǎn)都被訓(xùn)練完了,或是被記錄為葉子節(jié)點(diǎn)。
步驟5重復(fù)步驟2~4直至所有決策樹都被訓(xùn)練過(guò)。
文中所采用的實(shí)驗(yàn)系統(tǒng)見(jiàn)圖1。其中,包括催化燃燒型氣體傳感器、數(shù)據(jù)采集系統(tǒng)、氣源和計(jì)算機(jī)。
圖1 實(shí)驗(yàn)系統(tǒng)示意Fig. 1 Schematic of experimental system
選取二氧化碳傳感器分別檢測(cè)0.3%、0.5%、2%、10%和40%體積分?jǐn)?shù)的二氧化碳進(jìn)行系統(tǒng)檢測(cè)實(shí)驗(yàn),經(jīng)過(guò)實(shí)驗(yàn)得到傳感器的檢測(cè)數(shù)據(jù)如圖2所示。
圖2 檢測(cè)信號(hào)及特征選取Fig. 2 Detection signal and feature selection
由系統(tǒng)輸出信號(hào)可以觀察出,不同時(shí)刻系統(tǒng)對(duì)不同體積分?jǐn)?shù)二氧化碳的響應(yīng)信號(hào)是不同的,從圖2可以看出,在等待10 s后傳感器開(kāi)始響應(yīng)二氧化碳?xì)怏w,檢測(cè)的輸出電壓逐漸提升,0.3%、0.5%、2%、10%和40%體積分?jǐn)?shù)的響應(yīng)輸出電壓在25 s處逐步趨于穩(wěn)定在0.6、1、2.4、16和32 mV處,在98 s處阻斷二氧化碳?xì)怏w通入傳感器時(shí)響應(yīng)輸出電壓迅速回復(fù)到初始狀態(tài)。從系統(tǒng)檢測(cè)信號(hào)分析,系統(tǒng)對(duì)不同濃度氣體的響應(yīng)信號(hào)具有差異,因此,可以根據(jù)檢測(cè)信號(hào)的特征信息實(shí)現(xiàn)檢測(cè)氣體濃度的區(qū)分。文中選取傳感器響應(yīng)曲線的輸出電壓值及其對(duì)應(yīng)的響應(yīng)時(shí)間點(diǎn)構(gòu)成特征值向量用于后續(xù)的算法識(shí)別。
決策樹棵樹一定程度上影響隨機(jī)森林模型分類的準(zhǔn)確性,因而確保準(zhǔn)確度的同時(shí)需要盡量減少?zèng)Q策樹的棵樹,以提高模型的運(yùn)行效率。設(shè)置的決策樹棵樹m在0~1 000棵范圍內(nèi)并以50棵遞增,以不同棵樹的決策樹訓(xùn)練并取得精確度的均值,得到?jīng)Q策樹的棵樹和模型準(zhǔn)確率間的關(guān)聯(lián),見(jiàn)圖3。由圖3可以看出,在訓(xùn)練決策樹的每棵樹總量較少時(shí),精確度就比較少,而伴隨訓(xùn)練決策樹的增加,隨機(jī)森林模型的精確度也在上升。而產(chǎn)生這個(gè)趨勢(shì)的主要因素,是由于訓(xùn)練樣本和節(jié)點(diǎn)變量都是隨機(jī)選擇的結(jié)果,當(dāng)訓(xùn)練決策樹總量較少時(shí),會(huì)由于隨機(jī)性而造成RF模式的精確度較低;當(dāng)決策樹的總量在逐步增加時(shí),這種隨機(jī)性就在不斷減少,因?yàn)樗凶償?shù)都可以更全面地對(duì)分類結(jié)果產(chǎn)生影響,從而訓(xùn)練模型的準(zhǔn)確度也就在逐步提高;當(dāng)訓(xùn)練決策樹增長(zhǎng)到一定規(guī)模時(shí),隨機(jī)數(shù)列對(duì)訓(xùn)練RF建模準(zhǔn)確度所產(chǎn)生的影響就已經(jīng)很小,所以即使是在不斷提高訓(xùn)練決策樹的規(guī)模,準(zhǔn)確度也就沒(méi)有增加。當(dāng)模型內(nèi)決策樹棵數(shù)超過(guò)150棵時(shí),建模精確度就不再提高,因此選取總決策樹150棵為最優(yōu)數(shù)量。
圖3 RF模型準(zhǔn)確率與決策樹棵樹關(guān)系Fig. 3 RF model accuracy and decision tree
利用Matlab平臺(tái),建立了含有150棵決策樹的隨機(jī)森林算法模型,待模型構(gòu)建完畢后選擇實(shí)驗(yàn)系統(tǒng)響應(yīng)5組不同體積分?jǐn)?shù)的輸出信號(hào)與特征向量數(shù)據(jù)各120個(gè),共600組實(shí)驗(yàn)數(shù)據(jù)。并將實(shí)驗(yàn)數(shù)據(jù)以7∶3比例隨機(jī)地分為訓(xùn)練集與實(shí)驗(yàn)集[11],數(shù)據(jù)劃分的情況見(jiàn)表2。其中,η為訓(xùn)練集和測(cè)試集占總數(shù)據(jù)的比例。
表2 數(shù)據(jù)樣本劃分詳情
將處理好的數(shù)據(jù)導(dǎo)入到隨機(jī)森林模型中進(jìn)行訓(xùn)練,多次實(shí)驗(yàn)并統(tǒng)計(jì)分類結(jié)果取得模型的各個(gè)評(píng)價(jià)指標(biāo)的平均值如圖4所示。其中,百分比為w。
圖4 RF模型性能指標(biāo)Fig. 4 RF model performance index
從圖4可以看出,RF模型對(duì)三種不同濃度氣體分類準(zhǔn)確率的均值分別為0.92、0.96、0.95、0.96和0.94也就是說(shuō),在理想條件下,隨機(jī)森林模型對(duì)于不同氣體的平均分類精度可以達(dá)到0.946,大大超過(guò)常規(guī)方法的精度;同時(shí),該模型查準(zhǔn)率的均值為0.920,查全率的均值為0.864,特異度的均值為0.824,F(xiàn)1的均值為0.891,表明了該模型在氣體分類中的應(yīng)用是可行的。利用機(jī)器學(xué)習(xí)技術(shù)對(duì)氣體進(jìn)行分類,可以顯著減少人工費(fèi)用,縮短分類時(shí)間,提高不同濃度氣體的分類效率是未來(lái)氣體傳感器數(shù)據(jù)分類方法的趨勢(shì)。
利用Matlab數(shù)學(xué)軟件構(gòu)建了隨機(jī)森分類林算法模型,對(duì)實(shí)驗(yàn)所得CO2氣體傳感器數(shù)據(jù)進(jìn)行分類實(shí)驗(yàn)。
(1)在傳統(tǒng)傳感器數(shù)據(jù)分類方法的基礎(chǔ)上,提出了隨機(jī)森林機(jī)器學(xué)習(xí)算法,將輸出電壓和對(duì)應(yīng)時(shí)間以向量的方式進(jìn)行結(jié)合,作為檢測(cè)數(shù)據(jù)的特征向量,驗(yàn)證了隨機(jī)森林算法的有效性。分析了決策樹顆樹對(duì)模型性能的影響,設(shè)置決策樹的數(shù)量為150棵時(shí)模型分類正確率最高達(dá)到86.21%,使模型達(dá)到最佳分類性能。
(2)將數(shù)據(jù)導(dǎo)入到模型中訓(xùn)練,最終模型分類準(zhǔn)確度為94.6%,實(shí)驗(yàn)結(jié)果證實(shí),所提出的隨機(jī)森林分類模型能夠更高效地實(shí)現(xiàn)對(duì)傳感器數(shù)據(jù)的分類。