周啟超,劉 劍,劉 麗,黃 德,鄧立軍,蔣清華
(1.遼寧工程技術(shù)大學(xué) 安全科學(xué)與工程學(xué)院,遼寧 葫蘆島 125105; 2.遼寧工程技術(shù)大學(xué) 礦山熱動力災(zāi)害與防治教育部重點實驗室,遼寧 葫蘆島 125105)
近幾年,支持向量機作為經(jīng)典的模式識別方法,在機器學(xué)習(xí)中占有重要的地位。文獻[1]運用支持向量機根據(jù)風(fēng)量特征,建立了通風(fēng)系統(tǒng)故障診斷模型,取得了一定成果;文獻[2]運用SVM方法預(yù)測礦井通風(fēng)阻力系數(shù),提高了阻力系數(shù)預(yù)測的準(zhǔn)確率;文獻[3]采用SVM評價輸油管道的脆性程度;文獻[4]運用SVM建立了建筑工地安全預(yù)警模型,減少施工過程中事故發(fā)生的可能。由于c,g的取值范圍很大,僅憑人力窮舉耗費的時間和精力是巨大的,若隨機選取c,g的值可能會導(dǎo)致故障診斷準(zhǔn)確率偏低,并且模型不同,SVM對應(yīng)的最優(yōu)c,g參數(shù)也不同,支持向量機的分類精度很大程度上取決于參數(shù)的選取,因此對參數(shù)進行優(yōu)化對解決問題具有重要的意義。近些年,越來越多的方法被應(yīng)用于支持向量機參數(shù)優(yōu)化,如粒子群算法,網(wǎng)格尋優(yōu)方法、花朵授粉算法、人工魚群算法等[5-11]。文獻[5]通過粒子群優(yōu)化的SVM對瓦斯涌出量進行預(yù)測,但是粒子群算法收斂速度慢,容易陷入局部最優(yōu)解;文獻[6]采用網(wǎng)格搜索的方法優(yōu)化最小二乘SVM,雖然獲得較高的精度,但是網(wǎng)格尋優(yōu)算法計算量大,需要的時間較長;文獻[7]選取人工魚群方法進行參數(shù)優(yōu)化,具有較好的并行性,但是人工魚群方法會出現(xiàn)無法準(zhǔn)確得到最優(yōu)解的情況;文獻[8]提出的花朵授粉方法在尋優(yōu)過程中容易陷入局部最優(yōu)解,效率低。遺傳算法具有良好的全局搜索能力以及收斂速度快的優(yōu)點,本文利用遺傳算法對SVM參數(shù)進行優(yōu)化。
目前,對SVM進行參數(shù)尋優(yōu),利用優(yōu)化后的SVM解決問題的研究有很多,但是解決通風(fēng)系統(tǒng)故障的研究較少,本文利用遺傳算法對SVM的懲罰參數(shù)和核函數(shù)參數(shù)進行優(yōu)化,利用優(yōu)化后的SVM對通風(fēng)系統(tǒng)進行故障診斷,提升了故障診斷的準(zhǔn)確率,對提高礦井通風(fēng)安全智能化管理以及通風(fēng)系統(tǒng)安全保障能力有一定的指導(dǎo)意義和建設(shè)意義。
支持向量機在機器學(xué)習(xí)中占有重要地位,其相比于其他的分類預(yù)測算法,有著更高的準(zhǔn)確率且具有較強的魯棒性。SVM的基本思想是在N維空間利用結(jié)構(gòu)風(fēng)險最小化(SRM)原則設(shè)計具有最大間隔的最優(yōu)分類面,使樣本線性可分,分類平面如圖1所示。
圖1 分類平面示意Fig.1 Schematic diagram of the classification plane
圖1中黑色實線為分類決策面,最優(yōu)超平面問題就是使分類間隔margin達到最大[12]。
分類決策函數(shù)表達式[13]為:
M(x)=sgn(w·φ(x)+b)
(1)
式中:sgn(·)為符號函數(shù);w為N維權(quán)向量;b為分類閾值;φ(x)為將x映射后的特征向量。
根據(jù)結(jié)構(gòu)風(fēng)險最小化原則,分類面優(yōu)化問題的目標(biāo)函數(shù)進一步演化為[14]:
(2)
式中:c為懲罰系數(shù);ξi為松弛系數(shù)。
SVM進行分類的過程中,是將原本線性不可分的問題映射到高維空間變?yōu)榫€性可分,樣本會存在噪聲,使整個模型無解。式(2)中ξi的意義就是允許噪聲的存在,將問題變?yōu)榻凭€性可分;c決定著ξi的大小,即c決定著模型對于這種誤差的容忍程度,c的取值過大,ξi就會非常小,不允許噪聲的存在,此時會出現(xiàn)過擬合的現(xiàn)象,降低模型的泛化能力,如圖2(a)所示;若c取值過小,模型對于誤差的容忍程度過大,會造成欠擬合,如圖2(b)所示。
圖2 過、欠擬合情況分類平面示意Fig.2 Schematic diagram of the classification of over-fitting
文獻[1]使用的高斯徑向基核函數(shù)運用最為廣泛,無論樣本大小都有較好的性能[15],對此核函數(shù)進行分析實驗,其中:
(3)
(4)
式中:δ為高斯核的帶寬;g為核函數(shù)參數(shù)。
根據(jù)式(3)、式(4)可以看到,g取值的大小會直接影響整個核函數(shù)的映射性能以及支持向量的個數(shù),如果g設(shè)的太大,會造成徑向基函數(shù)(RBF)只作用于支持向量樣本附近,對于未知樣本分類效果很差;而如果設(shè)的過小,則會造成平滑效應(yīng)太大,最終影響SVM進行故障診斷的準(zhǔn)確率。
通常,c的取值范圍為(0,100],g的取值范圍為[0,1000],針對不同問題,c,g的取值范圍不同,本文c的取值在區(qū)間(0,1.5],g的取值在區(qū)間[0,5]。利用文獻[1]中的10分支通風(fēng)網(wǎng)絡(luò)數(shù)據(jù)進行故障診斷驗證優(yōu)化c,g取值的必要性,其中訓(xùn)練樣本52個,測試樣本95個。
1.2.1c,g對故障診斷準(zhǔn)確率的影響性分析
為了得到c,g變化對于準(zhǔn)確率的具體影響,令c,g每隔0.01取值,兩兩組合得到75 000組準(zhǔn)確率數(shù)據(jù),c,g對準(zhǔn)確率的影響具體如圖3所示,得到c,g對準(zhǔn)確率影響的規(guī)律:c越大對誤差的容忍程度越小,得到的準(zhǔn)確率越高,但是過大會出現(xiàn)過擬合;c過小,模型準(zhǔn)確率降低,模型對誤差容忍程度較大,出現(xiàn)了欠擬合的現(xiàn)象。g的取值小,模型準(zhǔn)確率高,但g過小也會導(dǎo)致模型出現(xiàn)過擬合的現(xiàn)象。上述窮舉方法耗費時間巨大,而且只能看出c,g最優(yōu)取值的大致范圍,很難確定最優(yōu)c,g的取值。
圖3 c,g取值范圍準(zhǔn)確率Fig.3 c,g the optimal value range accuracy rate map
為了清楚的看到上述現(xiàn)象,將圖3進行局部放大,得到的結(jié)果如圖4所示。
圖4 局部放大圖Fig.4 Partially enlarged view
1.2.2c,g參數(shù)的普適性分析
通過更換100分支樣本,用前文的方法對此樣本的c,g對準(zhǔn)確率的影響規(guī)律及取值區(qū)間進行探究,c,g的取值區(qū)間發(fā)生了變化,c的取值為(0,100],g的取值為[0,1.0],結(jié)果如圖5所示。
圖5 100分支c,g取值范圍準(zhǔn)確率Fig.5 100 branch, optimal range accuracy rate map
通過和10分支通風(fēng)網(wǎng)絡(luò)c,g最優(yōu)取值區(qū)間以及對故障診斷準(zhǔn)確率的影響分析得到c,g并不具有普適性。在進行礦井通風(fēng)故障診斷時,若人工選取參數(shù),每更換不同的樣本,都要進行c,g對于準(zhǔn)確率影響規(guī)律分析及取值范圍確定,工作量巨大,并且即使依靠人工選取得出最優(yōu)取值范圍,也無法得到最優(yōu)的參數(shù)組合。
1.2.3 隨機選取c,g組合故障診斷準(zhǔn)確率
在前文確定的取值范圍內(nèi),隨機選取c,g進行組合,故障診斷的準(zhǔn)確率見表1。通過結(jié)果可以判斷,隨機選取參數(shù)得到的準(zhǔn)確率并不高,結(jié)果如圖6所示。
表1 c,g組合數(shù)據(jù)Table 1 c, g combination data table
圖6 隨機c,g組合的準(zhǔn)確率對比Fig.6 Comparison of the accuracy of random c and g combinations
1.2.4c,g取值變化對故障診斷準(zhǔn)確率影響程度
為了驗證c,g對于準(zhǔn)確率影響的程度,以c=1,g=1為基礎(chǔ),進行微小的變化,數(shù)據(jù)見表2。
表2 準(zhǔn)確率對比Table 2 Accuracy rate comparison table
數(shù)據(jù)說明c,g的取值發(fā)生很小的變化,就會引起準(zhǔn)確率的大幅波動,人工選取參數(shù)很難精準(zhǔn)的得到最優(yōu)結(jié)果。
綜上所述,人工選取c,g的方法很難得到最優(yōu)的參數(shù)組合,運用算法進行參數(shù)尋優(yōu)是非常必要的。
遺傳算法求解優(yōu)化問題的基本思想是:模仿生物進化的原理,使種群不斷地向目標(biāo)進化。本文中個體為c,g的組合,以SVM故障診斷交叉驗證準(zhǔn)確(CVaccuracy)作為適應(yīng)值,用個體的適應(yīng)值作為評判標(biāo)準(zhǔn),通過選擇、交叉和變異操作,保留優(yōu)秀的個體(適應(yīng)值高的個體),不斷淘汰較差的個體(適應(yīng)值低的個體),最終得到準(zhǔn)確率最高時的c,g。
1)染色體編碼,初始種群的生成
運用遺傳算法解決問題時,首先對個體進行合適的編碼[16]。本文對懲罰系數(shù)c和核函數(shù)參數(shù)g采用實型編碼,初始種群為隨機生成。
2)適應(yīng)度函數(shù)
以交叉驗證準(zhǔn)確率(CVaccuracy)作為適應(yīng)值,計算如下:
(5)
accuracy=mright/m
(6)
式中:accuracy為分類準(zhǔn)確率;v為交叉驗證數(shù);mright為測試樣本中分類正確的樣本個數(shù);m為樣本個數(shù)。
3)選擇算子
本文采用輪盤賭法進行選擇操作。具體過程如下:
設(shè)共有n個個體,每個個體的適應(yīng)值為f(xi)(i=1,…,n),被選擇的概率為p(xi),首先求得個體適應(yīng)值的總和:
(7)
再計算每個個體適應(yīng)值占種群總適應(yīng)值的比例p(xi),最后根據(jù)p(xi)選擇個體。
p(xi)=f(xi)/SUM
(8)
4)交叉算子、變異算子
本文交叉方式為單點交叉。變異的方式有基本位變異和均勻變異[17]。本文采用基本位變異。
改進遺傳算法就是將每代個體適應(yīng)值與種群的平均適應(yīng)值進行比較,適應(yīng)值比平均適應(yīng)值高的個體交叉變異率不變,適應(yīng)值低的,就按照一定的數(shù)學(xué)處理進行賦值。這樣可以保留較好的個體,優(yōu)化適應(yīng)值低的個體,使優(yōu)化效果更加明顯[18]。算子計算如下:
交叉概率:
Pc=0.5(maxfit-fitn)/(maxfit-meanfit)
(9)
變異概率:
Pm=0.01(maxfit-fitn)/(maxfit-meanfit)
(10)
式中:maxfit為當(dāng)代種群中的最大適應(yīng)值;meanfit為平均適應(yīng)值;fitn為第n個個體的適應(yīng)值。
設(shè)置遺傳算法初種群規(guī)模為20。交叉概率初始為0.85,變異概率初始為0.05,以后根據(jù)個體的適應(yīng)值進行自動調(diào)整。設(shè)置程序終止條件為準(zhǔn)確率大于99%或進化代數(shù)達到50代。將改進遺傳算法尋得的最優(yōu)參數(shù)帶入SVM進行計算,得到最終的預(yù)測準(zhǔn)確率,經(jīng)過50次迭代后,得到的適應(yīng)值曲線如圖7所示。
圖7 改進遺傳算法適應(yīng)值曲線Fig.7 Improved genetic algorithm fitness curve
通過圖7可以看出,GA篩選的最佳懲罰系數(shù)c為1.993 1,核函數(shù)參數(shù)g為0.056 018,此時得到的交叉驗證準(zhǔn)確率(CVaccuracy)為82.692 3%。利用參數(shù)優(yōu)化后的SVM進行故障位置診斷,得到的診斷準(zhǔn)確率可以達到97.894 7%,擬合程度如圖8(a)所示,未進行參數(shù)尋優(yōu)時的故障診斷結(jié)果如圖8(b)所示。
通過圖8可以直觀的看出優(yōu)化后的SVM進行故障位置診斷,預(yù)測數(shù)據(jù)與真實數(shù)據(jù)幾乎完全擬合,相比較沒有優(yōu)化的SVM進行故障位置診斷,診斷效果有明顯提升。
機器學(xué)習(xí)的過程中,都會出現(xiàn)過擬合的問題,為了進一步驗證優(yōu)化后的模型不會出現(xiàn)過度擬合的現(xiàn)象,將樣本數(shù)據(jù)擴大,利用本文提出的優(yōu)化模型對文獻[1]中100分支復(fù)雜通風(fēng)網(wǎng)絡(luò)的4 752個訓(xùn)練樣本,4 751個測試樣本進行故障位置診斷。未優(yōu)化模型(c=1,g=2)得到的故障位置診斷準(zhǔn)確率為76.678 6%;利用遺傳算法優(yōu)化參數(shù)后的故障診斷準(zhǔn)確率為78.658 2%。擴大樣本后,遺傳算法優(yōu)化的通風(fēng)故障診斷系統(tǒng)依舊能夠保證準(zhǔn)確率有所提升,說明在優(yōu)化的過程中,未出現(xiàn)過擬合現(xiàn)象。優(yōu)化前后的散點圖如圖9所示。
從前文可以看出,本文采用的GA-SVM方法對于簡單通風(fēng)網(wǎng)絡(luò)和復(fù)雜通風(fēng)網(wǎng)絡(luò)的故障診斷都具有一定的優(yōu)化效果。為了進一步驗證本文方法的有效性,更換了不同通風(fēng)系統(tǒng)的樣本數(shù)據(jù)。GA算法各參數(shù)不變,通風(fēng)系統(tǒng)網(wǎng)絡(luò)圖和得到的結(jié)果如圖10~12所示。未優(yōu)化前的故障診斷準(zhǔn)確率為73.325 1%,經(jīng)過遺傳算法優(yōu)化后的準(zhǔn)確率為91.935 5%。由此可以看出更換樣本后,GA優(yōu)化的通風(fēng)系統(tǒng)故障診斷模型依舊可以提升診斷準(zhǔn)確率,相比于人工選取參數(shù)的方法具有一定的優(yōu)勢。同時可以看出不同的樣本最優(yōu)的c,g參數(shù)也不同,這也證明了c,g參數(shù)不具有普適性,證明了本法的必要性。
故障診斷是對故障位置和故障量診斷,文獻[1]中未進行c,g優(yōu)化時,故障量診斷效果如圖13所示,利用本文方法優(yōu)化參數(shù)后故障量診斷效果如圖14所示,可以看到故障量診斷準(zhǔn)確率有一定的提升。
圖11 驗證樣本遺傳算法適應(yīng)度曲線Fig.11 Verification of the fitness curve of the sample genetic algorithm
圖12 驗證數(shù)據(jù)散點圖Fig.12 Verify data unoptimized scatter plot
圖13 未優(yōu)化參數(shù)故障量診斷回歸效果Fig.13 Unoptimized parameter fault volume diagnosis regression effect
圖14 GA-SVM故障量診斷回歸效果Fig.14 GA-SVM fault diagnosis regression effect
1)本文將遺傳算法與SVM結(jié)合的方法應(yīng)用于通風(fēng)系統(tǒng)故障診斷,試驗結(jié)果表明,經(jīng)遺傳算法優(yōu)化的SVM通風(fēng)系統(tǒng)故障診斷模型擁有更高的準(zhǔn)確率。
2)優(yōu)化后的懲罰系數(shù)(c)和核函數(shù)系數(shù)(g)未引起通風(fēng)系統(tǒng)故障診斷系統(tǒng)的過擬合,有效的減少了擬合誤差并且增強泛化能力。
3)本文所提出的優(yōu)化算法對SVM參數(shù)優(yōu)化后,礦井通風(fēng)系統(tǒng)故障量診斷準(zhǔn)確率有所提升,證明了參數(shù)優(yōu)化的有效性。