譚俊杰,楊先勇,徐增丙,王志剛
(1.武漢科技大學冶金裝備及其控制教育部重點實驗室,湖北 武漢,430081;2.武漢科技大學機械自動化學院,湖北 武漢,430081;3.中國艦船研究設計中心,湖北 武漢,430064)
狀態監測是保障設備正常運行的重要手段。通常情況下,被監測設備規模大,設備監測點多,每個測點的采樣頻率高、數據采集周期長,因此,監測系統獲取的數據反映了機械設備狀態的“大數據”特點[1]。由于監測到的正常樣本多,故障樣本少甚至沒有,如何有效利用這些樣本數據進行故障診斷分析具有重要的研究意義。
遷移成分分析(transfer component analysis,TCA)[2]是基于特征的遷移學習方法,其將源域數據和目標域數據映射到隱藏空間中,尋找公共遷移成分進行學習,減小了不同領域數據分布的差異性,明顯提高了跨領域、跨任務的學習能力。無監督遷移成分分析(unsupervised TCA, UTCA)[2]是進一步針對特征空間與類別空間相同、邊緣分布不同而提出的遷移學習方法。在實際應用中,監測數據通常只有少量與目標域數據相匹配的標簽數據,以及大量和源域不匹配的標簽數據,而利用UTCA則在特征映射中不需要考慮樣本標注信息,有效提高了特征遷移的效率,減少了人為標注的不確定性。遷移成分分析在設備故障診斷中的應用研究有不少。Xie等[3]提出基于TCA和跨域特征融合的變速齒輪箱故障診斷方法。段禮祥等[4]提出基于不同工況下輔助數據集的齒輪箱故障診斷方法,利用TCA減小訓練樣本與測試樣本的差異性,提高了齒輪箱變工況故障診斷的準確性。沈飛等[5]將基于自相關矩陣奇異值分解的特征提取和遷移學習分類器相結合,進行電機故障診斷,提高了分類正確率。
然而,上述遷移學習方法雖然能夠用于故障診斷,但無法提高淺層機器學習的診斷能力和泛化能力。深度學習方法可以學習數據中的隱含表征參數,并建立表征參數與類別之間的復雜映射關系。深度信念神經網絡(deep belief network,DBN)[6]作為深度學習技術之一,已廣泛應用于故障診斷中。Tamilselvan等[7]提出基于DBN模型的多傳感器故障診斷方法,在飛機發動機和電力變壓器的故障分析中取得較好效果。陶潔等[8]將Teager能量算子(TEO)和DBN相結合應用于滾動軸承故障診斷中,能準確識別不同軸承故障類型,具有較強的泛化能力。李巍華等[9]從滾動軸承時域振動原始信號出發,利用DBN進行不同狀態下的故障識別,得到比傳統方法更好的診斷效果。但是DBN方法所需訓練樣本較多,在實際故障樣本較少的情況下,其診斷精度有待提高。
為此,本文將UTCA和DBN兩種算法相結合,提出了一個新的故障診斷方法,以期在故障樣本不足時實現滾動軸承故障的高精度診斷。
UTCA充分利用領域之間特征樣本的可遷移性,提高跨領域學習能力。假定源域DS={XS,YS},其中XS是源域樣本集,YS是標簽樣本;目標域為DT={XT},其中XT是目標域樣本集,目標域中標簽未知。假設源域樣本與目標域樣本的邊緣概率分布不同,即P(XS)≠Q(XT),通過特征映射函數Φ,使映射后的邊緣概率分布盡可能相似,即P(Φ(XS))≈Q(Φ(XT))。
設Φ(XS)與Φ(XT)是經過Hilbert核空間映射后的源域特征樣本集與目標域特征樣本集,映射后源域和目標域之間的距離可以表示為:
dist(Φ(XS),Φ(XT))=

(1)
式中:‖·‖H為RKHS范數;N1為源域樣本個數;N2為目標域樣本個數;xSi∈XS,xTj∈XT。
由式(1)可知,非線性變換映射函數Φ有許多種,直接計算特征樣本間的距離是相當困難的,通過維數約簡的最大均值偏差嵌入法(maximum mean discrepancy embedding,MMDE)[10],將上述難求解的映射函數Φ轉化為內核學習問題,可采用高斯徑向基核函數進行映射,并引入核矩陣K,則映射后源域和目標域距離可表示為:
dist(Φ(XS),Φ(XT))=trace(KL)
(2)

