童靳于 羅 金 鄭近德
安徽工業大學機械工程學院,馬鞍山,243032
滾動軸承作為旋轉機械中的關鍵傳動零部件,面對復雜多變的工業設備運行工況,不可避免地會出現各種故障,因此,滾動軸承狀態監測和早期故障診斷具有重要的現實意義[1]。
特征提取是滾動軸承故障診斷的關鍵步驟[2]。通過軸承振動信號的分析與處理,提取能夠反映故障信息的時域、頻域和時頻域特征[3-5],將所提特征輸入分類器中進行模式識別,可以判斷設備的故障類型。常用的分類器有基于傳統機器學習的隨機森林(random forest,RF)[6]、支持向量機(support vector machine,SVM)[7]和人工神經網絡(artificial neural network,ANN)[8]等。這類傳統機器學習算法的淺層結構缺乏強大的特征表示能力,它獲得良好精度的前提是依據先驗知識提取反映故障類型的敏感特征。然而,特征提取容易造成關鍵信息丟失,從而導致異常事件預測準確率下降。同時,淺層機器學習無法完成工業大數據的診斷問題。
近年來隨著先進傳感技術、大數據技術的發展及其在工業領域的應用,深度學習的發展為機械設備故障診斷提供了新的研究思路和方法。深度學習通過構建深層次的非線性網絡,可以自動挖掘隱藏在原始數據中的代表信息,并建立振動數據和設備的運行狀態之間的精確映射關系[9]。常用的深度學習模型有深度置信網絡(deep belief network,DBN)、卷積神經網絡(convolutional neural network,CNN)和深度自編碼網絡(deep auto-encoder network,DAEN)等。其中,DAEN因其能夠自動從樣本中學習到表征狀態特性的特點而被廣泛應用于設備故障診斷領域。文獻[10]搭建了一種基于自編碼器(auto-encoder,AE)的深度神經網絡,并將其應用于軸承故障診斷。文獻[11]提出了一種基于自編碼器的深度特征融合方法,在軸承故障和齒輪故障實驗分析中取得了令人滿意的診斷結果。文獻[12]成功地將基于稀疏自編碼器(SAE)的深度神經網絡用于感應電動機的故障分類。文獻[13]提出了一種基于收縮自編碼器(CAE)的旋轉機械故障診斷方法。然而,當振動信號中包含較大噪聲或奇異值時,上述方法診斷準確率大幅下降[14]。此外,DAEN超參數的選擇一直依賴經驗選取,選取結果對故障識別精度影響較大。
基于此,為了提高DAEN的特征挖掘能力,同時自適應地選取網絡超參數,本文提出一種增強深度自編碼網絡,并將其應用于滾動軸承故障診斷中。
AE是一個三層的無監督學習神經網絡,三層分別為表示輸入的輸入層、表示學習特征的隱藏層和表示重構的輸出層。輸入層和隱藏層構成編碼網絡,將原始輸入轉換為隱藏特征。隱藏層和輸出層構成解碼網絡,將隱藏特征重構為與原始輸入相同維度的輸出表征[15]。AE的結構如圖1所示。

圖1 AE的結構圖Fig.1 The structure of AE
假設輸入樣本集為x=(x1,x2,…,xi,…,xm),編碼網絡可以表示為
h=s(Wx+b)
(1)
解碼網絡可以表示為
z=s(W′h+b′)
(2)
式中,W、W′分別為編碼網絡和解碼網絡的權重矩陣;b、b′分別為編碼網絡和解碼網絡的偏置矩陣;s為激活函數;h為隱藏層特征;z為輸出層特征。
均方誤差(mean squared error,MSE)通常用作AE的損失函數,定義如下:
(3)
式中,‖·‖表示范數。
這樣,m個樣本的總損失函數為
(4)
當設備工況變化,振動信號中包含大量噪聲和奇異值時,DAEN的特征提取能力顯著下降。鑒于此,本文提出了一種增強深度自編碼網絡以提高DAEN在變工況條件下的特征提取能力。
最大相關熵是一種非線性和局部相似度量函數,對復雜信號特別是包含非平穩背景噪聲的軸承振動信號不敏感,可以很好地用來提取信號的潛在特征[16]。本文采用最大相關熵代替MSE作為AE的損失函數。
樣本集A=(a1,a2,…,ai,…,an)和B=(b1,b2,…,bi,…,bn)間的相關熵定義為
(5)
式中,E(·)為期望值;kσ(·)為核函數;FAB(·)為聯合密度函數。
在實際工程應用中,聯合密度函數經常是未知的,可以用一組樣本估計兩者間的相關熵,表示為
(6)
式中,m代表樣本數。
高斯核通常被用做相關熵的核函數[17],其定義如下:
(7)
那么,AE的損失函數可定義為
(8)
一般地,可以通過在AE的損失函數中引入正則化項以避免過擬合并學習更加魯棒的特征表示[18]。稀疏懲罰作為一種常見的正則項約束,將其添加到AE的損失函數中,可以有效地降低輸入數據的維數,加快網絡訓練的速度[19]。收縮懲罰項可以從噪聲環境中學習具有代表性和魯棒性的隱藏特征[20]。為了能夠進一步挖掘更深層次、更具代表性的特征,綜合考慮這兩種正則項約束的優勢,將稀疏懲罰項與收縮懲罰項同時作用于AE的損失函數,此時,AE的損失函數可進一步表示為
(9)


