張劍,程培源,邵思羽*
(1.空軍工程大學研究生院,西安 710051;2.空軍工程大學防空反導學院,西安 710051)
旋轉機械設備穩定運行是工業生產安全的核心要求,設備故障可能導致嚴重的經濟損失乃至災難性事故。軸承和齒輪作為故障頻發的旋轉零部件,狀態監測、及時且準確的故障診斷與定位對機械系統的智能化健康管理具有重要的意義。在實際應用中,通常利用傳感器采集機械系統的振動信號,然后高效提取能夠反映零部件運行狀態的特征信息,最終實現故障識別與預測。
傳統的故障診斷主要依靠人工提取特征,這個過程需要大量的信號處理方法和豐富的工程經驗[1],具有一定的研究對象針對性[2]。深度學習能自適應地從高維、冗余的原始振動數據中提取出具有代表性的抽象特征,抑制人工提取特征的局限性,被廣泛應用于旋轉機械故障診斷中。文獻[3]中利用卷積神經網絡(Convolutional Neural Network,CNN)自適應提取原始振動信號的短時特征作為長短期記憶(Long Short-Term Memory,LSTM)層的輸入,利用LSTM 層學習深度特征并用Softmax 函數實現故障模式的識別。文獻[4]中提出一種混合蛙跳優化的CNN 以提取原始振動信號的低維故障特征。文獻[5]中將L2 范數和同倫正則化添加到變分自編碼器的損失函數中,提出深度正則化變分自編碼器并用于轉子軸承系統的故障診斷,取得了良好的效果。但深度學習技術仍存在局限性:1)需要大量標記數據來進行訓練,當只使用少量標記數據訓練深層網絡時,測試精度將大幅降低[6];2)通常訓練數據與測試數據需具有相同的分布。
在實際應用中,由于工作環境、負載、操作條件等時刻變化,收集的目標標記數據通常不足以建立具有魯棒性的深度網絡模型。由于能從一些不同但相關的任務(源任務)獲得知識以提高目標任務的性能,遷移學習在訓練樣本不足的情況下顯示出巨大的優越性[7]。
文獻[8]中利用最大均值差異(Maximum Mean Discrepancy,MMD)將數據映射到再生核希爾伯特空間以減小不同分布之間的差異,同時通過加權正則增強原始數據的代表性特征;文獻[9]中提出了一種基于CNN 的多層域自適應方法用于滾動軸承故障診斷,取得了較好的效果;文獻[10]中通過原型學習學習一個具有有效域適應能力的域不變空間,實現變工況的軸承故障診斷;文獻[11]中提出多源域自適應,通過沃瑟斯坦距離最小化目標域和每個源域之間的特征分布差異,將知識從多個已標記源域轉移到單個未標記目標域;文獻[12]中提出了一種基于中心矩偏差(Center Moment Deviation,CMD)的域自適應卷積神經網絡,利用卷積神經網絡對兩種不同分布的原始振動信號進行特征提取,然后用CMD 準則最小化分布差異,提取兩個不同的域中分布相似的特征;文獻[13]中利用流形正則化進一步挖掘邊際分布的知識,減小不同域之間的幾何差異,同時引入子空間對齊減少不同域的不對齊。然而,上述研究集中在最小化兩個域的距離,而不是來自不同域的同一類別之間的距離,僅減小了全局特征分布的差異,卻忽略了源域和目標域相應類別之間的特征差異,導致源域中不相關的知識被遷移到目標域,降低了診斷的準確性。
針對上述問題,提出了一種基于一維殘差卷積自編碼網絡(Residual Convolutional Auto-Encoding Network,Res-Conv-AE-Net)的類自適應故障診斷模型,該模型在訓練中只需要很少的目標標記樣本,即能準確識別故障。
本文的主要工作如下:
1)提出了改進的Res-Conv-AE-Net,用殘差塊作為自編碼網絡的基本單元,并設計了一種跳躍連接結構連接網絡中對應的編碼器和解碼器,將各層編碼器的細節特征傳遞到對應的解碼器,減少了網絡較深時振動信號細節特征的丟失,同時在反向傳播時可以越層傳遞梯度,緩解了梯度消散問題。理論分析與實驗結果表明,相較于一般的一維卷積自編碼網絡(Conv-AE-Net),Res-Conv-AE-Net 性能得到較大的提高。
2)提出基于類自適應的遷移方法,用MMD 最小化目標域與源域同一類別特征間的距離,將目標域映射到源域的特征空間,減少類間特征分布的差異,自適應地將網絡從源域數據中學習到的特征知識遷移至目標域數據中,從而實現對目標域數據的故障診斷。相較于微調以及域自適應遷移,該方法在有限樣本的故障診斷方面表現出更優的性能。
自編碼器[14]以全連接層作為網絡的基本結構,是一種對稱的三層神經網絡,包括編碼器和解碼器兩個部分,如圖1所示。它通過均方誤差損失來逼近一個恒等函數,使得X≈Y,X={xi|i∈N+},Y={yj|j∈N+},從而獲得數據的最佳隱層表達h。

