凌六一,吳 起, 黃凱文
(1.安徽理工大學人工智能學院,安徽 淮南 232001; 2.安徽理工大學電氣與信息工程,安徽 淮南 232001)
滾動軸承廣泛使用在各種機械設施中[1]。滾動軸承作為機械設備的易損件,其健康程度對機械設施的效率、穩(wěn)定性和工作壽命有極大影響[2]。如果滾動軸承失效,則會加速其他相鄰部件和機器的失效。因此,有必要對其健康狀況進行預測,以防止軸承失效引起的事故。
Hinton于2006a首次提出深度學習相關理論,如今深度學習已被廣泛應用于軸承故障診斷領域[3]。與傳統(tǒng)的診斷方法[4]相比,深度學習不需要診斷經(jīng)驗和大量的信號處理,能提高分類或預測的準確性。在軸承故障診斷領域卷積神經(jīng)網(wǎng)絡能通過不同尺寸的卷積核和池化層來提取不同維度的特征。與傳統(tǒng)的手動特征提取相比,卷積神經(jīng)網(wǎng)絡不需要先驗知識且有更高的準確率。近年來硬件計算能力大幅提高使神經(jīng)網(wǎng)絡的訓練時間大幅下降,一些研究人員使用卷積神經(jīng)網(wǎng)絡進行軸承故障診斷并取得了諸多成果。文獻[5]提出了一種通過原始時間信號進行軸承故障診斷的一維CNN,該CNN在噪聲環(huán)境下表現(xiàn)良好。文獻[6]提出了一種用于軸承故障診斷的自適應分層次深度CNN,將原始時間信號轉換為32×32矩陣作為輸入。文獻[7]提出了一種用于軸承可靠性評估和剩余壽命預測的CNN,將頻域信號轉換為32×32矩陣作為輸入。文獻[8]提出了一種基于卷積神經(jīng)網(wǎng)絡的軸承故障診斷模型,利用短時傅里葉變換將故障信號轉換為時頻圖像。文獻[9]提出了一種基于連續(xù)小波變換的滾動軸承故障診斷的方法。盡管上述方法能夠有效地實現(xiàn)軸承故障診斷,但由于只使用了一種特征提取方法,診斷過程中會丟失故障信號的部分信息。
因此,為了更好地提取故障信號的特征,避免遺漏重要信息、提升模型的故障分類精度,本文提出一種基于多輸入卷積神經(jīng)網(wǎng)絡(multi input convolution neural network,MI-CNN),該方法分別通過短時傅里葉(STFT)和連續(xù)小波變換(CWT)將一維原始振動信號轉化為時頻信號并保存為圖片作為模型的輸入,通過調整模型的超參數(shù),實現(xiàn)軸承故障診斷。
短時傅里葉變換是一種分析方法,它使用帶有時間窗口的傅里葉變換,可以在時間維度上移動,從而在時間和頻率域上提供更好的局域性。STFT是一種針對時變非平穩(wěn)信號的時頻聯(lián)合方法?;具\算公式定義如下
(1)
式中:x(t)為原本的時域信號;h(t-τ)e-j2πft是STFT的窗函數(shù);參數(shù)f是傅里葉變換的頻率,Hz;通過將窗函數(shù)移動,對原信號逐段進行分析。
在任意的空間中的函數(shù),其CWT的定義為
W(a,τ)=[h(t),ψa,τ(t)]=
(2)
(3)
式中:a為尺度因子;τ為平移因子;ψa,τ(t)為小波基函數(shù)。
卷積神經(jīng)網(wǎng)絡通常由輸入層、卷積層、池化層、全連接層和輸出層等構成,分為特征提取和分類兩個階段。在特征提取階段由不同尺寸的卷積核以及不同大小的池化窗口提取不同的特征;分類階段由幾個全連接神經(jīng)網(wǎng)絡和Softmax組成。接下來將介紹各層的基本結構。
1)卷積層 卷積層具有局部連接和權值共享等特點從而極大地減少了參數(shù)的數(shù)量。卷積計算公式為
(4)
式中:hj代表當前卷積層的第j個輸出特征圖;Xi表示前一卷積層的第i個輸出特征圖(當前層的卷積層輸入); *表示進行卷積操作;Wij表示第i層輸入特征映射對應當前第j層輸出特征映射的卷積核;bj表示當前卷積層對應的第j個輸出特征的偏移量, 是一個非線性激勵函數(shù)。 本文的激活函數(shù)選擇ReLU(Rectfied Linear Unit)激活函數(shù), 其公式為
(5)
2)池化層 pooling層也稱為下采樣層。池化層在一定程度上起到更深層次特征的作用。常用的池化方法包括最大池化、平均池化和隨機池化。其中最大池化被廣泛使用。其計算公式為
xj=down(xi)
(6)
式中:xj表示當前池化層第j個輸出特征圖;down(·)表示下采樣操作;xi表示上一層第i個輸出特征圖。
3)全連接層 全連接層由幾個全連接神經(jīng)網(wǎng)絡組成,不同于卷積神經(jīng)網(wǎng)絡,全連接網(wǎng)絡的主要作用就是對數(shù)據(jù)進行降維,通過幾層全連接網(wǎng)絡疊加直到能輸出一個理想維度的數(shù)據(jù)并在最后的輸出層連接一個Softmax分類器。Softmax分類器是分類任務中最常見的分類器。設訓練數(shù)據(jù)集中的輸入樣本為xm,每一個輸入樣本有一個標簽ym且y∈(1,2,…j),分類器試圖估計每個標簽的可能性p(y=j|x),因此可以通過降低目標函數(shù)的損失來訓練Softmax層。其計算公式[10]為
(7)
式中:zi為第i個神經(jīng)元的logits值;M為所需進行分類的種類數(shù)。
4)損失函數(shù) 在每一次訓練集輸入到模型后,就要對模型的參數(shù)進行調整,最常用的方法是利用反向傳播,計算最后一層預測標簽與真實標簽之間的誤差,以此來更新模型內部參數(shù)的權值和偏移量,獲得更小的輸出誤差。誤差計算公式[11]為
(8)
式中:L是損失函數(shù);θ表示權重和偏移量,θ的更新公式為
(9)
式中:η是反向傳播過程中的學習率。
為了充分利用卷積神經(jīng)網(wǎng)絡在處理圖片上的優(yōu)勢,本文使用兩種時頻轉換方法STFT和CWT將原始信號轉化為二維時頻圖像。由于原始一維振動信號長度有限,本文采用重疊采樣擴充數(shù)據(jù)集和避免過擬合,最后可得樣本的數(shù)目為m,m的求取公式[12]為
(10)
式中:L為原始信號總長度;l為單個樣本長度;滑動窗口的步長為。
由于輸入數(shù)據(jù)來自兩種不同的時頻圖,為了加快訓練的速度和提高模型的精度,本文對輸入時頻圖進行歸一化,其計算公式[13]為
(11)
式中:x′為歸一化后的數(shù)據(jù);x為初始數(shù)據(jù);μ為初始數(shù)據(jù)的平均值;σ為初始數(shù)據(jù)的標準差。
為了更加全面的提取軸承故障信號中的特征,本文基于卷積神經(jīng)網(wǎng)絡,批標準歸一化(BN)等技術搭建了一種新的卷積神經(jīng)網(wǎng)絡模型多輸入卷積神經(jīng)網(wǎng)絡(MI-CNN),網(wǎng)絡結構圖如圖1所示。本網(wǎng)絡由輸入層、特征提取層、特征疊加層、分類層組成。輸入層是短時傅里葉和連續(xù)小波變換轉換后的二維時頻圖,兩張時頻圖同時輸入進網(wǎng)絡;特征提取層由兩個通道組成,兩個通道分別提取不同尺度的特征,并通過pooling層進行下采樣,對特征圖進行降維,最后輸出兩個尺寸一樣通道數(shù)不同的特征圖;特征疊加層通過將兩個特征圖在通道數(shù)維度上疊加,方便分類層提取來自不同特征圖的混合特征;分類層由兩個卷積層、兩個池化層、1個全連接層、1個Softmax分類器組成。為了增強模型的泛化性,提高模型的訓練速度,在每一層卷積層和池化層后面添加批標準歸一化層(Batch Normalization,bn)。
圖1 MI-CNN網(wǎng)絡結構圖
本文利用2.2節(jié)搭建的網(wǎng)絡模型實現(xiàn)了軸承的故障診斷,診斷具體流程如圖2所示,具體步驟如下:
圖2 診斷具體流程圖
1)通過2.1節(jié)介紹的方法將原始振動信號處理為兩種時頻圖像,并將兩種時頻圖像混合起來劃分為訓練集和測試集;
2)初始化神經(jīng)網(wǎng)絡的參數(shù),將卷積核、偏置和權值等初始化為一個隨機數(shù),再設置學習率,迭代次數(shù)等超參數(shù);
3)訓練樣本按照提前設置好的數(shù)量傳入網(wǎng)絡進行前向傳播,經(jīng)過分類層后獲得預測值,再計算出預測值與真實值的損失,利用優(yōu)化算法將誤差反向傳播,更新網(wǎng)絡參數(shù);
4)重復步驟3,直到迭代次數(shù)i達到提前設置好的N次,得到訓練好的網(wǎng)絡;
5)將測試集輸入到訓練好的模型,得到診斷結果,完成軸承故障診斷。
實驗數(shù)據(jù)來自東南大學齒輪箱數(shù)據(jù)集[14],實驗平臺為動力傳動系統(tǒng)動態(tài)模擬平臺,由齒輪箱、電機、制動控制器等組成。通過加速度傳感器采集多種運行狀態(tài)下的軸承信號。
本節(jié)所使用的數(shù)據(jù)是在轉速為20Hz(1 200rpm)-無負載0V(0Nm)下采集到的。共有5種軸承故障種類:滾珠故障(BF)、無故障(NO)、內圈故障(IF)、外圈故障(OF)和內外圈混合故障(CF),分別標記為0~4。每個樣本選取1 024個采樣點,利用2.1節(jié)所述方法將其轉換為時頻圖,每類樣本共500個樣本(其中400個為訓練集,100個為測試集),具體如表1所示。
表1 數(shù)據(jù)集具體組成
在本文提出的模型中CWT通道采用尺寸較大的卷積核,STFT通道采用較多的通道數(shù),經(jīng)過多次實驗,最終確定模型參數(shù)如表2所示。此外模型的超參數(shù)設置如下:學習率設為0.005;訓練輪數(shù)為50;每輪64個樣本隨機打亂抽取為一批;優(yōu)化算法選取Adam優(yōu)化算法。
表2 模型具體參數(shù)
為了充分驗證本文提出的模型在東南大學軸承數(shù)據(jù)集上的診斷效果,采用五折交叉驗證的方法將數(shù)據(jù)集隨機抽取分為5份,每次選取1份作測試集,剩下4份作訓練集,每次做5次試驗,一共做了25次試驗,試驗結果如圖3所示。
圖3 試驗結果
從圖3可知,試驗準確率最高可達100%,最低為99.2%,平均值為99.6%。圖4為其中一次訓練過程準確率曲線,由圖4可知,在第2輪測試集準確率就已經(jīng)達到90%以上,在第8輪測試集已經(jīng)收斂,且未出現(xiàn)過擬合現(xiàn)象,說明本文提出的模型取得了不錯的故障診斷效果。
圖4 訓練過程準確率曲線
由于本文提出的模型是利用STFT通道和CWT通道來分別提取原始信號不同維度的特征,本節(jié)主要利用以下幾種方法來與本文提出的方法進行對比:方法1為本文提出的方法MI-CNN;方法2為只使用CWT對原始信號進行轉換;方法3為只使用STFT對原始信號進行轉換;方法4為使用普通2D-CNN進行故障診斷;方法5為使用MLP(Multilayer Perceptron)對原始1D信號進行故障診斷。 圖5為5種方法訓練過程準確率曲線,為保證實驗的公平性, 方法2(CWT-CNN)、 方法3(STFT-CNN)、方法4(2D-CNN)模型的深度和卷積核參數(shù)都與方法1(MI-CNN)一樣。 由圖5可知, 方法1收斂速度最快, 準確率最高可達100%且穩(wěn)定性最好;方法2的效果次之,收斂速度不如方法1; 方法3準確率先升高再降低, 效果一般; 方法4比較穩(wěn)定, 但診斷效果不如方法1和方法2; 方法5(MLP)由于是對1D信號進行診斷, 沒有進行處理包含很多噪聲, 所以模型一直無法收斂。
圖5 對比分析結果
為了更加直觀地體現(xiàn)本文所提出的方法在提取軸承故障特征上的優(yōu)越性,將采用t-SNE技術對方法1~5進行可視化分析。首先將5個模型分別訓練至收斂并保存訓練好的模型參數(shù),再將訓練好的模型最后一層的數(shù)據(jù)通過t-SNE技術[15]進行特征降維并可視化,各模型可視化結果如圖6所示。
圖6 可視化結果
圖6中(a)為未經(jīng)過模型的輸入層特征,(b)~(f)為方法1至方法5的輸出層特征。由圖6(a)可知,未經(jīng)特征提取的輸入層5種故障信號的特征分布沒有規(guī)律且混在一起無法有效地進行故障診斷;由圖6(b)可知,經(jīng)過5種方法進行特征提取后,方法1明顯地將故障信號分為5類,OF和BF兩類故障特征較其他幾種特征之間的距離更近,說明OF和BF故障特征很相似;由圖6(c)可知,方法2能將5種故障大致地分清,但NO和CF故障之間距離過短,在實際診斷過程中可能會出現(xiàn)誤判;由圖6(d)可知,方法3能將NO、CF、IF故障明顯分清,但BF和OF故障特征仍混在一起;由圖6(e)可知,IF、CF、NO故障特征分散不夠聚集,OF和BF故障混在一起無法有效地進行故障診斷;由圖6(f)可知,方法5特征提取效果不佳,無法有效地進行故障診斷。綜上所述方法1在提取故障特征上相比于其他4種方法能使5種故障特征明顯分離且相同故障間更加聚集,所以能更好地進行下一步的故障分類。
本文提出了一種基于多輸入卷積神經(jīng)網(wǎng)絡的軸承故障診斷方法(MI-CNN),通過實驗表明相較于單獨使用STFT和CWT以及其他傳統(tǒng)故障診斷方法,MI-CNN的收斂速度最快且故障診斷準確率均值為99.6%,驗證了本文方法的準確性和在提取軸承振動信號特征上的優(yōu)越性。所提方法克服了使用單一時頻轉換方法所帶來的特征丟失問題。
本文方法僅使用了一種位置的軸承信號,而不同位置上采集到的軸承信號所包含的信息不同,在今后的研究中可將不同位置采集到的軸承信號結合提高軸承故障診斷效果。