(10)

m個樣本的AE總損失函數可表示為
(11)
式中等號右邊第一項為新的重構誤差;第二項為嵌入非負約束因子的收縮懲罰項;第三項為稀疏懲罰項。
被稱為內存儲器,計算機中所有程序的運行都是在內存中進行的,是用于暫時存放CPU中的運算數據,以及與硬盤等外部存儲器交換的數據。
增強深度自編碼網絡通過堆疊多個AE以及一個softmax分類層而組成,其結構如圖2所示。

圖2 網絡結構圖Fig.2 The architecture of the network
在網絡訓練時,首先將第一個AE的隱藏層特征h1作為第二個AE的輸入,編碼得到第二個AE的隱藏層特征h2,重復該過程直至完成所有隱藏層的預訓練,再使用反向傳播算法對網絡進行微調,進一步優化網絡所有權重,然后將最后一個AE的隱藏層特征hn作為softmax分類器的輸入,得到分類識別率。
深度神經網絡模型中通常有許多超參數,若訓練樣本不足則很容易發生過擬合,這時模型在訓練集上表現良好,但是在測試集上表現一般,模型泛化能力較差。在網絡訓練階段,dropout通過對隱藏層的神經元隨機置零,使上一層神經元和網絡隨機挑選的下一層神經元共同工作,減弱神經元節點間的聯合適應性,這樣不僅能夠提高測試集識別的準確率,而且可以達到縮短訓練時間的目的。
影響增強深度自編碼網絡性能的關鍵參數分別為稀疏參數ρ、稀疏懲罰系數β、收縮懲罰系數λ和高斯核大小σ,手動調參很難保證設定的參數最佳且工作量很大。MIRJALILI等[22]于2014年提出了灰狼優化(grey wolf optimization,GWO)算法,因其所需設置的參數較少,同時收斂速度快,被廣泛應用于參數自適應優化問題中。
本文利用GWO算法解決增強深度自編碼網絡中關鍵參數難以選取的問題。首先設置GWO算法的基本參數,包括狼群數量,迭代次數和參數尋優界限,其次將狼群位置依次賦給增強深度自編碼網絡的關鍵參數ρ、β、λ、σ,以關鍵參數的組合(ρ,β,λ,σ)作為GWO算法的最優解,最后以分類識別率作為GWO算法的適應度函數開始尋優,輸出最優參數集(ρbest、βbest、λbest、σbest)。
基于所建立的增強深度自編碼網絡模型提出的滾動軸承故障診斷方法的診斷流程如圖3所示。具體步驟如下:
(1)獲取軸承振動原始信號,將其按一定比例分為訓練集和測試集;

圖3 診斷流程圖Fig.3 The flowchart of the diagnosis
(2)設置GWO算法的基本參數,包括狼群數量、迭代次數、參數尋優上界與下界;
(3)初始化網絡的參數,包括網絡深度、輸入維數、初始網絡權重等,將狼群位置依次賦給增強深度自編碼網絡的關鍵參數ρ、β、λ、σ,開始訓練;
(4)以訓練集分類識別率作為GWO算法的適應度函數,訓練網絡;
(5)利用測試集驗證訓練完成的網絡模型,并輸出診斷結果。
將本文方法應用于滾動軸承實驗數據分析,實驗數據來自美國凱斯西儲大學的滾動軸承試驗測試數據[23]。深溝球軸承的型號為SKF 6205-2RSJEM,通過電火花加工技術設置單點故障,在負載2.205 kW、轉速1730 r/min、采樣頻率為12 kHz的工況條件下,采集具有局部點蝕的內圈故障、滾動體故障、外圈故障以及正常狀態的滾動軸承振動信號。
每種故障類型取300個樣本,每個樣本包含400個連續采樣點。對于每種故障類型的樣本,隨機抽取270個作為訓練樣本,剩余的30個作為測試樣本。訓練集共有1890個樣本,測試集共有270個樣本。實驗一數據集如表1所示。