圖1 自編碼器結構Fig.1 Structure of auto-encoder
編碼器通過非線性映射函數fE(·)將輸入X映射到隱層向量h,即

解碼器通過非線性映射函數fD(·)用隱層向量h重構輸入數據并輸出Y,即

自編碼器的損失函數定義為:

本文以卷積和池化作為自編碼器的基本結構,引入一維殘差塊和跳躍連接結構提出Res-Conv-AE-Net,其結構如圖2所示。

圖2 Res-Conv-AE-Net結構Fig.2 Structure of Res-Conv-AE-Net
編碼器包括4 個編碼模塊,第1 個編碼模塊E0由1 個大尺度一維卷積層、1 個最大池化層組成,輸出的特征可表示為:

其中:SeLU 表示縮放指數線性單元函數(Scaled exponential Linear Unit,SeLU);⊙表示卷積運算;表示卷積核的值;表示偏置值;表示最大池化層的大小;表示池化層輸入特征的長度。
3 個編碼模塊E1、E2、E3均由1 個殘差塊和1 個最大池化層組成。殘差塊由He 等[15]在ImageNet 競賽中提出,如圖3所示,對于潛在映射g(X),g(X)=f(X) +X,殘差塊需要學習的是殘差f(X)=g(X) -X,解決了卷積神經網絡層數增加導致的梯度消失現象。

圖3 殘差塊結構Fig.3 Structure of residual block
Res-Conv-AE-Net 中第a(a=1,2,3)個編碼模塊Ea輸出的特征可表示為:

解碼器包括4 個解碼模塊D3、D2、D1、D0,D0由1 個上采樣層、1 個大尺度一維卷積層組成,D3、D2、D1均由上采樣層和殘差塊組成。上采樣選用Upsampling,其輸出是對上一層輸入數據維度的放大,恢復池化之后減小的數據維度,對于輸入的特征M,輸出為:

其中:S表示Upsampling 的長度。
Res-Conv-AE-Net 第1 個解碼模塊D3的輸入數據是E3輸出的特征,則其輸出的特征可表示為:

可以看到,解碼模塊輸出的特征不僅由前一個解碼模塊的輸出決定,還包含了同層編碼模塊輸出的特征,特別是解碼模塊D0保留了原始數據X經過編碼模塊的特征,使解碼器可以更好地重構數據。
深層神經網絡訓練時可能造成內部協變量偏移的現象,導致網絡訓練速度慢且效率低下,SeLU 函數[16]能將樣本分布自動歸一化到0 均值和單位方差,有效地解決了這一問題,因此本文使用SeLU 作為神經元激活函數。表1 為Res-Conv-AE-Net 詳細參數信息。

表1 模型參數信息1Tab.1 Model parameter information 1
隨機變量的矩反映了其分布信息,如果兩個隨機變量任意階的矩均相同,那么分布是一致的。MMD 用于判斷兩個數據之間的分布是否相同,基本思想是用兩個分布之間差距最大的矩作度量兩個分布的標準,定義如下:
對于給定的數據X=[x1,x2,…,xn]~p(有n個元素)、Y=[y1,y2,…,ym]~q(有m個元素)以及空間F中的非線性映射函數ψ(·):O→U。MMD 定義為:

