張 弛
(上海交通大學機械與動力工程學院,上海 200240)
滾動軸承作為旋轉機械設備的關鍵部位,以其為對象進行故障診斷一直是研究的熱點。當滾動軸承發(fā)生故障時,故障引起的脈沖會周期性重復出現(xiàn),其重復頻率被稱為軸承故障特征頻率。通過信號處理技術,可以把振動信號中與故障相關的特征提取出來,由提取出的故障特征可以實現(xiàn)對軸承的故障診斷[1]。
目前,常用的信號處理技術主要有兩類:一類是以快速傅里葉變換為基礎的傳統(tǒng)信號處理方法,主要包括功率譜分析、小波分析[2]、經(jīng)驗模態(tài)分解法[3]等;另一類是以機器學習為代表的智能診斷技術,主要包括主成分分析(PCA)[4]、支持向量機(SVM)[5]、基于遺傳算法的神經(jīng)網(wǎng)絡[6]、深度卷積神經(jīng)網(wǎng)絡(CNN)[7]等。傳統(tǒng)信號處理方法往往需要大量先驗知識,對故障機理有深入了解,且需要大量工程實踐作為輔助支持;智能診斷技術對數(shù)據(jù)本身特征進行提取,無需對故障機理進行深入研究,但是存在計算量大、耗時長等問題。
隨著深度學習理論的日益成熟及計算機算力的提升,深度卷積神經(jīng)網(wǎng)絡在故障診斷上有了廣泛的應用。李思琦等[8]應用集合經(jīng)驗模態(tài)分解對滾動軸承振動信號進行分解重構,隨后將重構后的信號帶入卷積神經(jīng)網(wǎng)絡中進行故障診斷。張立智等[9]通過短時傅里葉變換得到信號的時頻圖。將時頻圖輸入到二維卷積神經(jīng)網(wǎng)絡中從而實現(xiàn)對滾動軸承的故障診斷。楊蘭柱等[10]通過對卷積神經(jīng)網(wǎng)絡的卷積層進行改進,將原始信號數(shù)據(jù)作為輸入,對滾動軸承故障診斷進行系統(tǒng)性研究。Li S B等[11]將多傳感器信號經(jīng)快速傅里葉變換后的特征均方根圖作為卷積神經(jīng)網(wǎng)絡的輸入,并結合改進的D-S理論實現(xiàn)對滾動軸承的故障診斷。上述研究均是對原始數(shù)據(jù)進行預處理或者對網(wǎng)絡結構進行優(yōu)化,需要大量的先驗知識,缺乏一定魯棒性。
針對上述不足,本文提出一種基于CNN-SVM的軸承故障診斷方法。該方法只需輸入原始數(shù)據(jù)且只需簡單的網(wǎng)絡結構即可對滾動軸承故障進行準確識別,無需大量先驗知識,具備較好的魯棒性。
卷積神經(jīng)網(wǎng)絡本質(zhì)上是監(jiān)督學習中的多層神經(jīng)網(wǎng)絡模型,主要由卷積層、池化層以及全連接層組成。
卷積層作用主要是通過過濾器對信號的局部區(qū)域進行卷積,隨后生成輸出特征圖。其輸出表達式為:
(1)
池化層又稱降采樣層,主要用來減少冗余特征,降低網(wǎng)絡參數(shù),從而避免過擬合。
全連接層用于進一步提取池化層的輸出特征,將進一步提取得到的特征輸入到Softmax函數(shù)中進行分類。
一般的卷積神經(jīng)網(wǎng)絡結構如圖1所示。
圖1 卷積神經(jīng)網(wǎng)絡結構
支持向量機(SVM)是一種基于小樣本統(tǒng)計理論的算法,主要用來進行分類。通過最大化分類超平面和數(shù)據(jù)之間的余量從而找到最優(yōu)分類超平面,如圖2所示。
圖2 最優(yōu)分類超平面
設輸入為xi(i=1,2,...,M),其中M為樣本數(shù)量。針對二分類問題,分類標簽y∈{-1,+1}。在線性數(shù)據(jù)的情況下可以確定能分離給定輸入數(shù)據(jù)的超平面f(x)=0。
f(x)=wTx+b=0
(2)
式中,w是M維權重向量,b是偏置標量。w和b決定了超平面與原點之間的距離。通過求解下述最優(yōu)化問題從而實現(xiàn)不同類之間的距離最大化,即:
(3)
對于線性不可分問題,引入松弛變量εi≥0和懲罰因子C,從而過渡到軟間隔支持向量機:
(4)
基于卷積神經(jīng)網(wǎng)絡具有強大的特征提取能力且支持向量機具有高效的分類能力。本文提出一種基于CNN-SVM的自適應提取特征的滾動軸承故障診斷模型,利用卷積神經(jīng)網(wǎng)絡中卷積核池化操作對原始的數(shù)據(jù)進行特征的學習及提取,這些特征能夠最大化的表征原始數(shù)據(jù),隨后將提取出后的特征即全連接層的結果作為支持向量機的輸入并對其進行分類,從而實現(xiàn)滾動軸承的故障診斷。
本文基于CNN-SVM的故障診斷模型具體參數(shù)如圖3所示。將原始數(shù)據(jù)轉換成32×32的矩陣作為輸入,第一層卷積層由1個大小為3×3的卷積核組成,第二層卷積層由8個大小為3×3的卷積核組成,池化層大小為2×2。
圖3 CNN-SVM模型結構及參數(shù)
為驗證本文所提方法的可行性,本文采用美國凱斯西儲大學的滾動軸承數(shù)據(jù)中心的軸承振動數(shù)據(jù)進行實驗驗證。試驗臺由一個2 hp的三相感應電動機軸承和一個測力計組成,該測力計用于產(chǎn)生額定負載,其風扇端和驅(qū)動端各有一個型號為SKF-6205-2RS的軸承,振動傳感器放在驅(qū)動端進行振動信號采集。故障類型分別為內(nèi)圈故障、外圈故障及滾動體故障,每種故障尺寸分別有0.007 in、0.014 in、0.021 in與0.028 in,電機負載為0~3 hp。
本文取負載為0 hp且故障尺寸分別為0.007 in、0.014 in、0.021 in的內(nèi)圈、外圈、滾珠故障及正常數(shù)據(jù)共十類數(shù)據(jù),每種故障類型取1000個樣本,則共能得到10 000個樣本。每類數(shù)據(jù)取1024個點,并將其尺寸轉換成32×32的樣本圖作為CNN-SVM模型的輸入,按照7:2:1的比例劃分訓練集、測試集和驗證集。具體參數(shù)如表1所示。
表1 實驗數(shù)據(jù)參數(shù)
(1)特征提取可視化
利用卷積神經(jīng)網(wǎng)絡對每種故障中的每個樣本進行自適應的故障特征提取,然而卷積神經(jīng)網(wǎng)絡相當于一個黑箱子,為了進一步對卷積神經(jīng)網(wǎng)絡特征提取能力進行分析,本文采用流形學習中常用的t-SNE技術對CNN輸出層即特征提取結果進行降維可視化。如圖4、圖5所示,圖4為原始樣本分布。從圖4可以看出原始數(shù)據(jù)分布雜亂無章,無法通過原始數(shù)據(jù)對不同故障進行分類。圖5為經(jīng)過CNN提取特征后的樣本分布。
圖4 原始數(shù)據(jù)可視化結果 圖5 CNN提取特征后可視化結果
可以看出,雖然樣本數(shù)據(jù)仍有部分誤分類,但是相同故障樣本已經(jīng)明顯地聚集在一起,得到10個樣本群,相比原始數(shù)據(jù)更利于分類。由此可見,CNN能通過卷積和池化操作同時進行降噪及特征提取的功能。
(2)基于CNN-SVM模型診斷結果
基于卷積神經(jīng)網(wǎng)絡提取出原始數(shù)據(jù)特征后,利用支持向量機算法對提取出的特征進行分類。SVM本身是一個二值分類器,在解決多分類問題時往往有兩種方法。第一類是直接法,直接法是指直接對目標函數(shù)進行修改,將多個分類面的參數(shù)求解問題合并到一個最優(yōu)化問題中,通過求解該最優(yōu)化問題實現(xiàn)一次性多分類,但是該方法計算復雜度高,往往只適用于小樣本數(shù)據(jù),因此本文采用第二種方法:間接法。間接法是指通過組合多個二分類器來實現(xiàn)多分類器的構造,常見的方法有一對多(OVR)及一對一(OVO)法,本文采用一對一法進行分類。
表2為訓練集、測試集及驗證集的準確率,由表2可知,CNN-SVM模型能精準地對該滾動軸承故障進行診斷。表3為測試集中CNN-SVM模型對每一類故障的診斷結果。由表3可知,該模型能對每一類模型做到精準分類,除了對第一類故障識別準確率為96.00%及第5類故障識別準確率為78.22%,其它故障準確率均為100%。圖6為該模型識別結果的混淆矩陣。由表2、表3及圖6可得該模型對軸承故障診斷具有很高精確度。
表2 分類準確率
表3 測試集中每種故障分類準確率
續(xù)表
圖6 CNN-SVM模型分類結果混淆矩陣
(3)與其他模型結果對比
將本文提出的CNN-SVM診斷模型與以下4個模型進行對比:
①原始數(shù)據(jù)+SVM
②原始數(shù)據(jù)+決策樹
③原始數(shù)據(jù)+CNN
④原始數(shù)據(jù)+CNN特征提取+決策樹
表4為CNN-SVM模型與上述4個模型測試集上故障分類的準確率對比結果。由表可知,用CNN對原始數(shù)據(jù)進行自適應特征提取后的故障分類準確率均高于直接用原始數(shù)據(jù)進行故障分類準確率,且本文提出的CNN-SVM模型準確率高于其它4種模型。
表4 模型測試集故障分類準確率對比
針對滾動軸承故障診斷提出基于CNN-SVM的滾動軸承故障診斷模型,并以凱斯西儲大學滾動軸承數(shù)據(jù)為對象進行試驗驗證。經(jīng)過該模型對實測數(shù)據(jù)的診斷結果表明,CNN-SVM模型能自適應地對滾動軸承故障特征進行提取且能夠很好地對故障特征進行分類,且分類準確度高于其它常見故障診斷模型,由于該模型基于數(shù)據(jù)驅(qū)動,具有很強的魯棒性,因此可以應用于各類滾動軸承故障診斷中,具有一定現(xiàn)實意義。