楊騰,寧芊,陳炳才
(1.四川大學電子信息學院,成都610065;2.大連理工大學計算機科學與技術學院,大連116024)
大型機電設備是復雜的非線性動態系統,具有不確定性、非線性、時變等特點,故障狀態復雜,干擾因素多[1]。滾動軸承作為機電設備的重要組成部分,故障如若發現排查不及時,或是診斷出錯往往會導致生產延誤和維修費用過多,甚至成為生產作業人員人身安全的重大隱患[2],因此準確及時的檢查與診斷滾動軸承的故障以最大限度地降低性能下降和避免危險的發生是必要的,也是故障診斷研究者們近年來不斷追求的。
早期故障診斷一般先對收集到的滾動軸承振動信號進行分析處理,選取合適的特征信號進行提取[3],然后再輸入到支持向量機(SVM)、模糊C均值聚類等機器學習算法中進行故障診斷和分類。傳統的特征特征提取可分為三類:基于時域分析的信號特征提取,基于頻域分析的信號特征提取以及基于時頻分析的信號特征提取[4]。Yan提出的一種多域特征支持向量機優化分類算法在滾動軸承故障診斷中的應用[5],從時域、頻域、時頻域等多域方面提取故障特征信息然后利用基于粒子群優化的支持向量機分類模型,實現了滾動軸承多故障狀態的識別。Li提出了一種基于置換熵、集成經驗模式分解和支持向量機優化的軸承故障診斷模型[6],通過整體經驗模態分解(EEMD)將振動信號分解為一組固有模態函數,利用特征空間中簇間距離(ICD)優化的SVM對故障類型和故障嚴重程度進行分類。然而基于特征提取的信號處理技術比較依賴人為的特征選取和先驗知識,在一些時候可能遺漏原始故障特征,而且泛化性能較低使人們開始尋找新的方向[7]。
隨著深度學習熱潮的興起,其在自然語言處理、圖像識別等領域的廣泛應用也給軸承故障診斷研究者們帶來了新的方向。深度學習從收集的信號中自動的提取有用特征而不再依賴人工特征提取,使用端到端的形式將原始信號數據和深度學習網絡相連實現對滾動軸承故障的診斷分類[8]。近年來,較為公眾熟悉的深度學習基本模型框架包括深度置信網絡(DBN)、卷積神經網絡(CNN)、堆疊自動編碼機(SAE)、遞歸神經網絡(RNN)[9]。Xu提出了一種新的自適應快速深卷積神經網絡能從振動信號中自動學習復雜有用的特征,利用指數線性單元激活函數和全局平均池構造了深度卷積神經網絡結構,具有廣闊的接受域[10]。Wu提出一種用于軸承故障診斷的自適應深度轉移學習方法,使用基于實例轉移學習的長短時記憶遞歸神經網絡(LSTM)模型,生成輔助數據集,引入GWO(Grey Wolf Optimization)優化算法,自適應地學習聯合分布自適應的關鍵參數,其模型在標記故障數據不足的情況下依然具備很好的有效性和魯棒性[11]。ZHANG提出一種基于改進的卷積神經網絡的軸承故障診斷方法,將一維原始數據轉換為二維圖像數據,通過CNN神經網絡消除專家經驗對特征提取的影響自動的提取特征并對故障進行診斷[12]。以上所構建的神經網絡多是對滾動軸承信號單一域上的診斷,不能很好的學習到其他域的特征,所以其泛化性和準確性依然存在提升空間。
為了解決以上問題,本文提出一種基于小波變換和殘差神經網絡模型的變負載軸承故障診斷模型。該模型將采集到的振動信號通過小波變換將一維時域信號映射到二維時頻域中,將得到的二維時頻信號進一步壓縮后作為改進殘差網絡的輸入,由網絡自身對信號進行特征提取并進行診斷。
小波變換由法國學者Morlet于提出,傳統的快速傅里葉變換將時域信號變換到頻域上,能直觀的從頻域上對信號進行分析,但是無法得知信號在不同時間點上的頻率信息,小波變換使用面積固定而形狀可變的窗函數通過多辨率分析能很好的平衡時間分辨率和頻率分辨率。連續小波變換公式(1)如下:

其中w(a,b)為小波變換系數,φ(t)?L2(R)為基本小波或母小波,其傅里葉變換?(w)滿足條件(2):

對母小波進行伸縮、平移將得到一系列小波函數:

凱西西儲大學(CWRU)滾動軸承數據中心的數據被廣泛應用于滾動軸承診斷領域和信號分析領域,大量論文期刊也以此作為訓練數據,為避免數據非同一分布帶來的實驗誤差,本文所有數據均使用CWRU數據集。驅動端軸承故障由電火花在內圈、外圈、滾動體三個位置點觸加工形成:內圈損傷、外圈損傷、滾動體損傷三種故障位置類型,故障位置損傷有三種不同損傷尺寸分別為:0.007inch、0.014inch、0.021inch,共計九種故障類別,加上滾動軸承正常工作狀態共計十種軸承狀態標簽。
在模擬實驗中使用型號SKF-6205的驅動端作為實驗對象,信號采樣頻率為12KHz。根據軸承工況的不同,數據集共四種分別為:0hp、1hp、2hp、3hp。每個樣本由2048個振動點表征(使用隨機抽取的方式從長度為10萬左右的振動點序列中隨機的抽取一段連續的長度為2048的振動點,若重復抽取則舍棄重新抽取)。圖1是1hp工況下軸承不同狀態標簽下的樣本時域波形圖。鑒于篇幅限制僅展示正常狀態以及損傷尺寸0.007inch的三種故障狀態。

圖1 不同故障類型樣本的時域波形圖
圖2是時域樣本經過小波變換后得到的時頻圖,其中采樣頻率12K,尺寸序列長度為256,使用小波名為cmor3-3。從圖中我們能夠直觀的看到不同故障狀態的能量分布具有良好的分辨性,其中軸承正常狀態下的能量集中在低頻分段且在整個時間軸上波動較小,故障狀態下則集中在高頻分段并且在時間軸上出現明顯波動對比明顯。小波變換后的時頻圖展示出良好的時間分辨率和頻率分辨率。

圖2 不同故障類型樣本的小波變換時頻圖
由于小波變換直接輸出的時頻圖維度較大,若直接將其作為網絡模型輸入計算量巨大,所以我們將其維度壓縮至128×128,使深度神經網絡能夠更快的訓練模型,更快的診斷故障,提高模型實際應用的實時性。圖3為壓縮后的小波變換時頻圖,從圖中可以看到對比壓縮前的時頻圖壓縮后的時頻圖特征基本保留完整,未出現明顯的特征丟失。

圖3 不同故障類型樣本的小波變換時頻壓縮圖
每種工況下滾動軸承有正常狀態、內圈故障狀態、外圈故障狀態、滾動體故障狀態,除正常狀態外其余三種狀態均有上述提及損傷尺寸共十種軸承狀態。每種軸承狀態使用800個樣本作為訓練集200個樣本作為驗證集。單一工況數據集信息如表1所示。

表1 單一工況下的數據集
為驗證本文模型在不同工況下的適應性,設置0hp、1hp、2hp、3hp四種變負載數據集,并使用不同負載數據集進行交叉驗證。數據集設置可見表2。

