齊洪方,黃定洪
(1.武漢華夏理工學院 智能制造學院,湖北 武漢 430223;2.武漢理工大學 機電工程學院, 湖北 武漢 430070)
滾動軸承作為旋轉(zhuǎn)機械設(shè)備的關(guān)鍵零部件,其健康狀態(tài)直接影響設(shè)備整體運行的安全性和可靠性。有數(shù)據(jù)統(tǒng)計顯示,由于軸承發(fā)生故障導致機械設(shè)備不能正常運行的比例約為30%[1]。因此,研究一種高效、穩(wěn)定、可靠的軸承故障診斷方法尤為重要。傳統(tǒng)的故障診斷方法大多采用傅里葉變換[2]、小波變換[3]、經(jīng)驗?zāi)B(tài)分解[4]等信號處理技術(shù)[5,6],對故障振動信號進行人為特征提取和特征選擇,然后輸入到分類器中進行故障分類,依賴于一定的信號處理技術(shù)和專家經(jīng)驗。
深度置信網(wǎng)絡(luò)(DBN)作為經(jīng)典的深度學習算法之一,具有強大的自適應(yīng)特征提取能力和非線性數(shù)據(jù)處理能力,可直接對原始時域振動信號進行數(shù)據(jù)處理[7],因而被廣泛應(yīng)用于飛機發(fā)動機[8]、滾動軸承[9]、齒輪[10]等的故障診斷中。
由于結(jié)構(gòu)參數(shù)選擇是否合理對DBN特征提取起著至關(guān)重要的作用,在當前的研究中,對于DBN模型各隱含層神經(jīng)元個數(shù)以及反向微調(diào)學習率的選擇,大多是根據(jù)經(jīng)驗人為進行的選擇?;旌贤芴惴?SFLA)是一種基于群體協(xié)同搜索啟發(fā)式算法,其結(jié)合了模因算法和粒子群優(yōu)化算法(particle swarm optimization,PSO)的優(yōu)點[11],具有全局搜索能力強、收斂速度快、易跳出局部極值點等優(yōu)點。
基于以上原因,本文提出一種基于改進的SFLA優(yōu)化DBN故障診斷模型,并將其應(yīng)用于滾動軸承的故障診斷中。
在結(jié)構(gòu)上,DBN是由多個受限玻爾茲曼機(restricted boltzmann machine,RBM)堆疊而成的多隱含層神經(jīng)網(wǎng)絡(luò)模型。
DBN模型結(jié)構(gòu)如圖1所示。
圖1 DBN模型結(jié)構(gòu) v—輸入層;h1—第一隱含層;h2—第一隱含層;h3—第三隱含層;output—輸出層即Soft-max分類器;v—可視層神經(jīng)元;h—隱含層神經(jīng)元
DBN的結(jié)構(gòu)參數(shù)主要包括:輸入層神經(jīng)元個數(shù)、輸出層神經(jīng)元個數(shù)、反向微調(diào)算法學習率、算法迭代次數(shù),以及RBM1、RBM2和RBM3隱含層神經(jīng)元個數(shù)。
DBN訓練的過程分為兩個階段:(1)由低層到高層的RBM無監(jiān)督逐層預(yù)訓練過程;(2)由高層到低層的反向微調(diào)學習過程。
針對SFLA算法在實際應(yīng)用中存在早熟收斂的現(xiàn)象,ZHANG等人[12]將PSO算法中“個體認知”能力應(yīng)用到SFLA中,從而達到改善SFLA認知行為的目的。
改進后的混合蛙跳算法(ISFLA)更新規(guī)則如下式所示:
s=r1(Ub-Uw)+r2(Ug-Uw)
(1)
式中:r1,r2—[0,1]之間的隨機數(shù);Uw—局部最差蛙;Ub—局部最優(yōu)蛙;Ug—全局最優(yōu)蛙。
跳躍步長的計算如下式所示:
(2)
式中:S—跳躍步長。
更新后的青蛙可表達為:
(3)
ISFLA是一種基于種群的啟發(fā)式算法,因此,初始種群的好壞對算法的搜索性能極其重要。當初始種群在可行域中分布不均勻時,將導致算法的搜索范圍受到一定的限制,從而降低算法的全局搜索能力。因此,本文采用正交設(shè)計來初始化青蛙種群[13]。
根據(jù)文獻[14]中給出的參考范圍,ISFLA參數(shù)選取如表1所示。
表1 ISFLA參數(shù)列表
為了保證青蛙族群的多樣性,防止陷入局部最優(yōu),筆者在隨機選擇q只青蛙構(gòu)建子族群Msub時,對適應(yīng)度值較大的青蛙賦予較大的權(quán)重,適應(yīng)度值較小的青蛙賦予較小的權(quán)重。
權(quán)重比例分配如下式所示:
(4)
式中:n—青蛙族群個數(shù);pj—第j只青蛙的權(quán)重比列。
筆者利用ISFLA對DBN各隱含層神經(jīng)元個數(shù)和Adam優(yōu)化算法學習率進行參數(shù)尋優(yōu),以提高模型的故障診斷性能。
基于ISFLA優(yōu)化DBN的軸承故障診斷模型如圖2所示。
該模型主要分為3個步驟:振動故障信號采集、故障特征提取和故障識別。
具體過程為:
(1)振動故障信號采集。利用加速度傳感器對故障設(shè)備進行振動信號采集,并按照一定的采樣步長進行樣本采樣。為消除變量之間的量綱和數(shù)量級的影響,對樣本進行數(shù)據(jù)預(yù)處理,然后將樣本按照一定的比列劃分為訓練集、驗證集和測試集;
(2)故障特征提取。首先,將訓練集和驗證集數(shù)據(jù)輸入到經(jīng)ISFLA優(yōu)化的DBN模型中進行訓練,使得各隱含層間的連接權(quán)重和偏置達到最優(yōu)狀態(tài),提高DBN從原始時域信號中的自適應(yīng)特征提取能力,從而達到降低訓練損失誤差和提高訓練精度的目的;然后,將測試集數(shù)據(jù)輸入到模型中進行故障特征提??;
(3)故障識別。將DBN最后一個隱含層提取到的特征向量輸入到Soft-max分類器中進行故障分類,并將分類結(jié)果與期望輸出(標簽數(shù)據(jù))進行比較,得到故障識別精度,并將結(jié)果進行可視化處理。
為驗證模型的有效性,本文采用美國凱斯西儲大學軸承數(shù)據(jù)集[15]進行實驗驗證。
實驗臺如圖3所示。
圖3 軸承實驗臺
圖3中,主要包括一個驅(qū)動電機、一個負載電機、加速度傳感器和扭矩傳感器。其中,加速度傳感器固定在驅(qū)動電機軸承上方的電機外殼上,采樣頻率為12 kHz。
筆者選取轉(zhuǎn)速為1 797 r/min、負荷為1 hp和轉(zhuǎn)速為1 772 r/min、負荷為2 ph兩種工況,對包括軸承內(nèi)圈輕微故障、軸承內(nèi)圈中度故障、軸承內(nèi)圈嚴重故障、軸承外圈輕微故障、軸承外圈中度故障、軸承外圈嚴重故障、滾動體輕微故障、滾動體中度故障、滾動體嚴重故障,以及正常軸承狀態(tài)共10種故障類型的數(shù)據(jù)分別進行實驗研究;
取400個采樣點為一個樣本長度,每種工況取150個樣本,則每種故障類型共有300個樣本,10種故障共3 000個樣本,按照3 ∶1 ∶1的比例劃分為訓練集S、驗證集V和測試集T。
該實驗主要分為3個層次:(1)選取未優(yōu)化的DBN模型與ISFLA-DBN模型進行對比;(2)選取以BP為代表的淺層網(wǎng)絡(luò)與ISFLA-DBN模型進行對比;(3)選PSO-DBN與ISFLA-DBN模型進行對比。
具體如下:
(1)ISFLA-BP模型
利用ISFLA對三層BP神經(jīng)網(wǎng)絡(luò)進行參數(shù)優(yōu)化,由輸入樣本數(shù)據(jù)的維數(shù)以及滾動軸承故障類別可知:BP神經(jīng)網(wǎng)絡(luò)輸入層和輸出層神經(jīng)元個數(shù)分別為400和10;利用ISFLA對BP神經(jīng)網(wǎng)絡(luò)中隱含層神經(jīng)元個數(shù)n和學習率η進行參數(shù)優(yōu)化,得到的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為:400-164-10,學習率為0.038 425 5。
(2)DBN模型
采用逐級遞減的方式[16]來確定DBN的結(jié)構(gòu)參數(shù),即后一層神經(jīng)元個數(shù)小于前一層神經(jīng)元個數(shù);由輸入樣本數(shù)據(jù)的維數(shù)、滾動軸承故障類別,以及逐級遞減方式,可以確定DBN模型結(jié)構(gòu)為:400-300-200-100-10,Adam算法學習率為0.001。
(3)PSO-DBN模型
利用PSO算法[17]對DBN模型中各隱含層神經(jīng)元個數(shù),以及Adam算法學習率進行參數(shù)尋優(yōu),得到DBN的模型結(jié)構(gòu)為:400-812-558-422-10,Adam優(yōu)化算法學習率為3.698e-4。
(4)ISFLA-DBN模型
利用ISFLA對DBN模型各隱含層神經(jīng)元個數(shù),以及Adam優(yōu)化算法學習率進行參數(shù)尋優(yōu),得到DBN的模型結(jié)構(gòu)為:400-956-628-384-10,Adam算法學習率為8.634e-4。
3.3.1 DBN與ISFLA-DBN對比分析
在訓練集和驗證集上,DBN和ISFLA-DBN模型的準確率變化曲線如圖4所示。
圖4 準確率變化曲線圖
由圖4可知:在驗證集上,ISFLA-DBN模型的準確率、擬合效果以及算法趨于穩(wěn)定時所需的迭代次數(shù)均優(yōu)于DBN模型。
損失誤差變化曲線如圖5所示。
圖5 損失誤差變化曲線圖
由圖5可知:在驗證集上,ISFLA-DBN模型的損失誤差要遠低于DBN模型,即采用ISFLA對DBN結(jié)構(gòu)參數(shù)進行優(yōu)化,可有效提高模型的故障診斷性能。
3.3.2 ISFLA-DBN逐層特征提取能力
由于滾動軸承樣本數(shù)據(jù)集和ISFLA-DBN模型中每一隱含層提取到的特征維數(shù)較高,不利于可視化觀察。為了便于進一步評估ISFLA-DBN模型特征提取能力,筆者對樣本數(shù)據(jù)集和ISFLA-DBN模型中各隱含層的輸出數(shù)據(jù),利用t分布隨機近鄰嵌入流形學習算法,進行降維可視化操作。
原始數(shù)據(jù)可視化特征圖如圖6所示。
圖6 原始數(shù)據(jù)可視化特征圖
由圖6可知:10種故障信號的特征相互交錯,無法進行故障分類。
第一隱含層可視化特征圖如圖7所示。
圖7 第一隱含層可視化特征圖
由圖7可明顯看出:經(jīng)第一隱含層RBM1特征提取之后,10種故障信號由最初混亂無序的狀態(tài)開始有效地聚集到一起。
第二隱含層可視化特征圖如圖8所示。
圖8 第二隱含層可視化特征圖
由圖8可知:經(jīng)過第二隱含層RBM2特征提取之后,10種故障信號基本上全部剝離開來。
第三隱含層可視化特征圖如圖9所示。
圖9 第三隱含層可視化特征圖
由圖9可知:經(jīng)過第三隱含層RBM3特征提取之后,除了極少部分的數(shù)據(jù)出現(xiàn)重疊現(xiàn)象之外,在整體上已經(jīng)達到了很好的特征提取效果。
綜上可知,ISFLA-DBN模型能夠有效地對原始時域振動信號集進行故障特征提取,避免了傳統(tǒng)故障診斷方法人為特征提取的弊端,使得診斷過程更加智能化。
3.3.3 ISFLA-BP、DBN、PSO-DBN和ISFLA-DBN對比分析
4種模型在訓練集上的故障分類準確率變化曲線的對比如圖10所示。
圖10 準確率變化曲線圖
由圖10可知:ISFLA-DBN、PSO-DBN和DBN3種模型在訓練集上的故障分類準確率都能達到99%以上;其中,ISFLA-DBN的收斂速度最快,算法趨于穩(wěn)定時所需的迭代次數(shù)最少;ISFLA-BP模型在訓練集上的故障分類準確率最高只有92%左右,且算法趨于穩(wěn)定時需要迭代250次左右。
損失誤差變化曲線如圖11所示。
圖11 損失誤差變化曲線圖
由圖11可知:ISFLA-DBN在訓練集上的損失誤差最小,PSO-DBN的損失誤差次之,ISFLA-BP的損失誤差最大。
在驗證集上,4種模型故障分類準確率和訓練時間的10次運行結(jié)果平均值如表2所示。
表2 10次運行結(jié)果
由表2可知:
(1)ISFLA-DBN在驗證集上的故障分類準確率平均值最高(98.57%),略高于PSO-DBN(97.32%),高于DBN(93.19%)和ISFLA-BP(82.93%);
(2)由于ISFLA-DBN網(wǎng)絡(luò)結(jié)構(gòu)最為復(fù)雜,其訓練時間要遠大于DBN和ISFLA-BP,略高于PSO-DBN。
3.3.4 ISFLA-DBN模型泛化性能分析
為進一步評估ISFLA-DBN模型的泛化性能,即檢驗?zāi)P驮谖粗獢?shù)據(jù)集上的故障分類準準確率,筆者將測試集數(shù)據(jù)T輸入到經(jīng)訓練集和驗證集數(shù)據(jù)訓練好的ISFLA-DBN模型中,分別進行故障分類,并將測試集診斷結(jié)果以混淆矩陣表示,如圖12所示。
圖12 測試集故障分類混淆矩陣圖
由圖12可知:ISFLA-DBN模型在測試集上的平均準確率為97.96%。
其中,正常軸承和內(nèi)圈嚴重故障識別準確率達到100%,外圈中度故障、內(nèi)圈輕微故障、滾動體輕微故障以及滾動體嚴重故障識別準確率達到99%以上,外圈輕微故障和內(nèi)圈中度故障識別率分別為96.30%和95.56%,外圈嚴重故障和滾動體中度故障識別率較低,分別為94.81%和94.44%。
由此可見,ISFLA-DBN模型在未知數(shù)據(jù)集上的泛化性能較好,具有一定的工程應(yīng)用價值。
本文針對傳統(tǒng)故障診斷方法依賴于一定的專家經(jīng)驗和信號處理技術(shù),以及DBN參數(shù)選擇困難等問題,提出了一種基于ISFLA優(yōu)化DBN的故障診斷方法,筆者采用該方法,并利用ISFLA全局搜索能力強、收斂速度快、易跳出局部極值等優(yōu)點,對DBN結(jié)構(gòu)參數(shù)進行了尋優(yōu)。
實驗及研究結(jié)果表明:
(1)相對于淺層BP神經(jīng)網(wǎng)絡(luò)故障識別精度的平均值,ISFLA-DBN模型故障識別精度的平均值高出15.64%,相對于未優(yōu)化DBN模型故障識別精度的平均值高出5.38%,相對于PSO-DBN模型故障識別精度的平均值高出1.25%;
(2)ISFLA-DBN模型的收斂速度最快、擬合效果最好,在未知數(shù)據(jù)集上具有很好的泛化性能。