其中:E 表示期望。
由于再生希爾伯特空間H的再生性:任意一個ψ(·) →ψ(x)的映射均可用空間內的點積表示,即存在一個再生核k∈H使得每一個ψ∈H都滿足:


1.3.1 基于Res-Conv-AE-Net的類自適應故障診斷模型
Res-Conv-AE-Net 用于故障診斷有兩個主要步驟,如圖4所示。

圖4 基于Res-Conv-AE-Net的故障診斷模型Fig.4 Fault diagnosis model based on Res-Conv-AE-Net
1)用大量未標記數據X1訓練Res-Conv-AE-Net;
2)建立分類網絡,在X1中選擇少量數據進行標記得到(X2,Y2)并用其訓練網絡。
分類網絡由Res-Conv-AE-Net 的編碼器和分類器組成。如圖4,分類器包括自注意力機制層、展平層、全連接層以及Softmax 層。自注意力機制用于優化Res-Conv-AE-Net 提取的特征;展平層將自注意力機制學習到的特征平坦化并連接到全連接層;為避免過度擬合,在全連接層中使用了Dropout 技術[17];最后,采用Softmax 識別故障類別(網絡在編碼器之后的參數信息如表2 所示)。

表2 模型參數信息2Tab.2 Model parameter information 2
模型中分類網絡的優越性能建立在充足的已標記訓練數據之上,當已標記訓練數據的數量小于一定值時,網絡將很難提取到振動信號的有效特征。本文在Res-Conv-AE-Net分類網絡的基礎上提出基于Res-Conv-AE-Net 的類自適應故障診斷模型,旨在通過類自適應的遷移方法將Res-Conv-AENet 從充足的源域數據學到的共性知識遷移到目標域,使得模型在只有微量已標記目標域數據的情況下也能表現出良好的性能。
域自適應通過特征對齊減小源域和目標域特征之間的差距。傳統域自適應采用全局對齊,但全局對齊忽略了兩個領域同一類別特征之間的差異,造成目標域特征混淆;類自適應方法在對齊過程中加入標簽信息,提出按類對齊的方法,將同一類別的特征對齊到同一領域,提高了分類準確率,如圖5 所示。

圖5 自適應示意圖Fig.5 Schematic diagram of adaptation
基于Res-Conv-AE-Net 的類自適應故障診斷模型如圖6所示,模型以Res-Conv-AE-Net 分類網絡為基礎架構,包括源域和目標域兩部分網絡。首先利用源域數據預訓練分類網絡,并將預訓練得到的源域網絡參數遷移到目標域網絡;其次將已標記的源域數據與目標域數據按類對齊組成數據對,即[(xS,yS);(xT,yT)]→(xS,xT,y),并輸入對應的網絡進行聯合訓練,訓練過程中:

圖6 基于Res-Conv-AE-Net的類自適應故障診斷模型Fig.6 Fault diagnosis method based on Res-Conv-AE-Net and class adaptation
1)通過類誤差損失最小化兩個域間相應類別數據特征的分布差異,將目標域特征映射到源域的特征空間,以此學習域不變特征。類誤差損失通過計算目標域和源域網絡全連接層輸出的數據特征的MMD 得到。
2)通過分類誤差損失學習具有判別性的特征,以提高分類準確率,分類誤差損失用目標域數據及其標簽計算得到。

