冉永清 李 楠 楊煜普
(上海交通大學(xué)電子信息與電氣工程學(xué)院系統(tǒng)控制與信息處理教育部重點(diǎn)實(shí)驗(yàn)室,上海 200240)
傳統(tǒng)的故障診斷方法根據(jù)監(jiān)控統(tǒng)計(jì)量來(lái)檢測(cè)是否有故障發(fā)生,采用貢獻(xiàn)圖及故障重構(gòu)等方法來(lái)辨識(shí)故障發(fā)生的位置,以此達(dá)到故障診斷的目的[1,2]。然而這類方法都是基于過(guò)程中出現(xiàn)單一故障的假設(shè),如果在檢測(cè)過(guò)程中同時(shí)出現(xiàn)多個(gè)故障,這類方法的故障診斷性能將急劇下降。為解決上述問(wèn)題,筆者從模式識(shí)別的角度考慮故障診斷問(wèn)題,將故障診斷分為兩個(gè)步驟,在離線狀態(tài)下,學(xué)習(xí)數(shù)據(jù)之間的內(nèi)部關(guān)系及模式等抽象概念,建立故障診斷模型;在在線狀態(tài)下,所建立的故障診斷模型運(yùn)用學(xué)習(xí)到的知識(shí),對(duì)新數(shù)據(jù)的內(nèi)在關(guān)系和模式做出預(yù)測(cè),把故障數(shù)據(jù)分類到最接近的故障類中。從這個(gè)角度出發(fā),筆者把故障診斷看成一個(gè)多類分類問(wèn)題,提出了有監(jiān)督學(xué)習(xí)方法——FKNMF方法,建立多故障診斷模型,解決多故障診斷問(wèn)題。
KNMF算法通過(guò)核函數(shù)將輸入空間的非線性數(shù)據(jù)映射到高維特征空間[3,4],采用迭代的矩陣分解形式,挖掘特征空間數(shù)據(jù)的局部信息表示數(shù)據(jù)整體結(jié)構(gòu)。令輸入空間的數(shù)據(jù)X=[X1,X2,…,Xn]∈Rm×n,通過(guò)映射函數(shù)將數(shù)據(jù)映射到一個(gè)高維的特征空間F內(nèi),得到的特征空間數(shù)據(jù)矩陣Φ(X)=[Φ(x1),Φ(x2),…,Φ(xn)]∈Rd×n。在特征空間F內(nèi),尋找一個(gè)基矩陣U和一個(gè)系數(shù)矩陣V,使得Φ(·):Rm→F:Rd:
Φ(X)≈UVT
(1)
其中U∈Rd×r,r表示降維后的維數(shù);V∈Rn×r。
根據(jù)KNMF算法,假設(shè)基矩陣U是特征數(shù)據(jù)Φ(X)的凸組合,即U=Φ(X)W,則在特征空間F內(nèi),把特征空間數(shù)據(jù)分解成如下形式:
Φ(X)≈Φ(X)WVT
(2)
KNMF算法是在特征空間內(nèi)通過(guò)學(xué)習(xí)尋找到參數(shù)矩陣W和系數(shù)矩陣V。
圖1 Fisher判別的基本原理
以下為Fisher準(zhǔn)則的若干個(gè)必要判別參數(shù)。
在d維空間內(nèi),各個(gè)樣本均值向量mi:
(3)
樣本類內(nèi)離散度矩陣Si和總類內(nèi)離散度矩陣Sw:
(4)
Sw=S1+S2
(5)
樣本類間離散度矩陣Sb:
Sb=(m1-m2)(m1-m2)T
(6)
Fisher準(zhǔn)則函數(shù)定義:
(7)
在特征空間里面,各個(gè)樣本在特征空間上的投影:
(8)
(9)
(10)
(11)
根據(jù)式(7)的定義可得:
(12)
由式(12)可見,在特征空間中,F(xiàn)isher準(zhǔn)則就是尋找使JF(w)最大的參數(shù)矩陣W,使各類樣本盡可能地分開,同時(shí)同一樣本盡量靠攏。
(13)
筆者結(jié)合KNMF和FDA兩者的優(yōu)點(diǎn),使KNMF算法在降維過(guò)程中,引入FDA分類思想,使得降維過(guò)程中同一類的數(shù)據(jù)盡量靠攏,不同類的數(shù)據(jù)盡量遠(yuǎn)離。這樣既保持了KNMF算法挖掘局部信息的能力,綜合了FDA的優(yōu)點(diǎn),也彌補(bǔ)了FDA分類算法過(guò)度依賴數(shù)據(jù)均值的缺點(diǎn)。
在特征空間內(nèi),采用歐式距離來(lái)度量特征數(shù)據(jù)矩陣Φ(X)與Φ(X)、參數(shù)矩陣W和系數(shù)矩陣V三者乘積之間的誤差,將KNMF問(wèn)題轉(zhuǎn)化為求取參數(shù)矩陣W和系數(shù)矩陣V,并使得以下目標(biāo)函數(shù)取得最小值:
(14)
其中ε是任意的極小值,該限制的含義是使式(13)盡可能相等。
將式(14)轉(zhuǎn)化成下列形式:
(15)
式(15)表示Fisher KNMF算法在KNMF算法的框架上增加了FDA分類思想作為正則項(xiàng),其中參數(shù)α是一個(gè)系數(shù),通過(guò)調(diào)節(jié)它來(lái)調(diào)整Fisher正則項(xiàng)的影響程度,使Fisher KNMF算法具有良好的靈活性。
目標(biāo)函數(shù)式(15)對(duì)于W和V單個(gè)變量是凸函數(shù),但是同時(shí)對(duì)兩個(gè)變量是非凸函數(shù),對(duì)于目標(biāo)函數(shù)求取的解可能不是全局最優(yōu)解。根據(jù)式(15)的KKT最優(yōu)松弛條件和互補(bǔ)松弛條件可以得到:
(16)
根據(jù)式(16)得到W、V和λ的更新規(guī)則:
(17)
采用式(17)的更新規(guī)則,最終可以得到FKNMF算法的參數(shù)矩陣W和系數(shù)矩陣V。
Fisher KNMF算法從一個(gè)包含正常數(shù)據(jù)和故障數(shù)據(jù)的訓(xùn)練數(shù)據(jù)集中通過(guò)迭代矩陣分解,獲得參數(shù)矩陣W。對(duì)于未知類別的樣本,需要一個(gè)判別函數(shù)值來(lái)量化觀測(cè)向量和類之間的關(guān)系。觀測(cè)向量xi在類K上面的判別函數(shù)值采用下面判別式[6]:
(18)
其中pk是第K類的概率。
對(duì)于每一個(gè)測(cè)試樣本xt,通過(guò)式(18)計(jì)算出它在每一類上的判別值,然后判斷該樣本屬于判別函數(shù)值最大的那一類。即:
(19)
如果訓(xùn)練樣本中只有正常數(shù)據(jù)和一種故障數(shù)據(jù),即故障檢測(cè);如果訓(xùn)練數(shù)據(jù)包含了多種故障數(shù)據(jù),那么在建立模型之后,就可以對(duì)測(cè)試樣本進(jìn)行故障診斷,判別該樣本處于正常狀態(tài)或是哪一類故障狀態(tài),即完成了多故障診斷。
TE過(guò)程是基于實(shí)際工業(yè)過(guò)程的仿真案例[8],整個(gè)過(guò)程系統(tǒng)共包括12個(gè)控制變量和41個(gè)測(cè)量變量,并且預(yù)定了21種故障。圖2為TE過(guò)程結(jié)構(gòu)圖。
圖2 TE過(guò)程結(jié)構(gòu)圖
選取正常數(shù)據(jù)的前200個(gè)數(shù)據(jù)和故障數(shù)據(jù)的201~400之間的200個(gè)數(shù)據(jù)共同作為訓(xùn)練數(shù)據(jù),選取正常數(shù)據(jù)的281~480之間的200個(gè)數(shù)據(jù)和故障數(shù)據(jù)81~280之間的200個(gè)數(shù)據(jù)作為測(cè)試數(shù)據(jù)。設(shè)置降維維數(shù)為17,取系數(shù)α為0.5。表1是FDA算法和Fisher KNMF算法故障診斷準(zhǔn)確率對(duì)比。
表1 FDA算法和Fisher KNMF算法故障診斷準(zhǔn)確率對(duì)比 %
(續(xù)表1)
從表1可以看出,F(xiàn)isher KNMF算法的故障診斷準(zhǔn)確率總體上是優(yōu)于FDA算法的,其中在故障IDV(8)、IDV(10)、IDV(11)、IDV(12)、IDV(14)、IDV(16)和IDV(19)發(fā)生時(shí),F(xiàn)isher KNMF算法的故障診斷準(zhǔn)確率明顯優(yōu)于FDA算法。圖3是IDV(1)和IDV(14)的FDA算法和Fisher KNMF算法的診斷效果圖。FDA算法故障診斷效果圖橫坐標(biāo)1~200表示兩類故障都為200個(gè)點(diǎn),故障IDV(1)和IDV(14)的縱坐標(biāo)如果差距越大分的就越開,F(xiàn)isher KNMF算法縱坐標(biāo)表示兩類故障的個(gè)數(shù),前200個(gè)應(yīng)該是正常數(shù)據(jù),后200個(gè)是故障數(shù)據(jù)。從圖3可以得知,在故障IDV(1)發(fā)生時(shí),F(xiàn)DA和Fisher KNMF算法都能夠完全分開故障,但是在故障IDV(14)發(fā)生時(shí),F(xiàn)DA算法不能完全分開故障類別,而Fisher KNMF算法依然有94.25%的準(zhǔn)確率。
圖3 IDV(1)和IDV(14)發(fā)生時(shí),F(xiàn)DA和Fisher KNMF算法的故障診斷效果
采用正常數(shù)據(jù)和兩種故障訓(xùn)練數(shù)據(jù)來(lái)進(jìn)行仿真實(shí)驗(yàn)。取正常數(shù)據(jù)和兩類故障訓(xùn)練數(shù)據(jù)分別為200個(gè)數(shù)據(jù),同樣每類測(cè)試集各選取200個(gè)點(diǎn)組成。仿真實(shí)驗(yàn)中,設(shè)置降維維數(shù)為17,系數(shù)α為0.5。圖4是IDV(10)和IDV(14)同時(shí)發(fā)生時(shí)FDA算法和Fisher KNMF算法的故障診斷效果圖。
圖4 IDV(10)和IDV(14)同時(shí)發(fā)生時(shí),F(xiàn)DA和Fisher KNMF算法的故障診斷效果
圖4中FDA算法基本不能分出3類數(shù)據(jù),但是Fisher KNMF算法能夠達(dá)到93.25%的診斷正確率,僅有少數(shù)數(shù)據(jù)標(biāo)識(shí)錯(cuò)誤,通過(guò)此仿真實(shí)例說(shuō)明,F(xiàn)isher KNMF算法在多類故障診斷中具有很好的性能。
為解決多故障診斷問(wèn)題,筆者從模式分類的新角度考慮,提出了一種新的有監(jiān)督分類方法——Fisher KNMF算法,該算法結(jié)合了KNMF算法優(yōu)秀的處理非線性數(shù)據(jù)的能力和FDA算法優(yōu)秀的分類能力。建立的多故障診斷模型用于在線監(jiān)控,并在TE模型上仿真,結(jié)果表明:在單故障和多故障的情況下都具有很好的效果。
[1] 王迎,王新明,趙小強(qiáng).基于小波去噪與KPCA的TE過(guò)程故障檢測(cè)研究[J].化工機(jī)械,2011,38(1):49~53.
[2] 唐友福,劉樹林,劉穎慧,等.基于α穩(wěn)定分布的往復(fù)壓縮機(jī)故障診斷方法[J].化工機(jī)械,2011,38(5):555~558.
[3] Lee H,Cichocki A,Choi S.Kernel Nonnegative Matrix Factorization for Spectral EEG Feature Extraction[J].Neurocomputing,2009,72(13-15):3182~3190.
[4] 李巍華.基于核方法的機(jī)械故障特征提取與分類技術(shù)研究[D].武漢:華中科技大學(xué),2003.
[5] Chiang L H,Kotanchek M E,Kordon A K.Fault Diagnosis Based on Fisher Discriminant Analysis and Support Vector Machines[J].Computers & Chemical Engineering,2004,28(8):1389~1401.
[6] 李祥寶.基于廣義非負(fù)矩陣投影算法的故障檢測(cè)與診斷研究[D].上海:上海交通大學(xué),2014.
[7] 何曉斌.基于統(tǒng)計(jì)學(xué)方法的自適應(yīng)過(guò)程監(jiān)控與故障診斷[D].上海:上海交通大學(xué),2008.
[8] Yoon S,MacGregor J F.Fault Diagnosis with Multivariate Statistical Models Part I:Using Steady State Fault Signatures[J].Journal of Process Control,2001,11(4):387~400.