表2 交叉驗證數據集
眾所周知,在深度神經網絡中網絡的深度是至關重要的,為追求更高的精確度研究者們往往會選擇擴大訓練集樣本或是更深的網絡結構,然而選擇更深的網絡結構同時帶來的兩個問題:梯度消失/梯度爆炸以及網絡的退化問題。前者可以通過歸一化初始化、中間歸一化層得到解決,但是對于后者研究者們發現對一個網絡逐漸增加其的深度,模型的準確度逐漸達到飽和然后迅速退化。
為解決模型網絡層數過深而導致的退化問題,K.He等人受傳統深度卷積神經網絡(VGGNET)的啟發于2017年提出了殘差網絡(ResNet)[13]。VGGNET使用多個卷積核尺寸為3×3的卷積層堆疊構成卷積組,代替傳統的大卷積核卷積層,有效的減少了參數,加快了網絡的學習速度。ResNet在VGGNET的基礎上采用一種“shortcut connections”鏈接方式如圖4,假設將一組堆疊的神經網絡層的映射近似為恒等映射,即該組神經網絡層的輸入為X,堆疊的非線性層映射為F(X),其輸出H(X)則表示為:H(X)=F(X)+X,當H(X)近似為X時,這組堆疊的網絡層可看做一個恒等映射,F(X)則被看做一個殘差函數有:F(X)=H(X)-X,因此在神經網絡中添加若干恒等映射既加深了網絡深度也不會導致網絡的退化。故模型僅需最小化F(X)將化殘差函數逼近于0即可解決網絡過深帶來的性能退化問題。

圖4 快捷連接
恒等殘差塊如圖5(a)所示其輸入的激活和輸出的激活具有相同維度,由三個二維卷積核組成,三個卷積核緊連著BatchNorm對數據進行歸一化處理,最后一個卷積層和前兩個卷積層的不同點在于其沒有在BatchNorm歸一化后直接聯接修正線性單元ReLU激活函數,而是和恒等殘差塊的輸入通過shortcut connections進行整合再使用RuLU進行激活。
隨著網絡結構的深入激活函數輸出的feature map的維度逐漸增大,當輸入輸出的維度不一致時恒等殘差塊不再適用,于是使用圖5(b)所示的卷積殘差塊結構。卷積殘差塊在shortcut connections添加一個卷積核和BatchNorm歸一化將輸出和輸入對齊到相同維度再使用RuLU進行激活處理。

圖5 兩種殘差塊結構
Dropout層是一種常見的正則化方法,在殘差神經網絡中一般應用與全連接層。Dropout每次迭代都會隨機的使網絡輸入節點或者是上層網絡的激活失效,相當于修改了網絡結構,能夠模擬不同網絡結構的神經網絡,提升網絡模型泛化性和魯棒性。為提升模型對變負載軸承故障檢測的泛化性和魯棒性僅在全連接層使用DropOut正則化是不夠的,因此本文模型在卷積層后鏈接一個DropBlock層用以對卷積層的特征圖(feature map)進行隨機失活處理。Golnaz Ghiasi在文獻[14]中認為Dropout正則化在卷積層中僅失活單個元素,而卷積層的特征圖中相鄰位置元素在空間上共享語義信息,網絡仍可以通過其相鄰元素學習到對于特征,因此提出一種新的正則化方法DropBlock,Drop-Block通過按塊丟棄的方式將特征圖中的語義信息成塊失活,通過設置丟棄塊的大小調整網絡性能,當丟失塊被設置為1×1時DropBlock將等效于Dropout。
CNN中使用全連接層將特征圖轉化為特征向量通過softmax層進行分類的方法存在權值參數過多的問題,有些網絡甚至會有多個全連接層,而過多的權值參數會導致網絡訓練慢、過擬合等問題,為解決這一問題作者提出使用全局平均池化代替全連接,通過使用和feature map大小相同的平均池化窗口對整個feature map進行平均池化,一個feature map將輸出一個參數進而從結構上對網絡進行正則化防止過擬合。
本文提出的網絡模型如圖6所示。由殘差單元組conv_x、池化層和分類層相連組成,其中殘差單元組由卷積殘差塊、恒等殘差塊連接組成,每個卷積殘差塊、恒等殘差塊包含兩層卷積核大小為3×3的卷積層。