其中:L(XT,YT)表示預測標簽與真實標簽之間的分類損失,選用交叉熵損失函數表示源域與目標域特征相應類別之間的分布差異,即類誤差損失;λ是權衡參數,設置為3。
3)只更新目標域網絡的參數,不更新源域網絡。
1.3.2 故障診斷流程
實際工作中,由于工作環境、負載、轉速以及操作條件等時常變化,收集到的目標標記故障樣本通常很少。因此,本文提出基于Res-Conv-AE-Net 和類自適應的模型以解決旋轉機械小樣本故障診斷問題。該模型主要包括3 個步驟:
步驟1 模型預訓練。
1)建立Res-Conv-AE-Net,設置卷積層、最大池化層、上采樣和學習率等參數;
2)用大量未標記的源域數據X1S訓練Res-Conv-AE-Net;
3)在Res-Conv-AE-Net 編碼器的基礎上建立分類網絡;
激勵是給學生最好的動力,老師在課堂教育時營造情境氛圍,用激勵的語言去指導學生,從而讓學生產生對體育學習的興趣。激勵教學就是要做到理性和感性相結合,學生在一種輕松的環境下學習,有嚴有松,既能鍛煉身體,又能培養自身的服從命令聽指揮的意識。在學生碰到一些狀況時,老師千萬不要用一些嘲笑不友好的態度對待學生,要曉之以理,動之以情,幫助學生解決狀況,尊重學生,讓學生在激勵的語言下取得更大的進步。
4)用Res-Conv-AE-Net 編碼器的參數初始化分類網絡的對應層;
步驟2 類自適應。


采用東南大學公開的軸承箱數據驗證本文模型的有效性,該數據在動力傳動系統動態模擬平臺獲得,如圖7所示。

圖7 實驗平臺Fig.7 Experimental platform
數據集在20 Hz 和30 Hz 兩個轉速下得到,包含軸承的5種狀態:滾珠故障、內圈故障、外圈故障、內外圈復合故障和健康狀態;齒輪的5 種狀態:齒缺損、斷齒、齒根磨損、齒面磨損和健康狀態,每個狀態采集1 000 個樣本,每個樣本有1 024 個數據點,如表3 所示。

表3 實驗數據信息Tab.3 Experimental data information
用數據B 驗證訓練集數據量對本文提出的Res-Conv-AE-Net 的故障識別率的影響,隨機對數據B 每種故障狀態各抽取1、3、5、7、10、20、30、40、50、60、70、80、90 以及100 個樣本作訓練集(剩余樣本作測試集)進行10 次重復性實驗,得到測試集識別率的平均值如表4 所示。
由表4 可知:訓練樣本的數量對識別率影響較大,隨著數量的增加,識別率也隨之增加,并且識別率的增勢逐漸放緩;訓練樣本數小于10 時故障識別率很低,訓練樣本數為10時故障識別率達到95.00%,訓練樣本數大于10 時識別率基本不增加。然而現實生活中,已標記的故障數據很少,因此提高網絡在訓練樣本數量小于10 時的識別率十分重要,針對此提出了基于一維殘差卷積自編碼網絡的類自適應故障診斷模型。

表4 不同訓練樣本數下的識別率Tab.4 Recognition rates under different numbers of training samples
為驗證激活函數對網絡特征提取能力的影響,分別用Sigmoid、Tanh、ReLU 與SeLU 函數進行對比,實驗采用數據B進行訓練,75%數據做訓練集(其中100 個樣本為標記數據),結果如圖8 所示。

圖8 不同激活函數下的準確率Fig.8 Accuracies under different activation functions
從圖8 中可以看到:Sigmoid 函數作激活函數,網絡的性能最差,因其導數fSigmoid′取值范圍為(0,0.25),只有當輸入在0 附近時,fSigmoid′才能取得較大值,極容易出現梯度消失,導致無法完成網絡的訓練,因此實驗中網絡的準確率僅為20%。Tanh 函數作激活函數,網絡的性能次差,因其導數fTanh′取值范圍為(0,1),當輸入為1.35 時,fTanh′=0.25,部分緩解了梯度消失問題。ReLU 函數作激活函數,網絡的性能較好,輸入大于0 時,導數fRelu′=1,解決了梯度消失問題;但是輸入小于0 時,fRelu=1,對應的神經元不被激活,權值不能更新,導致網絡不能學習到有效的特征。SeLU 函數作激活函數,網絡的準確率高于其他三個激活函數,且收斂速度也是最快的,SeLU 函數具有ReLU 函數的優點,同時還能將樣本分布自動歸一化到0 均值和單位方差,解決了深度神經網絡內部協變量偏移的問題。由此可說明SeLU 函數能有效提高Res-Conv-AE-Net 的收斂速度和特征提取能力。
同時為驗證Res-Conv-AE-Net 特征提取能力的優勢,將其與同層數的一維卷積自編碼器進行對比,結果如圖9 所示。可以看到,Res-Conv-AE-Net 中數據的損失值下降速度明顯快于Conv-AE-Net,且迭代結束后的損失值較小。這表明殘差塊以及跳躍連接結構能減小重構誤差,提高編碼器的特征提取能力。