表1 實驗一數據集信息Tab.1 The data set information of experiment 1
將本文方法與傳統機器學習模型SVM、BPNN和三種深度自編碼網絡,即DAEN、深度稀疏自編碼網絡(DSAE)、深度收縮自編碼網絡(DCAE)進行比較。模型輸入均為未經處理的原始時域信號。SVM的核函數采用RBF函數,懲罰因子與核函數參數分別設為(50,0.1);BPNN的網絡結構設為[400 100 7],迭代次數200,學習率0.1。四種深度自編碼網絡結構均設置為[400 200 100 50 7],隱藏層數均設置為3層,迭代次數均為400次,激活函數均選擇ReLU函數。通過GWO優化算法獲得的一組最優參數(ρbest、βbest、λbest、σbest)為(0.07,0.25,0.05,13)。
不同方法的診斷結果對比如圖4和表2所示。由此可以看出,傳統的機器學習算法SVM和BPNN的10次試驗平均準確率僅達到63.43%和59.52%。在四種深度自編碼網絡中,DAEN的測試準確率最低,10次試驗平均準確率為91.52%,標準差為0.74;DSAE和DCAE的平均準確率分別為92.52%和93.33%,標準差分別為2.22和1.45,由此可以看出,DSAE和DCAE的10次試驗準確率波動較大,表現不穩定;本文方法在10次試驗中均取得了最高的測試準確率,平均準確率為95.95%,標準差為0.98。由此可以看出,與傳統機器學習算法相比,深度自編碼網絡能夠更好地挖掘軸承信號中的故障特征,建立軸承原始輸入數據與故障類別間的對應關系;與未加入正則項約束的深度自編碼網絡(DAEN)相比,對自編碼器進行正則化項約束能夠有效提升重構性能;在三種加入正則項約束的深度自編碼網絡(DSAE、DCAE和本文方法)中,將最大相關熵函數作為自編碼器的損失函數,同時在網絡權重中嵌入非負約束后,能夠較好地減少重構誤差,在一定程度上提高了自編碼器的特征提取能力和故障識別穩定性,同時,網絡訓練時加入dropout,可以有效提高測試集準確率。

圖4 不同方法10次試驗對比圖Fig.4 Diagnosis results of 10 trials using different methods

表2 不同方法的診斷平均準確率及標準差Tab.2 The average diagnostic accuracy and standard deviation of different methods
圖5為10次試驗中本文方法第10次試驗的混淆矩陣圖。對角線上的數字表示本文方法對每類工況樣本的識別率。從圖中可以看出,本文方法僅在軸承故障類型為1和3時出現了誤判,識別率分別為93%和90%,對其他類別軸承故障類型識別率均達到100%。

圖5 本文方法第10次試驗的混淆矩陣圖Fig.5 Confusion matrix of the proposed method in the 10th trial
為進一步體現本文方法對原始信號的特征提取能力,通過t-SNE方法分別對原始數據和本文方法最后一個隱藏層特征進行降維可視化,原始數據和本文方法特征可視化分別如圖6、圖7所示,圖中3個方向的坐標分別代表t-SNE方法分解的3個方向分量。
從圖6和圖7中可以看出,原始時域信號的聚類效果很差,每種故障類別的特征難以分辨。而本文方法提取的特征很容易區分,表現為相同故障類別的特征按照同一個中心聚集、不同故障類別的特征相距較遠,表明了本文方法能夠取得較好診斷結果的原因。

圖6 原始數據特征可視化(實驗一)Fig.6 Feature visualization map of raw data(experiment 1)

圖7 本文方法特征可視化(實驗一)Fig.7 Feature visualization map of the proposed method(experiment 1)
為了說明本文方法對變工況數據的故障診斷能力,選取同一實驗臺不同負載工況下的實驗數據加以驗證。實驗數據取自安徽工業大學自制軸承實驗臺(圖8)。實驗軸承型號為SKF6206-2RS1,采用電火花加工技術分別對軸承內圈、外圈和滾動體加工出不同深度的故障,故障類型如表3所示。在不同負載、不同轉速下采集了多種軸承運行狀態的振動信號。

圖8 自制實驗臺示意圖Fig.8 The diagram of self-made experiment test rig
選取轉速為1500 r/min、采樣頻率為10.24 kHz、負載分別為5 kN和7 kN工況下的軸承振動數據,兩種工況共包含8種不同故障類型和損傷程度的數據,數據采集信息見表3,時域波形圖見圖9。每種故障類型取500個樣本,每個樣本包含400個連續數據點。對每種故障類型隨機抽取450個作為訓練樣本,剩余的50個作為測試樣本。這樣,訓練集共有3600個樣本,測試集共有400個樣本。