核矩陣K還可以表示為:
K=(KK-1/2)(K-1/2K)
(3)

(4)

根據式(4),可以將式(2)替換為:
dist(Φ(XS),Φ(XT))=trace((KWWTK)L)
=trace(WTKLKW)
(5)

綜上所述,為使不同領域分布間距離盡可能小,就要對式(5)進行最優化。添加正則化項μtrace(WTW)來控制矩陣W的復雜度,優化目標轉化為:
s.t.WTKHKW=IM
(6)
式中:μ>0是正則化平衡參數;IM∈M×M是單位矩陣。
根據限制條件WTKHKW=IM, 式(6)又可化為如下的目標函數進行求解:

(7)
可由式(7)求解(KLK+μIM)-1KHK,即得到優化后的最佳映射核矩陣W。
DBN是由多個受限玻爾茲曼機(restricted Boltzmann machine,RBM)和一層BP神經網絡堆疊而成的多層感知器神經網絡,可以組合低層特征形成更加抽象的高層特征表示[11],具有逐層挖掘深層特征的能力,無需人工提取特征,避免了傳統特征提取過程所帶來的復雜性和不確定性,提高了故障識別性能。DBN 訓練過程包括兩個部分:預訓練和微調。預訓練主要采用無監督逐層訓練的方式對每層RBM參數進行訓練,低層RBM隱藏層輸出作為高層RBM可見層輸入,可從原始信號數據中提取較為抽象的特征參數;微調階段利用BP神經網絡的實際輸出與標簽信息差值作為度量誤差,將誤差逐層后向傳播,實現對整個 DBN 權值和偏置的微調,經過多次迭代即可得到整個DBN的最優參數。
RBM[12]由可視層和隱藏層組成,如圖1所示。v和h分別表示可視層和隱藏層,w表示兩層之間的權值,a和b分別為可視層和隱藏層偏置,層間神經元全連接,層內神經元不連接。

圖1 RBM的結構
假設一個RBM中有n個可視神經元和m個隱藏神經元,其中vi和hj分別表示第i個可視層神經元和第j個隱藏層神經元的狀態,v=(v1,v2,…,vn),h=(h1,h2,…,hm),RBM的能量函數可描述為:
(8)
式中:參數wij、ai、bj分別為可視節點到隱層節點的連接權重、可視節點偏置、隱層節點偏置。wij、ai和bj構成參數集θ,根據能量函數式(8)可知,v和h之間的聯合概率分布如下:
(9)

隱藏層與可視層的條件概率為:
(10)
(11)
根據式(10)和式(11)可進一步推導得到激活函數,給定隱藏層h,可視層v的激活函數為:
(12)
給定可視層v,隱藏層h的激活函數為:
(13)
通過隨機初始化和迭代訓練得到參數集θ,利用極大對數似然函數求解參數集θ*:
(14)
為了增加極大對數似然函數的計算梯度,采用對比散度算法[13]對參數集θ*進行更新:
(15)
式中:ζ為學習率;〈·〉data為訓練數據特征樣本數學期望;〈·〉rec_er為重構后的模型參數數學期望。
BP網絡前向傳播,將輸入特征向量逐層傳到輸出層,得到預測的分類結果,將預測結果與實際標簽信息對比得到誤差值,然后將誤差逐層后向傳播,實現DBN特征參數微調。
對輸出層,假設第i個節點的實際輸出為τi,期望輸出為ei,則靈敏度的計算公式如下:
δi=τi(ei-τi)(1-τi)
(16)

(17)
(18)
本文方法主要由UTCA算法和DBN模型兩個部分組成。首先,獲取滾動軸承振動信號,將已知工況的滾動軸承振動信號作為源域,未知振動信號作為目標域,利用UTCA對源域樣本和目標域樣本的差異性進行處理,使源域樣本和目標域樣本更加相似,通過最大均值偏差統計值判斷能夠遷移的源域數據,為深度學習提供充足的訓練樣本,解決實際故障樣本較少的問題;然后,利用DBN模型對源域樣本進行訓練,形成融合UTCA和DBN的故障診斷模型,使源域故障診斷知識能夠用于識別目標域未知的故障類型。滾動軸承故障診斷流程如圖2所示。

圖2 基于UTCA和DBN的滾動軸承故障診斷流程
Fig.2 Flow chart of rolling bearing fault diagnosis based on UTCA and DBN
如圖3所示,試驗臺由驅動電機裝置、聯軸器、齒輪箱、制動系統和加速度傳感器構成。