圖9 兩種自編碼器的損失值Fig.9 Loss values of two auto-encoders
根據所提出的類自適應遷移故障診斷問題,設置一系列遷移實驗(見表5),進行10 次重復性實驗,結果取平均值。實驗抽取75%源域數據(其中標記樣本100 個),1、3、5、7、10個已標記樣本作訓練集。

表5 實驗設置Tab.5 Experimental setting
首先進行實驗A→B、A→D,并與微調(僅將交叉熵損失作為優化目標)、域自適應遷移學習方法(源域和目標域的訓練數據全局對齊)對比,結果如表6 所示。

表6 不同遷移學習方法的識別率 單位:%Tab.6 Recognition accuracies of different transfer learning methods unit:%
對比表4 與表6 中A→B 的結果可知,樣本數小于10 時,相較于直接訓練,遷移學習的識別率有較大提升,說明遷移學習方法確實能解決小樣本情況下故障識別率低的問題。
分析表6 可知,自適應遷移的識別率明顯高于微調,特別是目標域每類故障只有1 個樣本時,差距十分明顯;同時,類自適應遷移的識別率略高于域自適應遷移,說明類自適應遷移在實現只有微量已標記數據的故障診斷方面有優異的性能。對比表6 中A→B 與A→D 的結果可知,源域和目標域差異越小測試精度越高。例如,數據A 和數據B 是不同工況的軸承數據,分布差異小,從A 域中學習到的特征更容易轉移到B 域,識別率高;數據D 是齒輪的故障數據,并且工況也不同,分布差異大,從A 域中學習到的特征更難轉移到D 域,識別率較小。與實驗A→B 比較,在實驗A→D 中,類自適應遷移方法故障識別率的增幅遠大于其他遷移方法增幅,這也說明了其在跨域小樣本故障診斷中的優異性能。
為了進一步驗證小樣本情況下模型的性能,進行A→B、A→C、A→D,B→A、B→C、B→D,C→A、C→B、C→D 以及D→A、D→B、D→C 的實驗,即A、B、C、D 四類數據分別作源域數據交叉驗證,目標域每類故障1 個樣本作訓練集,結果如表7所示。
分析表7 結果:在同一部件不同工況的數據之間進行遷移,即應用于軸承(A→B、B→A)和齒輪(C→D、D→C)均能取得與A→B 相近的故障識別率,達到95.47%以上;在不同部件的數據之間進行遷移,即用于軸承→齒輪(A→C、A→D、B→C、B→D)和齒輪→軸承(C→A、C→B、D→A、D→B)均能取得與A→D 相近的故障識別率。可知,該方法具有良好的性能。

表7 不同遷移任務的故障識別率 單位:%Tab.7 Fault recognition rates for different migration tasks unit:%
為更直觀地說明本文模型在跨域故障診斷中的有效性和優越性,引入主成分分析(Principal Component Analysis,PCA)算法和t-分布鄰域嵌入(t-distributed Stochastic Neighbor Embedding,t-SNE)算法繪制網絡全連接層學習到的特征的分布圖。該方法首先用PCA 將數據降至適當的維數,然后再用t-SNE 將數據降至二維,并以散點圖的形式表示。以實驗A→B 為例,分別作出從零開始訓練、微調、域自適應遷移和類自適應遷移四種方法中目標域特征的散點圖、源域和目標域特征混合的散點圖,結果如圖10 所示。
分析圖10 中目標域特征分布得出:從零開始訓練學習到的特征中,存在三類類間間距小,且大部分樣本混疊;微調學習到的特征中,存在兩類類間間距小,且樣本混疊多;域自適應遷移學習到的特征混疊樣本略多,其他樣本均很好地區分開;類自適應遷移學習到的特征類內間距小,類間間距大,除個別樣本混疊外,其他樣本均很好地區分開。分析圖10中目標域和源域的特征分布得出:從零開始訓練學習到的各類故障特征存在大量混淆;微調方法中,源域和目標域相應類型的特征重疊度較小,并且存在一定混淆;域自適應遷移中,源域和目標域相應故障類型的特征重疊度較大、但不同類別的故障特征仍有重疊;類自適應遷移中,源域和目標域相應類型的特征基本相互重疊。由此可知,域自適應遷移僅減小了全局特征分布的差異,而本文提出的類自適應遷移可以減少源域和目標域之間相應故障類別之間的特征差異,并將之映射到同一個特征空間,進一步優化遷移學習的性能,提高了診斷的準確率。

