宋仁旺,楊 磊,石 慧,董增壽
(太原科技大學(xué)電子信息工程學(xué)院,太原 030024)
近年來(lái),故障監(jiān)測(cè)和診斷技術(shù)不斷發(fā)展,已廣泛應(yīng)用于工業(yè)生產(chǎn)領(lǐng)域。對(duì)工業(yè)設(shè)備進(jìn)行故障診斷,可以快速發(fā)現(xiàn)和定位故障,制定合理有效的維修方案,進(jìn)而縮短設(shè)備故障時(shí)間,對(duì)工業(yè)生產(chǎn)系統(tǒng)地穩(wěn)定運(yùn)行具有重要的意義[1-2]。
貝葉斯方法具有處理故障過(guò)程中的不確定性和多源信息融合的能力,是一種合理有效的故障診斷方法。CHEN等[3]應(yīng)用貝葉斯理論,建立了風(fēng)力發(fā)電機(jī)加速齒輪箱的故障診斷模型。路敦利等[4]提出一種使用K近鄰-樸素貝葉斯決策組合算法對(duì)滾動(dòng)軸承進(jìn)行故障診斷。樸素貝葉斯(naive bayes,NB)網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單,不能充分利用屬性變量之間的依賴關(guān)系,當(dāng)屬性變量之間具有較強(qiáng)的依賴性時(shí),網(wǎng)絡(luò)的分類效果會(huì)下降。ZHANG等[5]提出了一種基于增強(qiáng)數(shù)據(jù)獨(dú)立性的樸素貝葉斯軸承故障診斷方法,從軸承數(shù)據(jù)的屬性特征和樣本維數(shù)兩個(gè)方面去除冗余,減少了數(shù)據(jù)特征之間的相關(guān)性,增強(qiáng)了樸素貝葉斯方法在軸承故障診斷中的性能。為了提高滾動(dòng)軸承故障識(shí)別的正確率,ASR等[6]在不使用組合故障特征作為訓(xùn)練數(shù)據(jù)集的情況下,使用非樸素貝葉斯方法進(jìn)行組合故障診斷。
貝葉斯網(wǎng)絡(luò)(Bayesian network,BN)是不確定性知識(shí)表達(dá)和推理領(lǐng)域的有力工具,可以充分利用變量之間的依賴關(guān)系,具有更高的分類能力[7]。針對(duì)齒輪箱故障信息耦合性、模糊性的不確定性特點(diǎn),周真等[8]構(gòu)建了一種基于事故樹分析方法的三層貝葉斯網(wǎng)絡(luò)模型并解析了貝葉斯網(wǎng)絡(luò)的故障推理過(guò)程,通過(guò)風(fēng)電機(jī)組齒輪箱的故障診斷實(shí)例驗(yàn)證了模型的可行性和貝葉斯網(wǎng)絡(luò)推理的有效性。為了減少建立模型所需要的定性和定量知識(shí),WANG等[9]特別考慮了粗糙集和noisy-OR/MAX模型對(duì)貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)和條件概率表達(dá)式的簡(jiǎn)化,顯著降低了基于貝葉斯網(wǎng)絡(luò)的診斷模型所需的先驗(yàn)知識(shí),降低了診斷模型建立和應(yīng)用的復(fù)雜性。
連續(xù)變量的貝葉斯網(wǎng)絡(luò)故障診斷一般假設(shè)變量服從高斯分布,然而機(jī)械故障信號(hào)是時(shí)變非平穩(wěn)的,高斯分布假設(shè)與實(shí)際情況并不相符。針對(duì)故障診斷涉及到不容易處理的連續(xù)變量,WANG等[10]提出了一種基于離散貝葉斯網(wǎng)絡(luò)的冷水機(jī)組故障診斷方法,該方法能在無(wú)專家參與的情況下快速確定貝葉斯網(wǎng)絡(luò)的參數(shù)。當(dāng)故障樣本數(shù)量較少或者故障樣本不完備時(shí),使用離散貝葉斯網(wǎng)絡(luò)方法進(jìn)行故障診斷時(shí)存在概率統(tǒng)計(jì)因子不充分的問(wèn)題,針對(duì)上述問(wèn)題提出了對(duì)離散貝葉斯網(wǎng)絡(luò)概率分布表進(jìn)行二維插值的算法。
貝葉斯網(wǎng)絡(luò)B=
(1)
(2)
基于依賴分析的貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)方法首先對(duì)訓(xùn)練數(shù)據(jù)集進(jìn)行條件獨(dú)立性測(cè)試,確定變量之間的條件獨(dú)立性;然后利用變量之間的條件獨(dú)立性構(gòu)造一個(gè)有向無(wú)環(huán)圖,以盡可能多地涵蓋這些條件獨(dú)立性。在拓?fù)浣Y(jié)構(gòu)學(xué)習(xí)中,常采用互信息和條件互信息進(jìn)行變量之間條件獨(dú)立性測(cè)試。隨機(jī)變量Xi和Xj的互信息量I(Xi;Xj),以變量XN1,XN2,…,XNs(Nh≠i,j,h=1,2,3,…,s)為條件的隨機(jī)變量Xi和變量Xj的互信息I(Xi;Xj|XN1,XN2,…,XNs)為[13]:
(3)
(4)
互信息具有非負(fù)性,當(dāng)且僅當(dāng)變量Xi和Xj相互獨(dú)立時(shí)等號(hào)成立;兩節(jié)點(diǎn)間的互信息值越高,則依賴越強(qiáng),可根據(jù)互信息值的大小判斷節(jié)點(diǎn)間是否存在連接。
本文建立貝葉斯網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的具體步驟如下:
步驟1:計(jì)算每一類故障特征之間的條件互信息I(Xi,Xj|C),把I(Xi,Xj|C)作為節(jié)點(diǎn)Xi和Xj的連接權(quán)重,建立故障特征節(jié)點(diǎn)完全無(wú)向圖。
步驟2:構(gòu)建最大權(quán)生成樹(MSWT),過(guò)程如下:
(1)初始狀態(tài):n個(gè)變量(結(jié)點(diǎn)),0條邊;
(2)插入最大權(quán)重的邊;
(3)找到下一個(gè)權(quán)重最大的邊,并且加入到樹中;要求新邊加入后,樹沒(méi)有環(huán)生成,否則查找次大的邊;
(4)重復(fù)上述過(guò)程(3),直到插入了n-1條邊。
步驟3:根據(jù)特征節(jié)點(diǎn)的相對(duì)預(yù)測(cè)能力確定屬性節(jié)點(diǎn)的順序,過(guò)程如下:
(1)計(jì)算每一類故障下故障特征的信息量I(Xi|C);
(2)對(duì)于故障特征Xi和Xj,如果|I(Xi|C)-I(Xj|C)|>ε,I(Xi|C)>I(Xj|C),則有向邊為Xi→Xj;
(3)把上述故障特征之間的無(wú)向邊別變成有向邊。
步驟4:增加類節(jié)點(diǎn)C,并使C指向所有沒(méi)有父節(jié)點(diǎn)的節(jié)點(diǎn)。
步驟5:根據(jù)網(wǎng)絡(luò)結(jié)構(gòu),使用統(tǒng)計(jì)的方法計(jì)算故障癥狀與故障類型的條件概率分布表。
步驟6:利用貝葉斯網(wǎng)絡(luò)的性質(zhì)計(jì)算故障的后驗(yàn)概率,最大后驗(yàn)概率為診斷的結(jié)果。
數(shù)據(jù)預(yù)處理是參數(shù)學(xué)習(xí)的關(guān)鍵步驟,離散化是最重要的數(shù)據(jù)預(yù)處理技術(shù)之一[14]。本文故障數(shù)據(jù)特征離散化具體步驟如下:
步驟1:由已知故障數(shù)據(jù)獲取故障特征Xi的上限max(xi)和下限min(xi);
步驟2:定義離散間隔數(shù)量m;
步驟3:根據(jù)m的值計(jì)算離散間隔長(zhǎng)度為:
(5)
步驟4:計(jì)算故障特征離散區(qū)間:
(6)
式中,s=1,2,…,m,網(wǎng)絡(luò)參數(shù)的學(xué)習(xí)采用樣本統(tǒng)計(jì)學(xué)習(xí)法,用樣本數(shù)的比值近似概率值。
(7)
式中,Num(X)表示X=x落在區(qū)間Xs中的個(gè)數(shù)。貝葉斯網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)建立以后,使用標(biāo)記數(shù)據(jù)計(jì)算故障癥狀與故障類型的條件概率分布表。初始概率分布表中的概率分布存在如下問(wèn)題:①概率統(tǒng)計(jì)因子不充分,概率值分布不連續(xù),存在大量概率值為0的統(tǒng)計(jì)因子,影響后驗(yàn)概率的計(jì)算與比較;②由于數(shù)據(jù)不完備等因素導(dǎo)致的待確診的故障數(shù)據(jù)范圍溢出,需要適當(dāng)擴(kuò)大數(shù)據(jù)的范圍。
針對(duì)上述問(wèn)題,對(duì)一系列二維概率分布表進(jìn)行插值處理。二維插值法有Shepard方法、反距離平均法、線性插值三角網(wǎng)格法、Kriging方法等。本文插值方法是使用徑向基函數(shù)(radial basis function,RBF)對(duì)初始概率分布表進(jìn)行二維插值。常用的徑向基函數(shù)為二維零均值離散高斯函數(shù),其表達(dá)式為:
(8)
式中,c是規(guī)范化系數(shù);σ是離散高斯函數(shù)的標(biāo)準(zhǔn)差。歸一化的插值權(quán)值矩陣M為:
(9)
權(quán)值矩陣Mn×n的維數(shù)n=3,5,…,矩陣M的中心M0權(quán)重值較大,M0周圍的權(quán)重值較小,且距離M0的距離越遠(yuǎn)權(quán)重值越小,所有權(quán)重的總和等于1.0。參數(shù)σ定義了當(dāng)前概率值對(duì)周圍概率值的影響大小,較大的σ會(huì)使周圍的概率值受當(dāng)前概率值的影響;參數(shù)n定義了權(quán)值矩陣的作用范圍,較大的n值會(huì)使當(dāng)前概率值影響到更遠(yuǎn)范圍內(nèi)的概率值。
采用JS散度衡量每個(gè)概率分布表插值前后的概率分布差異:
(10)
式中,P1和P2分別表示第k個(gè)概率分布表插值前后的概率分布。JS散度的值越大,表示插值前后的概率分布概率值差異越大。由于每一個(gè)概率分布表的概率分布是不同的,自適應(yīng)選取參數(shù)σ={σi,i=1,2,…,k}對(duì)一系列概率分布表進(jìn)行插值,使得插值前后有較大的JS散度。概率分布表插值后不能降低網(wǎng)絡(luò)的診斷準(zhǔn)確率η,因此選取參數(shù)σ,使得網(wǎng)絡(luò)的準(zhǔn)確率最高。
綜上所述,需要選取參數(shù)σ,使得函數(shù)L和η的值最大。
(11)
使用圖1算法尋找最優(yōu)的σ,然后依次計(jì)算相對(duì)應(yīng)的插值函數(shù)矩陣M,對(duì)初始概率分布表進(jìn)行插值,得到故障類型和故障特征之間的概率分布表。給定未知的故障數(shù)據(jù),由貝葉斯網(wǎng)絡(luò)可以計(jì)算得出故障的后驗(yàn)概率(故障類型)。
圖1 算法流程圖
仿真實(shí)驗(yàn)平臺(tái)為Windows10系統(tǒng),處理器為i5 2.4 GHz,平臺(tái)軟件為MATLAB R2016a,實(shí)驗(yàn)數(shù)據(jù)使用某大學(xué)電氣工程實(shí)驗(yàn)室軸承中心實(shí)驗(yàn)臺(tái)所采集的振動(dòng)信號(hào)數(shù)據(jù)[15]。所選取的原始實(shí)驗(yàn)數(shù)據(jù)包含滾動(dòng)軸承的3種故障類型,分別是內(nèi)圈故障、滾動(dòng)體故障和3種不同位置的外圈故障,其中外圈故障信號(hào)取采集點(diǎn)為3點(diǎn)鐘、6點(diǎn)鐘和12點(diǎn)鐘方向作為實(shí)驗(yàn)數(shù)據(jù),上述故障分別定義為故障類型1、類型2、類型3、類型4、類型5。選取滾動(dòng)軸承3種故障狀態(tài)下5×120組數(shù)據(jù),每種故障各取60組數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)集,其余60組作為測(cè)試數(shù)據(jù)集。
文獻(xiàn)[5]計(jì)算故障樣本的17維故障特征,然后通過(guò)屬性約簡(jiǎn)的方式去除冗余的特征,選擇最能區(qū)分故障的故障特征進(jìn)行網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的確立,降低模型的復(fù)雜程度。通過(guò)屬性約簡(jiǎn)后保留的特征屬性有:特征屬性1,2,6,10,11,12,15,16,17。
圖2表示貝葉斯網(wǎng)絡(luò)的部分拓?fù)浣Y(jié)構(gòu),類型表示故障類型,數(shù)字表示多維特征經(jīng)過(guò)屬性約簡(jiǎn)后保留的特征屬性。
圖2 貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)圖
貝葉斯網(wǎng)絡(luò)是以先驗(yàn)概率和節(jié)點(diǎn)條件概率為基礎(chǔ),通過(guò)貝葉斯定理計(jì)算得到后驗(yàn)概率的過(guò)程[16],從而得到在某種故障特征發(fā)生的情況下,引起該特征的各種故障原因的概率。網(wǎng)絡(luò)根節(jié)點(diǎn)先驗(yàn)概率是根據(jù)歷史資料或?qū)<医?jīng)驗(yàn)判斷所確定的各故障發(fā)生的先驗(yàn)概率。網(wǎng)絡(luò)根節(jié)點(diǎn)先驗(yàn)概率的準(zhǔn)確程度直接決定其能否快速定位故障,解決這一問(wèn)題的一般做法是引入專家意見(jiàn),但機(jī)械系統(tǒng)越來(lái)越復(fù)雜,專家意見(jiàn)有時(shí)會(huì)存在差錯(cuò),影響網(wǎng)絡(luò)的診斷性能。然而當(dāng)統(tǒng)計(jì)先驗(yàn)概率的樣本充足時(shí),以統(tǒng)計(jì)概率替代先驗(yàn)概率的方法是行之有效的。
本文實(shí)驗(yàn)沒(méi)有統(tǒng)計(jì)5種類型故障的先驗(yàn)發(fā)生概率,由此沒(méi)有考慮先驗(yàn)概率對(duì)模型的影響,選取5種故障類型樣本的數(shù)量均為60,因此每種類型故障的先驗(yàn)概率均為0.2。
實(shí)驗(yàn)中使用如下評(píng)判標(biāo)準(zhǔn)對(duì)故障診斷性能進(jìn)行綜合評(píng)判。
故障識(shí)別率:
故障診斷準(zhǔn)確率:
表1列出了直接使用初始概率分布表進(jìn)行故障診斷時(shí)測(cè)試樣本的故障診斷準(zhǔn)確率。使用初始的概率分布表進(jìn)行故障診斷時(shí)的平均診斷準(zhǔn)確率為88.33%,診斷的準(zhǔn)確率較低,診斷效果需要進(jìn)一步提升。
表1 故障樣本診斷準(zhǔn)確率 (%)
圖3是直接使用初始概率分布表進(jìn)行故障診斷時(shí)測(cè)試樣本的分類情況,每種故障類型在診斷時(shí)都存在樣本未識(shí)別的情況,未識(shí)別率為10%~13%,診斷性能較低的原因是故障樣本未識(shí)別。進(jìn)一步分析是由于樣本屬性特征在概率分布表中統(tǒng)計(jì)因子為0,計(jì)算的后驗(yàn)概率值為0,進(jìn)而沒(méi)有對(duì)樣本進(jìn)行進(jìn)一步的分類判斷。
圖3 直接使用初始概率分布表進(jìn)行 故障診斷時(shí)測(cè)試樣本的分類情況
下面考慮對(duì)初始概率分布表進(jìn)行插值解決統(tǒng)計(jì)因子不充分的問(wèn)題。表2列出了本文方法插值參數(shù)σ對(duì)概率分布JS散度值的影響。
表2 插值參數(shù)對(duì)散度值的影響
由表2可知,隨著插值參數(shù)σ的增大,JS散度值逐漸增大,表明插值前后概率分布差異逐漸增大。同時(shí)仿真結(jié)果表明,隨著權(quán)值矩陣M的維數(shù)n逐漸增加,概率分布表中的插值個(gè)數(shù)增加,可以實(shí)現(xiàn)對(duì)概率分布表插值和填充的目的。
以下進(jìn)行插值函數(shù)參數(shù)的選擇。根據(jù)插值函數(shù)參數(shù)σ對(duì)JS散度值和測(cè)試數(shù)據(jù)診斷性能的影響,選擇相應(yīng)的參數(shù)值。插值參數(shù)σ的取值為0.1~2.0,取值的步長(zhǎng)為0.1。為了方便比較,每個(gè)概率分布表選擇相同的插值參數(shù)。表3列出了插值參數(shù)值對(duì)故障分類結(jié)果的影響。實(shí)驗(yàn)結(jié)果表明當(dāng)插值參數(shù)的值較小時(shí),插值數(shù)量較少,不能充分滿足插值的要求;當(dāng)標(biāo)準(zhǔn)差值較大時(shí),故障分類效果逐漸變差。
表3 插值參數(shù)對(duì)故障分類結(jié)果的影響
根據(jù)前面討論,在滿足診斷準(zhǔn)確率需求時(shí),應(yīng)該選擇較大的插值參數(shù),從而使概率分布表中的統(tǒng)計(jì)因子更加充分。
圖4是插值參數(shù)對(duì)測(cè)試數(shù)據(jù)分類結(jié)果的影響。插值后測(cè)試數(shù)據(jù)的識(shí)別率可以達(dá)到99%,識(shí)別率比沒(méi)有插值時(shí)提升明顯,并且在插值參數(shù)為0.2~1.5的范圍內(nèi)保持穩(wěn)定。故障診斷準(zhǔn)確率隨著插值參數(shù)的增大,先緩慢提升后分階段逐漸下降,σ值在[0.1,0.6]、[0.6,1.1]、[1.1,1.5]三個(gè)范圍內(nèi)每增加0.1,診斷準(zhǔn)確率分別下降0.056%、0.056%、0.067%。
圖4 插值參數(shù)對(duì)模型的影響
插值參數(shù)σ值為0.5左右時(shí),每種類型故障診斷的識(shí)別準(zhǔn)確率和平均故障診斷準(zhǔn)確率最高,能夠有效的識(shí)別滾動(dòng)軸承的故障狀態(tài),從而判斷滾動(dòng)軸承的故障類型。表4是選取σ為0.5的5維離散高斯核函數(shù)對(duì)概率分布表插值處理后測(cè)試數(shù)據(jù)各種故障類型的混淆矩陣。插值處理后,每種類型未識(shí)別個(gè)數(shù)減少,未識(shí)別率為0~3.3%,所有類型樣本未識(shí)別率下降了90.9%。
表4 測(cè)試數(shù)據(jù)混淆矩陣
由表4可知,本文所提的方法故障診斷準(zhǔn)確率為99.33%,沒(méi)有插值的貝葉斯網(wǎng)絡(luò)故障診斷方法準(zhǔn)確率為88.93%,該方法比沒(méi)有插值的貝葉斯網(wǎng)絡(luò)故障診斷方法準(zhǔn)確率提高了10.40%,準(zhǔn)確率提高了11.68%。
表5列出了使用不同的方法對(duì)概率分布表進(jìn)行插值后對(duì)JS散度值和故障診斷準(zhǔn)確率的影響。
表5 插值方法對(duì)JS散度和診斷準(zhǔn)確率的影響
由上表使用不同方法插值后故障診斷的準(zhǔn)確率都有所提升,但平均值法和線性插值法插值后JS散度值較大,對(duì)初始概率分布的影響較大;而反距離加權(quán)法插值后雖然保持原有的概率分布,但診斷準(zhǔn)確率較低。本文方法插值后不僅可以充分增加概率統(tǒng)計(jì)因子,同時(shí)保持較高的診斷準(zhǔn)確率。圖5是本文方法與部分參考文獻(xiàn)方法的比較。
圖5 本文方法和參考文獻(xiàn)中的方法的比較
參考文獻(xiàn)中JSSVM+NB方法的平均診斷準(zhǔn)確率為99.02%,KNN+NB方法的平均診斷準(zhǔn)確率為93.00%,本文方法比JSSVM+NB以及KNN+NB方法有更高的診斷準(zhǔn)確率。對(duì)于內(nèi)圈故障、滾動(dòng)體故障和外圈故障3種故障狀態(tài)來(lái)說(shuō),3種方法對(duì)于內(nèi)圈故障有相同的診斷準(zhǔn)確率,而本文方法對(duì)外圈故障有更高的故障診斷能力。
貝葉斯網(wǎng)絡(luò)對(duì)于解決不確定性和關(guān)聯(lián)性引起的故障具有很大優(yōu)勢(shì),已經(jīng)被廣泛應(yīng)用于故障診斷領(lǐng)域。本文用標(biāo)記的故障數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)參數(shù)的學(xué)習(xí),得到初始的貝葉斯網(wǎng)絡(luò)的概率分布表;在此基礎(chǔ)上對(duì)概率分布表進(jìn)行插值處理,提高模型的適用性和診斷準(zhǔn)確率;最后通過(guò)實(shí)驗(yàn)仿真驗(yàn)證了該方法的有效性。本文使用單個(gè)時(shí)間片段內(nèi)的數(shù)據(jù)進(jìn)行診斷識(shí)別,沒(méi)有充分考慮故障過(guò)程前后時(shí)間片段之間狀態(tài)的相互影響。動(dòng)態(tài)貝葉斯網(wǎng)絡(luò)(dynamic bayesian networks,DBN)是貝葉斯網(wǎng)絡(luò)與馬爾科夫鏈(Markov chain,MC)的結(jié)合,在概率框架下能夠?qū)崿F(xiàn)動(dòng)態(tài)(時(shí)序)和靜態(tài)(非時(shí)序)信息的融合,把不同時(shí)間片的信息進(jìn)行綜合評(píng)估,將會(huì)進(jìn)一步提高模型的診斷性能。