圖6 網絡結構圖
該網絡模型的輸入是3維數據,維度為(128,128,1)其中128×128為一個軸承樣本小波變換后時頻圖的維度大小,1代表時頻圖是灰度圖的形式。網絡的輸入首先使用卷積核為3×3的DropBlock層對數據進行隨機失活,失活范圍區間設置(0,0.5),不同批次的輸入數據由于失活率是隨機的因此模型具有更強的泛化性和魯棒性。然后經過一個由64個7×7的大卷積核組成的卷積層對輸入數據特征進行提取,同時添加批歸一化層以減少數據分布帶來的影響,在經過一層自動填充的池化尺寸為3×3均值池化層。然后經過4層殘差單元組,每層殘差卷積組之間使用池化核為3×3的平均池化層連接,最后通過全局平均池化層進行池化運算再通過失活率為0.5的Dropout層和維度為10的Softmax分類器得到故障診斷結果。
具體的參數設置由試驗和故障診斷領域的相關經驗決定,池化層的數量都是和上層的殘差單元層數量保持一致。DropBlock層的丟失塊大小設置3×3保留率在0到0.5之間,Conv2D和均值池化層卷積核大小分別為7×7×64、3×3×64卷積步長均為2×2,Dropout層保留率為0.5。表3詳細給出了每組殘差卷積組的卷積參數設置。

表3 殘差組參數設置
為了驗證本文提出模型中全局平均池化層和隨機失活在相同工況和不同工況下對滾動軸承診斷的影響,在保持其他網絡結構和參數不變的情況下,將使用全局平均池化層和隨機失活的診斷準確度和去除全局平均池化層和隨機失活的診斷準確度進行對比,為保證結果的有效性和準確性對兩種網絡結構均進行5次測試取平均值,對比結果如表4所示。

表4 全局平均池化和DropBlock對網絡模型的影響
從表4中可以看到,在本文模型在相同工況下的準確度均略低于沒有全局平均和隨機失活的網絡模型,平均降低0.11%。但在不同工況交叉驗證的情況下診斷準確率均優于沒有全局平均和隨機失活的網絡模型。從平均診斷準確度上看本文模型也更具優勢。結果表明全局平均池化和隨機失活在犧牲少量準確度的代價下減小了過擬合提高了網絡的泛化性。
為驗證本文提出模型的優越性,分別將本文所提方法在不同工況進行五次訓練及測試,與文獻[15](離散小波變換+CNN,簡稱DWT+CNN)以及文獻[16](數據二維圖像化+LeNet-5,簡稱IMA+LeNet-5)所提方法進行對比,對比結果如表5所示。
從表5中可以看到,本文方法僅在以0hp與3hp進行交叉驗證時準確率分別為89.84%和92.68%,這是由于0hp和3hp樣本數據分布差異過大導致,在其余情況下準確率均在95%以上。DWT+CNN僅在訓練集為1hp交叉驗證0hp時的準確率達到99.58%比本文方法高出0.38%,在其他情況下準確率均低于本文方法。IMA+LeNet-5在所有情況下不同工況下的準確率均低于本文方法,足以驗證本文提出模型的優越性。

表5 經典模型效果對比
本文為解決滾動軸承在不同工況下的故障診斷問題提出了基于小波變換聯合殘差神經網絡的模型結構,利用小波變換將一維數據處理為二維時頻圖,暴露更多時頻特性使網絡更容易提取有效特征,同時對比傳統殘差的網絡模型增添了平均池化層和DropBlock隨機失活減小了過擬合具有更高的泛化性。
但是網絡模型較大導致訓練時間較長,提升不同工況診斷準確率是以犧牲少量相同工況診斷準確率為代價的,同時在數據分布差異較大的情況下準確率并不令人滿意。希望在以后的研究中能簡化網絡模型同時進一步提高在數據分布差異較大的不同工況下的準確率。