圖3 試驗臺示意圖
驅動電機為三相異步電動機,額定功率為2200 W,極對數為2;磁粉制動器是制動系統的主要部件;減速器輸入軸齒數Z1=29,中間軸齒數為Z2=100、Z3=36,輸出軸齒數Z4=90;試驗軸承安裝在二級減速器中間軸上,模擬正常工作、內圈故障、外圈故障和內外圈復合故障等幾種類型。為了直觀起見,加速度傳感器安裝在齒輪箱的左側擋板上,實測的是徑向的軸承振動信號數據,采樣頻率為8096 Hz,負載狀態為有、無兩種。
設定3種工況:①工況A,電機輸出轉速為1500 r/min;②工況 B,電機輸出轉速為900 r/min;③工況 C,電機輸出轉速為600 r/min。
針對單個工況故障診斷的實際可用軸承數據樣本較少,可以將其他工況數據遷移過來,為診斷目標數據提供大量的可訓練樣本。從3種試驗工況中選取穩定狀態下的振動數據,每種工況和健康狀態下的樣本均為80個,每個樣本包含600個數據點,數據樣本組成見表1。根據本文所涉及的滾動軸承故障數據遷移診斷問題,創建3個遷移診斷任務,對所提出的方法進行驗證分析,分別為:①A(源域)→C(目標域),即將工況A的樣本遷移到工況C,進行DBN模型訓練,并用于對工況C的樣本進行診斷測試;②B(源域)→C(目標域);③B(源域)→A(目標域)。
表1 不同工況下的樣本數據集組成
Table 1 Composition of sample datasets in different working conditions

工況健康狀態分類標簽樣本數/個A無負載正常(N)180外圈故障(BFO)280內圈故障(BFI)380內外圈復合故障(BFIO)480B無負載正常(N)180外圈故障(BFO)280內圈故障(BFI)380內外圈復合故障(BFIO)480C無負載正常(N)180外圈故障(BFO)280內圈故障(BFI)380內外圈復合故障(BFIO)480
首先根據不同工況數據集的遷移診斷任務進行故障診斷分析。UTCA算法參數初始設置:核寬度為[10-3,10-2,10-1,1,10,102]的高斯徑向基核函數,正則化參數μ為[10-3,10-2,10-1,1,10,102,103]。選擇使UTCA模型的目標函數取得最小值時的核寬度和μ為最優參數組合,并以UTCA模型輸出數據集作為DBN源域樣本集(訓練數據集)和目標域樣本集(測試樣本集)的輸入。DBN 結構參數的選取:采用經典的4層結構,兩個隱層節點數分別為100、100,學習率ζ=10-4,正則化參數λ=10-4。為減小隨機初始化的訓練參數對本文方法診斷結果的影響,重復驗證 20次,不同遷移條件下的故障識別準確率如表2所示,表中還列出了沒有進行數據遷移而直接根據源域樣本數據,分別采用支持向量機(SVM)、BP神經網絡(BPNN)和普通DBN方法對目標域樣本進行故障識別的準確率。
表2 不同遷移條件下滾動軸承故障診斷精度(單位:%)
Table 2 Rolling bearing fault diagnosis accuracy in different transfer conditions

診斷方法源域→目標域A→CB→CB→A平均SVM59.7856.0052.8356.20BPNN57.6953.2455.8455.59DBN71.5074.5870.6772.25本文方法95.8390.0092.2592.69
由表2可知,以不同工況數據作為源域或者目標域時,在3種試驗設定中,本文方法的平均故障識別率最高(92.69%),主要原因在于:UTCA在處理源域數據和目標域數據之間的差異性時具備優勢,不需要考慮樣本是否有標簽的問題,降低了人為因素的干擾,通過無監督自主遷移學習,將源域樣本遷移到目標域中,解決了因目標域故障樣本少導致的識別率低這一問題。至于其他3種分類方法,沒有故障樣本遷移過程,只能通過不同工況數據進行訓練和測試,由于機器學習的診斷能力和泛化性能有明顯的不足,而深度學習需要大量訓練樣本,因此導致診斷精度不高,平均識別率分別只有56.20%、55.59%和72.25% 。
為了使本文方法的有效性更為直觀,利用t-分布隨機鄰域嵌入(t-distribution stochastic neighbor embedding,t-SNE)算法將故障特征進行可視化。以工況A原始數據集為例,將原始樣本映射到二維空間來可視化高維數據,得到如圖4所示的特征散點圖。從圖4中可以看出,各種故障類型數據具有明顯的不確定性,各種振動信號特征交叉重疊在一起,相互交錯,很難區分軸承故障類別。

