彭啟明,邵 星,,王翠香,皋 軍
(1.鹽城工學院 機械工程學院;2.鹽城工學院信息工程學院,江蘇鹽城 224051)
軸承是機械設(shè)備的核心部件,直接關(guān)系其性能發(fā)揮。軸承故障輕則導致整機失效,降低生產(chǎn)效率,重則導致人員傷亡。軸承故障診斷可根據(jù)診斷結(jié)果及時提出解決方案,保證機械正常運行,減少或消除機械故障事故。現(xiàn)階段主流的軸承故障診斷方法分為基于特征工程的方法和基于深度學習的方法兩種?;谔卣鞴こ痰姆椒ㄖ饕ㄟ^對輸入信號進行頻譜分析(Frequency Analysis)、經(jīng)驗?zāi)B(tài)分析(Empirical Mode Decomposition,EMD)、小波變換(Wavelet Transform,WT)等處理后提取得到特征,再使用基于機器學習的分類模型,如人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks,ANN)、支持向量機(Support Vector Machine,SVM)、隱馬爾可夫模型(Hidden Markov Model,HMM)等對特征進行分類故障診斷。該類方法的特征提取與分類診斷過程分離,過度依賴人工經(jīng)驗,誤差較大。深度學習由于其強大的特征提取能力和端到端的學習特點,能夠直接從原始軸承信號數(shù)據(jù)中提取故障特征并進行分類診斷,打破了特征工程方法的局限性,使得大量學者對其進行深入研究。例如,Tamilselvan 等提出了一種基于深度置信網(wǎng)絡(luò)的故障診斷方法,打開了深度學習在故障診斷領(lǐng)域應(yīng)用的大門,證實了基于深度學習的故障診斷方法的優(yōu)勢;Lu 等提出一種基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的軸承故障診斷方法,雖然具有較高的診斷精度,但模型不夠穩(wěn)定;Zhang 等提出一種一維CNN 的深度學習模型,可以直接對軸承信號進行故障診斷,但該模型需要大量數(shù)據(jù)進行前期學習;曲建嶺等提出一種無需手動提取特征的CNN,但其訓練超參數(shù)過多,導致訓練和診斷成本過高;李嫄源等提出一種SVM 與PSO 相結(jié)合的電機軸承故障診斷方法,但針對復(fù)雜的軸承分類問題容易陷入過擬合且泛化能力較差;宮文峰等提出一種改進CNN 的軸承故障診斷方法,準確率達99.04%,但無法在小數(shù)據(jù)集上進行診斷。由于軸承大多時候處于正常運轉(zhuǎn)狀態(tài),真實故障數(shù)據(jù)樣本難以大量獲取,上述基于深度學習的軸承故障診斷方法雖然在一定條件下可取得較好效果,但在小樣本、低開銷的情況下,模型的穩(wěn)定性、泛化性、魯棒性仍需進一步提升。
深度森林(Deep Forest)模型在小規(guī)模數(shù)據(jù)集上的性能優(yōu)于其他深度學習模型,且其超參數(shù)較少、計算開銷較小。因此,本文基于深度森林模型,提出一種深度梯度下降森林(Deep SGD-Forest,DSGDF)模型用于軸承故障診斷。實驗結(jié)果表明,該模型不僅繼承了深度森林模型魯棒性強、泛化性好、超參數(shù)較少等優(yōu)點,還避免了級聯(lián)結(jié)構(gòu)收斂速度慢的缺陷,實現(xiàn)了小樣本條件下高精度、低開銷的有效診斷。
2017 年,Zhou 等首次提出深度森林模型,該模型由級聯(lián)森林結(jié)構(gòu)與多粒度掃描結(jié)構(gòu)兩部分組成,核心思想為對隨機森林算法進行集成。其借鑒了深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)中的逐層結(jié)構(gòu)(Layer-by-Layer),對前一層輸入的樣本數(shù)據(jù)和輸出結(jié)果數(shù)據(jù)進行拼接操作后作為下一層的輸入數(shù)據(jù)。深度森林模型結(jié)構(gòu)簡單、計算開銷小,模型復(fù)雜度可自適應(yīng)伸縮,具有較強的魯棒性,在金融、醫(yī)學、交通運輸、軍事等領(lǐng)域均有應(yīng)用,且針對不同數(shù)據(jù)類型均取得了較好的實驗效果。
DSGDF 模型是基于深度森林模型改進而來,在繼承了深度森林較少超參數(shù)、小樣本學習、魯棒性強、泛化性好等優(yōu)點的基礎(chǔ)上,通過集成梯度下降算法改善了級聯(lián)結(jié)構(gòu)收斂速度慢的問題,使得計算和優(yōu)化開銷變小。
1.2.1 梯度下降算法
梯度下降算法是一種優(yōu)化算法,其在訓練數(shù)據(jù)時具有降低模型損失、提高訓練速度和算法收斂速度等優(yōu)點,表示為:
α
為第n 次迭代學習率,α 為首次學習率,μ
為衰減率,λ
為第n
次迭代學習步數(shù),λ
為總學習步數(shù)。1.2.2 多粒度掃描結(jié)構(gòu)
多粒度掃描是增強表征學習能力的結(jié)構(gòu)。原始樣本數(shù)據(jù)通過不同尺度的小窗口進行掃描,從而實現(xiàn)特征轉(zhuǎn)換,最終得到具有多樣性的表征向量。
為應(yīng)對軸承數(shù)據(jù)的固有特點,本文采用序列掃描的方式,過程如圖1 所示。原始輸入為A
dim 樣本,使用B
dim、步長為1 的小窗口進行滑動采樣。通過一系列特征轉(zhuǎn)換后得到C
=(A
-B
)∕1+1個B
dim 特征子樣本向量。將其送入梯度下降森林和完全隨機森林中訓練后得到每個森林的一個C
*E
的表征向量,最后將圖中每層森林產(chǎn)生的表征向量拼接在一起,得到最終樣本輸出并送入級聯(lián)森林結(jié)構(gòu)中進行運算。1.2.3 級聯(lián)森林結(jié)構(gòu)
Fig.1 Multi-grained scanning process of mechanical bearing data圖1 機械軸承數(shù)據(jù)多粒度掃描過程
Fig.2 Comparison of DSGDF model and deep forest model圖2 深度梯度下降森林模型與深度森林模型比較
k
指k
個類別,p
為第k
個類別的概率,Gini
(p
)為基尼系數(shù)。基尼系數(shù)為該節(jié)點的判別依據(jù),直到每個葉子節(jié)點只包含同一類實例后停止運算。然而,相關(guān)實驗表明級聯(lián)森林的收斂速度較慢。針對該問題,DSGDF 模型集成梯度下降算法,使級聯(lián)森林的每一層都由5個完全隨機森林和5個梯度下降算法組成,如圖2 右所示。為防止最后產(chǎn)生的結(jié)果發(fā)生過擬合現(xiàn)象,需經(jīng)過K 折交叉驗證處理后輸入到下一層。當級聯(lián)森林結(jié)構(gòu)擴展到新的層級后,之前所有級聯(lián)結(jié)構(gòu)的效果將通過驗證集評估,當評估結(jié)果無法得到進一步提升時則會自動結(jié)束訓練過程。因此,級聯(lián)森林結(jié)構(gòu)的層數(shù)與復(fù)雜度由訓練過程自動確定,省去了大量調(diào)參的開銷,提高了收斂速度,可使其結(jié)構(gòu)保持穩(wěn)定收斂狀態(tài)。
1.2.4 算法實現(xiàn)步驟
輸入訓練集T,測試集S,驗證集M,N 為森林中子樹數(shù)目,T1 為多粒度掃描后的訓練集。具體算法步驟為:
采用凱斯西儲大學軸承數(shù)據(jù)集,其數(shù)據(jù)客觀、可信度高,是軸承故障診斷領(lǐng)域公認的標準數(shù)據(jù)集。該數(shù)據(jù)集是以電機、轉(zhuǎn)矩傳感器、功率計、16 通道數(shù)據(jù)記錄儀、6203-2RS JEM SKF∕NTN 深溝球軸承以及電子控制設(shè)備為實驗器械,使用電火花加工技術(shù)人為制造出軸承的故障數(shù)據(jù),包含驅(qū)動端加速度數(shù)據(jù)、風扇端加速度數(shù)據(jù)、基本加速度數(shù)據(jù)和時間序列數(shù)據(jù)。具體參數(shù):軸承直徑包括0.007、0.014、0.021 英尺,電機負載包括0、1、2、3 馬力,電機轉(zhuǎn)速包括1 797、1 772、1 750、1 730rpm(轉(zhuǎn)∕分),還包括軸承內(nèi)圈、外圈、滾動體3 點鐘(直接位于受載區(qū))、6 點鐘(正交與受載區(qū))、12 點鐘(相對于受載區(qū))方向,數(shù)字信號采樣頻率為12KHz、48KHz 的故障數(shù)據(jù)集以及各類各方向軸承的健康數(shù)據(jù)集。
基于DSGDF 的軸承故障診斷流程如圖3 所示。
步驟1:使用凱斯西儲大學軸承數(shù)據(jù)集中采樣頻率為12KHz,電機負載分別為0、1、2 馬力,故障直徑分別為0.007、0.014、0.021 英尺,6 點鐘方向的軸承內(nèi)圈、外圈、滾動體風扇端產(chǎn)生的9 組加速度故障數(shù)據(jù),以及相對應(yīng)的1組軸承健康數(shù)據(jù),共計10 組數(shù)據(jù),10個樣本特征,約300 萬個數(shù)據(jù)點樣本,具體如表1 所示。
Fig.3 Bearing fault diagnosis process based on DSGDF圖3 基于DSGDF 的軸承故障方法診斷流程
Table 1 Experimental data set表1 實驗數(shù)據(jù)集
步驟2:對軸承健康數(shù)據(jù)集進行數(shù)據(jù)增強和降采樣處理,數(shù)據(jù)增強滑動窗口時間長度設(shè)置為2 048∕12 000,數(shù)據(jù)重疊部分比例為50%。將軸承健康數(shù)據(jù)增強為其他故障數(shù)據(jù)的2 倍,再對其進行降采樣、隨機刪減,以防止因故障、健康數(shù)據(jù)不平衡而陷入局部最優(yōu)診斷。然后對所有數(shù)據(jù)進行歸一化和獨熱編碼,得到有標簽的數(shù)據(jù)樣本,并按照7∶2∶1 的比例劃分訓練集、測試集和驗證集。最終得到數(shù)據(jù)增強和0 類數(shù)據(jù)采樣58 577 條,單個數(shù)據(jù)長度為2 048個采樣點,重疊量為2 047,采樣點類別數(shù)目為:[(0,5 864),(1,5 822),(2,5 850),(3,5 864),(4,5 857),(5,5 850),(6,5 878),(7,5 885),(8,5 850),(9,5 857)]。
步驟3:輸入訓練集至DSGDF 的多粒度掃描結(jié)構(gòu),步長設(shè)置為1。通過一系列特征轉(zhuǎn)換后將產(chǎn)生的表征向量拼接在一起,送入級聯(lián)結(jié)構(gòu)進行學習。
步驟4:設(shè)置級聯(lián)結(jié)構(gòu)中每層梯度下降森林和完全隨機森林的森林數(shù)為5,完全隨機森林中子樹數(shù)目為80,計算當前子樹的故障診斷效果并通過投票的方式選出每個森林的最優(yōu)診斷結(jié)果。
步驟5:分別計算當前一層級聯(lián)結(jié)構(gòu)在訓練集上的故障診斷率,模型在驗證集上自動評估是否需要擴展下一層級聯(lián)結(jié)構(gòu),若需要則返回步驟4,若不需要則立即停止訓練。
步驟6:在所有擴展層中找出訓練集上診斷率最高的一層作為訓練集的最終診斷結(jié)果,模型學習結(jié)束。
步驟7:將測試集輸入至DSGDF 模型,循環(huán)步驟3-5,在所有擴展層中找出測試集上診斷率最高的一層,并輸出該層的診斷結(jié)果作為最終軸承故障診斷率。
計算機硬件配置:Intel(R)Core(TM)i7-6700,3.40GHz處理器,16GB 內(nèi)存,8 核CPU。
計算機軟件配置:Windows7 X64 位操作系統(tǒng),Pycharm操作平臺,Python3.5。
如表2 所示,在級聯(lián)森林結(jié)構(gòu)部分設(shè)置5個梯度下降算法和5個完全隨機森林,其中每個森林內(nèi)存在80 顆決策樹,采用2 與10 折交叉驗證。在多粒度掃描結(jié)構(gòu)部分設(shè)定掃描窗口大小為4,數(shù)據(jù)切片步長為1,決策樹數(shù)量為101顆,每個節(jié)點的最小樣本數(shù)設(shè)置為0.1。
Table 2 Construction parameters of DSGDF表2 DSGDF 模型搭建參數(shù)
3.3.1 穩(wěn)定性、泛化性分析
為確保所得數(shù)據(jù)的準確性與合理性,本文實驗均重復(fù)進行10 次后取平均值作為最終結(jié)果?;谔卣鞴こ痰姆椒ú捎梦墨I[23]的特征提取方法后使用機器學習模型,如K 近鄰算法模型(KNN)、隨機森林算法模型(RF)、決策樹算法模型(DT)、樸素貝葉斯多項式算法模型(Bayes)進行分類診斷;基于深度學習的方法,如卷積神經(jīng)網(wǎng)絡(luò)算法模型(CNN)、長短期記憶人工神經(jīng)網(wǎng)絡(luò)(LSTM)、經(jīng)典深度森林模型(DF)和深度梯度下降森林模型(D-SGDF)直接自動提取特征后進行分類診斷。
將軸承數(shù)據(jù)集中0 馬力負載下的9 類故障樣本、1 類健康樣本按照7∶2∶1 的比例劃分成訓練集、測試集和驗證集,采用F1 值進行模型的魯棒性驗證,計算方式為:
F
1 值為精度與召回率的均值,其值為1 時最佳,值為0時最差,越接近1 說明該診斷模型越穩(wěn)健。評價標準見表3。Table 3 F1-score evaluation index parameter表3 F1-Score 評價指標參數(shù)
由圖4 可知,RF 模型在基于特征工程的方法中表現(xiàn)最好,F(xiàn)1 值為0.8,但仍低于基于深度學習的方法。而DSGDF模型憑借其強大的特征提取能力與基于梯度下降樹的原理在10 種不同數(shù)據(jù)集診斷中F1 值均在0.98 以上,說明該模型穩(wěn)定性強,魯棒性好,能適應(yīng)復(fù)雜的軸承故障診斷。
Fig.4 F1 scores of various diagnostic models comparison圖4 各類診斷模型F1 值比較
在實際的機械設(shè)備運行中,軸承負載不一。為準確驗證DSGDF 模型的泛化性能,分別采用0、1、2 馬力負載下的軸承數(shù)據(jù)集進行故障診斷,驗證其在不同負載工況下的故障診斷能力。故障診斷正確率如表4 所示。
由表4 可知,DSGDF 模型對軸承故障診斷的平均正確率為99.35%。為進一步驗證該模型在其他負載條件下的泛化能力,引入負載為1 馬力、2 馬力的軸承數(shù)據(jù)集,進行與0 馬力相同配置的故障診斷試驗。結(jié)果表明,在1 馬力、2馬力負載狀況下,DSGDF 模型的平均故障診斷正確率均達99%以上,具有良好的泛化能力。
3.3.2 故障診斷效果與開銷驗證
選取0 馬力負載下,采樣頻率為12KHz,軸承內(nèi)圈、外圈、滾動體風扇端加速度的9 組故障數(shù)據(jù)以及相對應(yīng)的1組軸承健康數(shù)據(jù),共10 組數(shù)據(jù),10個樣本特征,約300 萬個數(shù)據(jù)點樣本。數(shù)據(jù)預(yù)處理按照“2.2”節(jié)步驟2 進行,得到級聯(lián)結(jié)構(gòu)在訓練集上的學習效果如圖5 所示。可以看出,DSGDF 模型在50 次訓練時準確率達90%以上,在約160 次訓練時準確率達99.58%且收斂維持穩(wěn)定的學習效果。該模型在測試集上的最終診斷效果如圖6 所示,在數(shù)據(jù)集0~9上的診斷率最低為99.32%,最高為99.58%,平均診斷率為99.53%,具有較高的故障診斷精準率。
Table 4 Accuracy of fault diagnosis of different load bearings with DSGDF表4 DSGDF 模型在不同負載下的軸承故障診斷正確率 單位:%
Fig.5 Learning effect of cascade structure on training set圖5 級聯(lián)結(jié)構(gòu)在訓練集上的學習效果
Fig.6 Diagnostic effect of DSGDF method on the test set圖6 DSGDF 模型在測試集上的診斷效果
在診斷開銷方面,為控制單一開銷變量,各模型診斷效果忽略不計。圖7 為各模型診斷300 萬個數(shù)據(jù)點的時間開銷,其中DT 的診斷時間最長,為6h,基于特征工程的方法診斷開銷普遍大于基于深度學習的方法。DSGDF 模型表現(xiàn)出色,診斷開銷最少且相較DF 模型開銷降低了0.73h。
Fig.7 Cost comparison of various diagnostic methods圖7 各類診斷方法開銷比較
3.3.3 小樣本數(shù)據(jù)故障診斷效果驗證
采用4 種不同類型的小樣本平均故障診斷精準率驗證軸承故障診斷方法的性能,結(jié)果如表5 所示?!? 類”表示在訓練模型時有1 類健康樣本和4 類故障樣本,且每類樣本含有1 000個數(shù)據(jù)點,其余依此類推。當使用5 類樣本訓練模型時,KNN、DT 這類基于特征工程的方法診斷正確率最低;基于深度學習的方法,如CNN、LSTM 的診斷正確率嚴重受樣本個數(shù)影響。使用20 類樣本數(shù)據(jù)時,CNN 的診斷正確率相較使用5 類樣本數(shù)據(jù)時提高了25.51%,LSTM 提高了34.00%?;跇涞? 類模型RF、DF、DSGDF 受樣本數(shù)據(jù)影響較小,在小樣本數(shù)據(jù)為5 類時,RF 診斷正確率為83.24%,DF 診斷正確率為93.32%,DSGDF 診斷正確率為98.00%,且DSGDF 在各類小樣本數(shù)據(jù)集診斷中均表現(xiàn)出色。
實驗結(jié)果表明,訓練樣本數(shù)量會在一定程度上影響模型的訓練效果,可能有以下兩個原因:①對于大多數(shù)基于特征工程的方法來說,較少的樣本數(shù)據(jù)會導致其無法多樣性分割信號間隔,精準率不高;②對于大多數(shù)基于深度學習的方法來說,當樣本數(shù)據(jù)較少時,超參數(shù)較多的深度學習方法會產(chǎn)生嚴重的過擬合現(xiàn)象。
Table 5 Accuracy of fault diagnosis for small sample data of various methods表5 各類方法小樣本數(shù)據(jù)故障診斷正確率 單位:%
本文提出一種基于DSGDF 模型的軸承故障診斷方法,其通過集成深度森林模型與梯度下降算法,克服了現(xiàn)階段基于深度學習模型的軸承故障診斷方法超參數(shù)多、診斷開銷大、無法診斷小樣本的短板,為軸承故障診斷提供了新思路。通過理論分析、實驗驗證得出以下結(jié)論:①DSGDF模型所需超參數(shù)較少,平均診斷F1 值在0.98 左右,證明該模型具有良好的魯棒性與穩(wěn)定性;②通過多負載變化實驗以及開銷驗證,發(fā)現(xiàn)DSGDF 模型具有良好的泛化性與小開銷特性;③DSGDF 模型每類診斷只含有1 000個數(shù)據(jù)點,適用于小樣本故障診斷。然而,本文在實驗過程中僅在CPU上對DSGDF 模型進行實驗驗證,未使用GPU 加速,這將是下一步研究的重點。