圖10 特征分布圖Fig.10 Feature distribution maps
為驗證本文所提故障診斷模型的有效性,將其與CNN+類自適應,以及文獻[8-9,12]中提出的自適應故障診斷模型進行對比。從如表8 所示的對比結果可以看出:本文模型的診斷準確率明顯高于其他模型。因此,本文提出的基于Res-Conv-AE-Net 的類自適應故障診斷方法能有效解決在微量標記數據下的故障診斷問題。

表8 本文模型與其他模型的準確率比較 單位:%Tab.8 Comparison of accuracy between the proposed method and other methods unit:%
為驗證本文模型網絡權重和偏置值的遷移效果,在目標域樣本數量為每類故障個數1 個時,將目標域各編碼層和全連接層的權重和偏置值與源域訓練所得的網絡預權重和偏置值做差,并將其變換成一維矩陣。以實驗A→B 為例,結果如圖11 和表9 所示。

圖11 權重和偏置變化值對比Fig.11 Comparison of change values in weight and bias

表9 權重和偏置的變化區間Tab.9 Range of weight and bias changes
分析圖11 和表9 可知,與用源域數據預訓練的網絡相比,用目標域數據遷移訓練后,網絡的權重和偏置值中均存在變化很小的部分,這部分表示源域和目標域近似的特征,也是需要遷移的權重和偏置值;同時,權重和偏置值存在變化較大的部分,這部分表示源域和目標域差異較大的特征,需要通過少量目標樣本訓練,根據所設置的損失函數微調這部分權重和偏置值,最終得到適應目標域故障數據的分類網絡的權重和偏置值;并且,從第一層編碼器到第三層編碼器,權重和偏置值的變化逐漸變大,源域數據和目標域數據淺層特征的差異小,而深層特征的差異大,因此,用目標域樣本微調時,重點在底層網絡。
本文提出了一種基于Res-Conv-AE-Net 的類自適應故障診斷模型,利用Res-Conv-AE-Net 提取原始振動數據的可遷移特征,使用MMD 減小源域數據和目標域數據相應故障類型之間的特征分布差異,通過類自適應方法將從源域數據學習到的特征知識遷移至目標域數據中,從而實現在微量已標記數據下對目標域數據的故障診斷。為了驗證本文模型的有效性,利用實驗平臺數據進行實驗,通過對實驗結果的分析可以得出如下結論:
1)以殘差塊作為基本單元,并用跳躍連接結構連接網絡中對應的編碼器和解碼器,減小了自編碼網絡的重構誤差,提高了網絡提取特征的能力。
2)SeLU 函數能將樣本分布自動歸一化到0 均值和單位方差,提高了網絡的特征提取能力以及收斂速度。
3)每類故障樣本數量小于10 時,基于Res-Conv-AE-Net的故障診斷模型將不能有效識別軸承箱故障,特別是每類故障樣本的數量為1 時,故障識別率極低。與微調以及域自適應遷移相比,類自適應故障診斷模型在小樣本故障診斷方面具有更好的性能;通過特征可視化發現,類自適應能減小類間特征分布的差異,有效地將網絡從源域數據中學習到的特征知識遷移至目標域中。