圖4 工況A原始數據集的特征散點分布
Fig.4 Feature scatter distribution of original data set of working condition A
為了進一步對比分析本文方法和普通DBN診斷方法的差異性,通過t-SNE將提取的故障特征降維至二維平面,以散點圖形式呈現,如圖5和圖6所示。
由圖5可見:當分別以工況A、B數據集為DBN訓練樣本時,僅能提取數據集A、B中的深層故障特征,并沒有縮小訓練集(源域)與測試集(目標域)之間的差異性,直接用于C、A數據中進行故障診斷時,由于所提取的A、B工況下軸承故障特征與C、A工況下的軸承故障特征間存在較大分布差異,導致軸承故障診斷知識即訓練得到的診斷模型無法識別其他工況下的軸承故障樣本,因此分類效果不好。

(a)診斷任務A→C

(b)診斷任務B→C

(c)診斷任務B→A
Fig.5 Fault feature scatter distribution by ordinary DBN method

(a)診斷任務A→C

(b)診斷任務B→C

(c)診斷任務B→A
Fig.6 Fault feature scatter distribution by the proposed method
由圖 6可見:本文方法在縮小訓練集(源域)與測試集(目標域)遷移故障特征間分布差異的同時,增加了不同工況的軸承故障特征的類間距離,放大了不同工況數據中隱含的相似故障信息,使得源域和目標域有更好的相似性,抑制了差異性信息對軸承數據的影響,使得通過訓練得到的遷移診斷模型對C、A工況的軸承數據樣本的辨識度較高,故障特征分類精度得到提升。對比圖5與圖6可知,本文方法能夠更好地將同一種健康狀況樣本聚集在一起,而將不同健康狀況樣本有效地分離。
為了更進一步說明本文方法的優越性,以下將本文方法與融合了傳統機器學習(包括隨機森林RF,支持向量機SVM,k近鄰算法k-NN)和UTCA的方法進行對比分析,得到軸承故障診斷結果如圖7所示。
從圖7中可以看出,本文方法比其他3種方法有更高的診斷精度,而且在不同遷移任務條件下進行診斷時的結果總體差異性不大。以遷移診斷任務A→C為例:本文方法的識別精度為95.83%,標準差為2.40%;UTCA-SVM方法的識別精度為85.94%,標準差為3.96%;UTCA-RF的識別精度為70.67%,標準差為3.42%;UTCA-k-NN的識別精度為84.54%,標準差為1.36%。這體現了本文方法在故障診斷中的普適性以及深度學習的優勢。
綜上所述,本文提出的基于UTCA算法和DBN模型的滾動軸承故障診斷方法的識別精度更高,這是因為:①該方法能夠直接利用UTCA算法縮小兩域之間的差異性,源域數據和目標域數據更加相似,使得源域樣本能遷移到目標域樣本中,并且在無監督的遷移學習過程中減少了對樣本標簽進行人為標記的不確定性,降低了診斷誤差率;②通過深度學習的強大特征提取能力對UTCA處理后的域數據進行高精度故障診斷,為因實際故障樣本少而導致的診斷精度低問題提供了一種解決方案,克服了UTCA和傳統機器學習融合方法的診斷能力和泛化能力不強的缺點。

圖7 采用不同方法的軸承故障診斷精度對比
Fig.7 Comparison of bearing fault diagnosis accuracy by different methods
本文將無監督遷移成分分析和深度信念網絡模型相結合,成功應用于滾動軸承故障診斷中。UTCA算法完成了不同工況(領域)間軸承數據的遷移學習,將不同工況振動信號映射到一個新的數據空間中,尋找公共遷移成分進行學習,增加源域數據集與目標域數據集之間的相似程度,克服了源域(訓練樣本)和目標域(測試樣本)必須滿足獨立同分布要求這一局限,為數據遷移提供了可能性,并且不需要考慮數據標簽標注對遷移數據的影響,解決了因目標域中實際故障樣本少而導致的診斷精度低這個問題。運用DBN模型對遷移的數據進行識別,充分發揮 DBN自主特征提取能力,取得了比其他對比算法更高的診斷精度。