鞏小強, 劉尚輝, 李 沖
(西安飛機工業(yè)(集團)有限責任公司,陜西 西安 710089)
隨著科學技術的快速發(fā)展,航空發(fā)動機的推力、轉速、動強度等顯著提高,導致發(fā)動機零部件的振動載荷不斷增加,振動引起的故障顯著增多;此外,發(fā)動機結構日趨復雜且質量不斷減輕,其對安全性和可靠性的要求亦隨之增高[1]。因此,發(fā)動機振動狀態(tài)及振動特征的精準識別是判斷發(fā)動機有無故障的主要手段,且發(fā)動機安全性、有效性及使用壽命可獲得有效提高;同時,對于飛機適航性的增強、維修費的減少以及飛行事故的降低具有重要的工程意義。
近年來,大量研究者使用了BP神經(jīng)網(wǎng)絡和支持向量機對航空發(fā)動機進行故障診斷,并達到了較好的診斷效果,但專注于整機振動故障診斷的相關研究極少。費成巍等[1]應用支持向量機進行整機振動故障診斷,實驗效果良好,診斷準確率較高;王志等[2]應用BP神經(jīng)網(wǎng)絡構建了整機振動故障診斷模型,結果發(fā)現(xiàn),該方法診斷較精準,且有效減少了虛警率。然而,由于BP神經(jīng)網(wǎng)絡和支持向量機在局部極值、泛化能力、訓練樣本等方面存在著難以解決的問題[3],如BP神經(jīng)網(wǎng)絡的訓練需要大量的樣本,且容易出現(xiàn)過學習和低泛化能力的現(xiàn)象,支持向量機雖是針對小樣本統(tǒng)計估計和預測的學習,但其僅能獲得局部最優(yōu)解,導致其可擴展性較低且穩(wěn)定性較差,故它們的使用范圍均存在一定的局限性[4]。因此,迫切需要引入一種當前機器學習領域的新方法。協(xié)同訓練算法的應用極具前景,它有效地解決了上述問題,同時使用該算法學習獲得的故障診斷模型具有強泛化能力,且對非線性數(shù)據(jù)的數(shù)學建模高效準確,因此在各個領域中得到了廣泛應用。
實際應用中,數(shù)據(jù)是由多種屬性特征所描述,并將其稱之為多視圖數(shù)據(jù),故如何充分利用多視圖數(shù)據(jù)的信息進行有效學習是機器學習領域的研究熱點[5-7]。多視圖學習充分利用數(shù)據(jù)的多屬性特征,互傳信息,補充完善,更全面地反映目標數(shù)據(jù)的潛在特性,以獲得更好的分類性能,解決了單視圖學習精度低的問題。本文所使用的協(xié)同訓練算法是最為經(jīng)典的一種多視圖學習算法。該算法可綜合利用目標數(shù)據(jù)的多視圖信息,在2個視圖上學習獲得2個不同的分類器,互換信息重新學習分類器,分類性能得到了顯著提高;其中,多視圖信息是指目標數(shù)據(jù)所具有的不同屬性,例如,在網(wǎng)頁分類問題中,網(wǎng)頁可由當前的網(wǎng)頁信息表示,亦可由指向網(wǎng)頁的超鏈接信息表示,從而形成了2種不同的視圖信息[5]。
Blum和Mitchell于1998年提出了協(xié)同訓練算法[8]。該算法的基本原理為:假設數(shù)據(jù)集χ包含2個不同視圖χ=χ1×χ2,且其相應的屬性劃分結果分別為子集X1、X2;其中,視圖χ1、χ2必須滿足2個條件:① 每個屬性子集都足夠訓練一個高性能分類器;② 在給定類標簽的情況下,屬性子集之間相互獨立分布,即:給定樣本x=(x1,x2)∈χ1×χ2,其標簽y∈Y,Y為標簽集,則存在:p(x1|y)p(x2||y)=p(x1,x2|y)。
每個屬性子集構成一個“視圖”,滿足以上條件的視圖稱之為“充分冗余視圖”[9]。該算法首先基于2個視圖上的標記數(shù)據(jù)集學習獲得2個初始分類器,然后,分類器對無標記樣本進行標簽預測,選擇出置信度較高的樣本及其預測標簽,并將其添加到另一個分類器對應的標記數(shù)據(jù)集中,形成其新的標記數(shù)據(jù)集,進而基于此更新2個分類器,重復執(zhí)行以上過程,直至算法達到收斂效果[10];其中,置信度是指正確標記樣本數(shù)據(jù)的可靠性。具體算法流程如下。
輸出:分類器h=(h1,h2)。
具體步驟:
① 利用L中的標記樣本訓練分類器h1,h2;
② 分類器h1,h2分別對無標記數(shù)據(jù)U進行預測標記;
③ 選擇置信度較高的預測樣本,并添加到另一個分類器對應的標記數(shù)據(jù)集;
④ 利用更新的訓練樣本集X=L′∪U′,重新訓練分類器;
⑤ 重復上述過程,直至收斂。
本文提出了一種基于多類協(xié)同訓練的整機振動故障診斷方法,實現(xiàn)了對發(fā)動機故障的精準診斷,降低了因故障而造成的各種損失,如飛行事故的降低、飛機維修費的減少等,故其在航空飛行試驗中具有重要的工程意義。
BP神經(jīng)網(wǎng)絡和支持向量機僅適用于二分類問題,而航空發(fā)動機整機振動故障診斷研究屬于多分類問題,同時針對某型發(fā)動機,振動故障數(shù)據(jù)有限,故利用協(xié)同訓練算法可對少量數(shù)據(jù)進行有效建模的特點,構建發(fā)動機整機振動故障診斷模型。
本文將整機振動故障類別表示為標記空間y={0,1,2,3},其中,“0”表示“無故障”,“1”表示“轉子不對中”,“2”表示“動不平衡”,“3”表示“支承剛度過大”。整機振動故障分類器使用矩陣形式表示,即:ε=[ε0,ε1,ε2,ε3],θ=[θ0,θ1,θ2,θ3],且ε,θ∈Rd×4,其中,ε,θ表示2種不同性質的分類器,d為不同的“振動速度”數(shù),即在不同位置不同方向上的振動速度。
1.1.1 損失函數(shù)構造
使用邏輯回歸算法構造2個分類器的損失函數(shù),如式(1)、式(2)所示。
(1)
(2)
式中,(x,y)表示故障數(shù)據(jù)x對應故障類別y;L表示帶標記的整機振動故障數(shù)據(jù)集。
最小化2個分類器上的損失函數(shù),如式(3)所示。
(3)
由于式(3)不可微,故使用歸一化操作將其最大項消除,如式(4)所示。
(4)
1.1.2 屬性劃分
為了提高2個分類器之間的差異性,保證該算法的高分類性能,對帶標記的整機振動故障數(shù)據(jù)集L所包含的“振動速度”屬性進行劃分,具體如式(5)所示。
(5)
式中,εi,θi分別表示2個分類器在屬性i上的取值,即:“1”或“0”,“1”表示分類器包含該屬性,“0”則相反。
1.1.3 最優(yōu)化問題轉化
為了學習2個具有較低損失值的故障分類器,結合式(4)、式(5),將其轉化為帶約束的最優(yōu)化問題,具體如式(6)、式(7)所示。
目標函數(shù):
(6)
約束條件:
(7)
本文應用增廣拉格朗日方法[10]進行該最優(yōu)化問題的求解。
使用已生成的2個故障分類器ε、θ分別預測整機振動故障數(shù)據(jù)x′∈U的故障模式,其中,U表示未帶標記的整機振動故障數(shù)據(jù)集,具體如式(8)、式(9)所示。
(8)
(9)
式中,k=0,1,2,3分別代表4種故障模式,即:“無故障”、“轉子不對中”、“動不平衡”和“支承剛度過大”;yε(x′),yθ(x′)分別為x′在分類器ε,θ上的類別預測結果;x′Tεk表示x′在分類器ε上的故障類別為“k”的概率;x′Tθk表示x′在分類器θ上的故障類別為“k”的概率。
為了提高分類器的診斷準確率,迭代優(yōu)化已生成的2個故障分類器ε,θ。本文對整機振動故障數(shù)據(jù)x′的診斷可靠性進行量化評估,如式(10)、式(11)所示。
(10)
(11)
(12)
(13)
診斷可靠性評估完成之后,在2個分類器之間互傳帶標記的整機振動故障數(shù)據(jù),即:基于預測可靠性大小降序排列未帶標記的整機振動故障數(shù)據(jù),選取每個分類器預測獲得的前5組整機振動故障數(shù)據(jù)添加至另一個分類器對應的標記數(shù)據(jù)集,以此更新帶標記的整機振動故障數(shù)據(jù)集,并基于更新后的標記數(shù)據(jù)重新訓練故障分類器ε、θ,重復上述過程,直至未帶標記的整機振動故障數(shù)據(jù)集為空或無可靠數(shù)據(jù)選擇,以此迭代優(yōu)化分類器。
本文基于多數(shù)投票機制識別其故障診斷結果,其計算如式(14)所示。
y(x′)=argmax{yε(x′),yθ(x′)}
(14)
本文選取某型航空發(fā)動機5種常見截面的水平與垂直方向作為試驗測點,即為故障診斷模型學習所需的分類屬性,以及4種常見的發(fā)動機故障模式(無故障、轉子不對中、動不平衡、支承剛度過大)作為分類標簽。在每種故障模式中選取5個特征向量,總計20個特征向量。本文隨機選取每種模式中的2個特征向量作為訓練數(shù)據(jù),用于構建多類協(xié)同訓練故障診斷模型,如表1所示(注:此數(shù)據(jù)均來源于沈陽航空工業(yè)學院遼寧省數(shù)字化工藝仿真與試驗技術重點實驗室);同時選取每種模式中剩余的3個特征向量作為測試數(shù)據(jù),以此驗證診斷模型的分類性能。
表1 某型航空發(fā)動機整機振動故障診斷訓練數(shù)據(jù)[1]
基于表1所包含的8個特征向量進行故障診斷模型的訓練,同時利用該數(shù)據(jù)對該模型進行仿真測試,分類準確率達到100%,實現(xiàn)了故障數(shù)據(jù)的精準分類。
此外,為了驗證該模型在噪聲條件下的模式識別能力,在輸入數(shù)據(jù)上疊加一定的噪聲信號,該模型診斷結果如表2所示,診斷準確率達100%。由此表明,存在噪聲信號的干擾下,該模型仍具有高分類性能。
表2 噪聲干擾下的診斷結果
為了評估多類協(xié)同訓練算法在不同發(fā)動機故障類型上的泛化能力,本文選取分類準確率(Accuracy)作為其評估指標,并采用BP神經(jīng)網(wǎng)絡、支持向量機(Support Vector Machine, SVM)與該算法診斷結果進行對比;其中,分類準確率越高,算法的泛化能力則越強。本文使用表1所包含的8組訓練數(shù)據(jù)進行整機振動故障診斷,實驗結果如表3所示。結果發(fā)現(xiàn),多類協(xié)同訓練算法在4種故障類型上的分類準確率均為100%,均高于BP神經(jīng)網(wǎng)絡和SVM,且BP神經(jīng)網(wǎng)絡的分類準確率達到最低(82%)。由此可得,多類協(xié)同訓練算法在整機振動故障診斷上具有最強泛化能力。在表3中,多類協(xié)同訓練算法用MCT表示。
表3 多類協(xié)同訓練算法、SVM、BP在不同故障類型上的分類準確率
為了進一步驗證多類協(xié)同訓練算法的有效性,本文將其余12組測試數(shù)據(jù)輸入至整機振動故障診斷模型,“轉子不對中”、“動不平衡”、“支承剛度過大”及“無故障”等4類數(shù)據(jù)的診斷結果如表4所示。結果發(fā)現(xiàn),4種故障類型的模型預測結果均與實際結果一致,這表明該模型的學習能力和泛化能力均為良好。
表4 4類數(shù)據(jù)的故障診斷結果
相比于BP神經(jīng)網(wǎng)絡、支持向量機,協(xié)同訓練算法的最大優(yōu)點為它能在少量帶標記數(shù)據(jù)的條件下,實現(xiàn)對未標記數(shù)據(jù)或實例數(shù)據(jù)的精準分類。本文對于航空發(fā)動機整機振動故障的仿真識別,利用少量的4組訓練數(shù)據(jù)實現(xiàn)了4種故障模式的精準識別,且故障診斷模型具有較強的泛化能力以及噪聲條件下的容錯能力。由此證明,針對某型號飛機,因其發(fā)動機很少發(fā)生重大故障,故難以獲得大量的訓練數(shù)據(jù),同時在真實場景下的整機振動數(shù)據(jù)中均存在相應強度的噪聲干擾,使用多類協(xié)同訓練算法對整機振動故障進行模式識別,具有非常重要的工程實用價值。