圖9 故障數據振動信號Fig.9 Vibration signals of fault data
與實驗一相同,將本文方法分別與SVM、BPNN、DSAE、DCAE和DAEN對比。SVM的核函數采用RBF函數,懲罰因子與核函數參數分別設為(50,0.1);BPNN的網絡結構設為[400 100 8],迭代次數為200,學習率為0.1。四種深度自編碼器網絡結構均設置為[400 200 100 50 8],隱藏層數均設置為3層,迭代次數均為400次,激活函數均選擇ReLU函數,學習率為0.01,通過GWO優化算法獲得的一組最優參數(ρbest、βbest、λbest、σbest)為(0.01,0.13,0.46,13)。不失一般性地,取10次試驗的平均準確率作為不同方法的性能評估指標。不同方法的診斷結果對比如圖10和表4所示。

圖10 六種方法10次試驗對比圖Fig.10 Comparison chart of 10 trails with different methods
從圖10和表4可以看出,傳統的機器學習方法SVM和BPNN的平均準確率僅為45.18%和48.45%,標準差分別為1.76和1.14。由此可知,對于變工況軸承振動數據的故障診斷問題,由于不同工況下振動信號特征差異大,傳統的機器學習方法很難獲取良好的故障特征表示,因此很難取得較高的診斷結果和網絡穩定性。對于四種深度自編碼器,DAEN在10次試驗中表現較差,測試平均準確率為87.48%,且標準差較大,為1.52。這主要是由于DAEN未添加正則項約束,導致網絡較難挖掘出數據中的稀疏特征。DSAE和DCAE的平均準確率相差不大,分別為91.20%和91.73%,標準差分別為2.22和0.85。由此可見,在處理變工況軸承振動數據的故障診斷問題時,增加稀疏懲罰項和收縮懲罰項均能提高測試準確率,但增加收縮懲罰項比增加稀疏懲罰項對網絡穩定性的貢獻更大。本文方法的測試平均準確率為93.75%,標準差為0.65,這說明將稀疏懲罰項與收縮懲罰項同時作用于自編碼器的損失函數中可以更好地提取信號更具鑒別性的深層次特征,而且證明在網絡權重中嵌入非負約束能夠較好地減少重構誤差。

表4 六種方法的平均診斷準確率與標準差Tab.4 The average diagnostic accuracy and standard
圖11為10次試驗中本文方法第5次試驗的混淆矩陣圖。從圖中可以看出,針對8種工況的軸承數據,本文方法在類別1、類別3、類別4、類別7和類別8都實現了100%的識別率。對于類別2、類別5和類別6中的每50個測試樣本也能正確判斷出40個以上。
與實驗一相同,采用t-SNE分別提取原始數據與本文方法最后一個隱藏層的特征,分別繪制散點圖,見圖12、圖13。從圖12和圖13中可以看出,原始時域信號的聚類效果很差,而本文方法提取的特征較容易區分,表現為相同故障類別的特征聚集程度較高、不同故障類別的特征相距較遠。結合圖11和圖13可以看出,滾動體故障1和滾動體故障2中有少量樣本點重疊,特征區分不明顯,這也說明了圖11表現出類別5和類別6中識別率僅84%和92%的原因。從總體上看,本文方法對變工況下的軸承振動數據也能達到較高的識別精度,具有較高的魯棒性與穩定性。

圖11 本文方法第5次試驗的混淆矩陣圖Fig.11 Confusion matrix of the proposed method in the 5th trail

圖12 原始數據可視化(實驗二)Fig.12 Feature visualization map of raw data(experiment 2)

圖13 本文方法特征可視化(實驗二)Fig.13 Feature visualization map of the proposed method(experiment 2)
本文提出了一種增強深度自編碼網絡,并將其應用于滾動軸承故障診斷。通過兩組不同類型的實驗驗證,得到如下結論。
(1)以最大相關熵作為自編碼器的損失函數以及加入稀疏懲罰項和嵌入非負約束因子的收縮懲罰項可以增強自編碼器的性能,使其能夠學習更具代表性的信息。
(2)基于GWO的參數尋優方法可以自適應地選取網絡最優超參數,避免了手動調參的巨大工作量。
(3)針對不同實驗設備采集的軸承振動數據,本文方法均能準確識別滾動軸承的故障類型,得到更好的診斷結果,驗證了本文方法具有更強的特征提取能力,對變工況下的軸承振動數據也能達到較高的識別精度。