徐先峰,黃 坤,鄒浩泉,趙龍龍
(長(zhǎng)安大學(xué)電子與控制工程學(xué)院,陜西 西安 710064)
滾動(dòng)軸承是廣泛應(yīng)用于旋轉(zhuǎn)機(jī)械設(shè)備的核心器件,一旦發(fā)生故障,將對(duì)機(jī)械系統(tǒng)、工人生命安全和國(guó)民經(jīng)濟(jì)構(gòu)成嚴(yán)重威脅。因此,對(duì)滾動(dòng)軸承故障的精確診斷具有現(xiàn)實(shí)意義[1-3]。進(jìn)入21世紀(jì)以來,深度學(xué)習(xí)和人工神經(jīng)網(wǎng)絡(luò)在滾動(dòng)軸承故障診斷分類領(lǐng)域展現(xiàn)出巨大潛力。研究人員將多種具備監(jiān)督學(xué)習(xí)能力的深度學(xué)習(xí)算法應(yīng)用于軸承故障診斷中[4]。Feng等[5]為提高傳統(tǒng)軸承故障診斷的有效性,提出了基于改進(jìn)的量子人工蜂群算法的反向傳播神經(jīng)網(wǎng)絡(luò)診斷模型(improved quantum artificial bee colony-back propagation,IQABC-BP),利用改進(jìn)的量子蜂群算法進(jìn)行量子蜂群計(jì)算,并解決了利用率低的問題。應(yīng)用改進(jìn)的量子蜂群算法對(duì)反向傳播(back propagation,BP)神經(jīng)網(wǎng)絡(luò)的初始權(quán)重、閾值和隱層數(shù)進(jìn)行優(yōu)化,并將其應(yīng)用于滾動(dòng)軸承的故障診斷。試驗(yàn)結(jié)果表明,IQABC-BP的收斂速度更快、故障診斷效果更好。然而,該方法并未考慮頻域的滾動(dòng)軸承故障信號(hào)分析。為了在頻域分析滾動(dòng)軸承故障特征,Liang等[6]提出了1種基于卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)和頻譜圖的滾動(dòng)軸承故障診斷方法。該方法利用快速傅里葉變換(fast Fourier transform,FFT),從原始一維振動(dòng)信號(hào)中提取頻率特征,并將其轉(zhuǎn)換為二維頻率頻譜圖輸入到CNN模型中,以實(shí)現(xiàn)滾動(dòng)軸承的故障診斷。試驗(yàn)結(jié)果表明,與傳統(tǒng)方法相比,該方法具有更優(yōu)良的精度和穩(wěn)定性。但是,該方法在解決標(biāo)簽數(shù)據(jù)有限的無監(jiān)督或者半監(jiān)督學(xué)習(xí)問題上存在很大的局限性。李萌等[7]針對(duì)標(biāo)簽數(shù)據(jù)有限的滾動(dòng)軸承故障診斷問題,提出了基于堆棧稀疏自編碼(stacked sparse autoencoder,SSAE)的滾動(dòng)軸承故障診斷方法。該方法利用SSAE網(wǎng)絡(luò)對(duì)原始信號(hào)進(jìn)行特征提取,并利用Softmax分類器進(jìn)行分類,實(shí)現(xiàn)滾動(dòng)軸承故障診斷。試驗(yàn)結(jié)果表明,該方法對(duì)解決無監(jiān)督學(xué)習(xí)問題具有明顯優(yōu)勢(shì)。
綜合分析深度學(xué)習(xí)模型在滾動(dòng)軸承故障診斷領(lǐng)域的應(yīng)用現(xiàn)狀,主流的故障診斷方法仍然是基于監(jiān)督學(xué)習(xí)的應(yīng)用,即利用有標(biāo)簽的數(shù)據(jù)來訓(xùn)練模型。但是,現(xiàn)實(shí)中所獲得的數(shù)據(jù)集中,大部分為無標(biāo)簽數(shù)據(jù)。如果要制作數(shù)據(jù)標(biāo)簽,不僅費(fèi)時(shí)費(fèi)力,而且具有很大的隨機(jī)誤差。
本文在上述研究的基礎(chǔ)上,提出了1種基于SSAE和支持向量機(jī)(support vector machine,SVM)的堆棧稀疏自編碼-支持向量機(jī)(stacked sparse autoencoder-support vector machine,SSAE-SVM)的滾動(dòng)軸承故障診斷方法。該方法在SSAE自適應(yīng)特征學(xué)習(xí)網(wǎng)絡(luò)中加入貪婪算法逐層進(jìn)行訓(xùn)練,并使用反向微調(diào)算法實(shí)現(xiàn)誤差最小化,進(jìn)而對(duì)滾動(dòng)軸承故障頻域特征進(jìn)行深層學(xué)習(xí)。最后,把5層結(jié)構(gòu)的SSAE特征學(xué)習(xí)網(wǎng)絡(luò)的輸出輸入到SVM分類器中,以實(shí)現(xiàn)滾動(dòng)軸承故障的準(zhǔn)確分類。
自動(dòng)編碼器(autoencoder,AE)采用典型的對(duì)稱無監(jiān)督學(xué)習(xí)算法,通過反向微調(diào)算法最小化目標(biāo)和輸出誤差[8]。AE結(jié)構(gòu)包含輸入層、編碼層和輸出層3級(jí)網(wǎng)絡(luò)。AE結(jié)構(gòu)如圖1所示。
圖1 AE結(jié)構(gòu)圖Fig.1 Structure diagram of AE
稀疏自動(dòng)編碼器(sparse autoencoder,SAE)是在AE的基礎(chǔ)上增加了一些稀疏性約束,用于尋找一組超完備基向量,以便高效地表示樣本數(shù)據(jù)[9]。由于對(duì)隱藏層進(jìn)行了稀疏性限制,SAE的學(xué)習(xí)能力得到了顯著增強(qiáng),可以獲得更為簡(jiǎn)單的信號(hào)表達(dá)方式。因此,該方法更容易獲取信號(hào)中的信息,以便對(duì)信號(hào)進(jìn)行壓縮、編碼等加工處理。
SSAE是由多層稀疏自編碼器組成的神經(jīng)網(wǎng)絡(luò)模型。SSAE網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 SSAE網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Structure of SSAE network
圖2中:X為輸入向量;Si為第i個(gè)(i=1,2,...,n)稀疏自動(dòng)編碼器;hi為Si的輸出特征向量。
SSAE與自動(dòng)編碼器類似,前向和反向訓(xùn)練模式可以減小重構(gòu)信號(hào)和輸入信號(hào)之間的偏差。將高維輸入數(shù)據(jù)轉(zhuǎn)換為低維特征,并經(jīng)過解碼過程中激活函數(shù)的重構(gòu)成為輸出目標(biāo)。編碼層輸出的編碼向量可以被視為對(duì)原始輸入信號(hào)的一種深層特征提取[10]。
①編碼過程:通過激活函數(shù)fθ()將樣本映射為編碼向量,如式(1)所示。
Y=fθ(WX+b)
(1)
式中:fθ()為Sigmoid激活函數(shù);W為輸入層到隱含層的權(quán)值矩陣;b為隱含層閾值(偏置)向量。
②解碼過程:原始數(shù)據(jù)的矢量重構(gòu)過程如式(2)所示。
Z=fθ(WTY+b′)
(2)
式中:WT為隱含層到輸出層的權(quán)值矩陣;b′為輸出層閾值(偏置)向量。
SSAE網(wǎng)絡(luò)的訓(xùn)練過程包含前向網(wǎng)絡(luò)預(yù)訓(xùn)練(無監(jiān)督方式)和反向微調(diào)(有監(jiān)督方式)2個(gè)過程。網(wǎng)絡(luò)的訓(xùn)練過程中,輸入特征信號(hào)通過正向傳播和反向傳播2個(gè)階段循環(huán)地調(diào)整各層的參數(shù),以提高神經(jīng)網(wǎng)絡(luò)的性能。SSAE前向網(wǎng)絡(luò)預(yù)訓(xùn)練采用了貪婪算法[11]進(jìn)行逐層訓(xùn)練。貪婪算法逐層訓(xùn)練過程如圖3所示。
圖3 貪婪算法逐層訓(xùn)練過程Fig.3 Layer-wise training process of greedy algorithm
由圖3可知,該算法訓(xùn)練過程如下。首先,利用輸入的原始滾動(dòng)軸承故障特征訓(xùn)練SSAE神經(jīng)網(wǎng)絡(luò)的第一層稀疏自編碼器,得到參數(shù)權(quán)重W(1)和偏置b(1)。然后,在第一層網(wǎng)絡(luò)訓(xùn)練結(jié)束之后,開始訓(xùn)練第二層具有2個(gè)隱含層的網(wǎng)絡(luò);將第一個(gè)SAE隱含層的輸出作為第二個(gè)SAE隱含層的輸入,得到第二層的參數(shù)權(quán)重W(2)和偏置b(2)。以此類推,把已訓(xùn)練好的第(n-1)層的輸出作為第n層的輸入,獲得最后一層的參數(shù)權(quán)重W(n)和偏置b(n)。
SSAE的訓(xùn)練過程可理解為調(diào)整其參數(shù)權(quán)重矩陣W和偏置b,使原始輸入與重構(gòu)誤差的損失函數(shù)最小化。當(dāng)重構(gòu)目標(biāo)與訓(xùn)練樣本的相似度達(dá)到最高時(shí),編碼矢量特征向量可被視為原始信號(hào)的最優(yōu)降維表達(dá)。其數(shù)學(xué)表達(dá)式為:
(3)
式中:xi為第i個(gè)神經(jīng)元對(duì)應(yīng)的輸入向量;zi為第i個(gè)神經(jīng)元對(duì)應(yīng)的輸出向量;l為神經(jīng)元個(gè)數(shù)。
在反向微調(diào)過程中,采用BP算法優(yōu)化和更新所有隱含層參數(shù),以增強(qiáng)整個(gè)網(wǎng)絡(luò)的性能。部分訓(xùn)練數(shù)據(jù)被選作整個(gè)網(wǎng)絡(luò)的監(jiān)督學(xué)習(xí)的輸入。誤差信號(hào)流反向傳播流程如圖4所示。
圖4 誤差信號(hào)流反向傳播流程Fig.4 Process of error signal flow back propagation
圖4中:ez和ey分別為輸出層和隱含層的誤差信號(hào);η為學(xué)習(xí)率;ΔWT和ΔW分別為隱含層和輸入層的調(diào)整權(quán)值;f為各層的轉(zhuǎn)移函數(shù),具有連續(xù)可導(dǎo)的特性;d為期望的誤差。
利用式(1)和式(2),將BP誤差展開到輸入層:
(4)
(5)
通過梯度下降法進(jìn)行更新,取得合適的權(quán)值和偏置參數(shù),使誤差E最小。對(duì)輸出層的權(quán)值參數(shù)進(jìn)行調(diào)整:
(6)
式中:η為學(xué)習(xí)率。
反向?qū)﹄[含層的權(quán)值進(jìn)行調(diào)整:
(7)
SVM是1種以統(tǒng)計(jì)學(xué)原理作為理論基礎(chǔ)的監(jiān)督學(xué)習(xí)方法,具有構(gòu)造簡(jiǎn)單、結(jié)構(gòu)風(fēng)險(xiǎn)小、非線性問題處理能力佳、泛化性能好等優(yōu)點(diǎn),在處理模式識(shí)別及回歸問題中展示了良好的性能[12]。本文選擇徑向基核函數(shù)作為SVM滾動(dòng)軸承故障分類器的核函數(shù),處理非線性問題。核函數(shù)表達(dá)式為:
(8)
SVM算法原來是專門針對(duì)二值分類問題所研究的。然而,要識(shí)別的滾動(dòng)軸承故障類型遠(yuǎn)不止2種。對(duì)此,解決方法是訓(xùn)練多個(gè)二分類器來模擬多分類器。多分類器的構(gòu)造方法主要有直接法和間接法。經(jīng)過SSAE深層特征提取器提取的特征在SVM分類器中進(jìn)行分類。SVM分類器原理如圖5所示。
圖5 SVM分類器原理示意圖Fig.5 Schematic diagram of SVM classifier
SSAE-SVM滾動(dòng)軸承故障診斷模型簡(jiǎn)稱為SSAE-SVM模型。SSAE-SVM模型整體設(shè)計(jì)流程如圖6所示。
圖6 SSAE-SVM模型整體設(shè)計(jì)流程Fig.6 Overall design process of SSAE-SVM model
模型搭建流程主要包含數(shù)據(jù)處理、基于SSAE的滾動(dòng)軸承故障特征自適應(yīng)學(xué)習(xí)和基于SVM分類器的滾動(dòng)軸承故障分類這3個(gè)核心內(nèi)容。
在模型的搭建過程中,激活函數(shù)fθ(z)選擇tanh激活函數(shù),即:
(9)
式中:θ={W,b}為參數(shù)集合。
當(dāng)fθ(z)接近1時(shí),表示神經(jīng)元活躍;當(dāng)fθ(z)接近-1時(shí),表示神經(jīng)元被抑制。
本文的試驗(yàn)數(shù)據(jù)來自美國(guó)凱斯西儲(chǔ)大學(xué)滾動(dòng)軸承數(shù)據(jù)中心。其數(shù)據(jù)集是學(xué)術(shù)界普遍使用的軸承故障診斷基準(zhǔn)數(shù)據(jù)集[13]。美國(guó)凱斯西儲(chǔ)大學(xué)滾動(dòng)軸承數(shù)據(jù)集采集系統(tǒng)主要包括風(fēng)扇端軸承SKF6203、1.5 kW的電機(jī)、驅(qū)動(dòng)端軸承SKF6205扭矩傳感器和編碼器等部件。本文選用美國(guó)凱斯西儲(chǔ)大學(xué)滾動(dòng)軸承驅(qū)動(dòng)端和風(fēng)扇端軸承數(shù)據(jù)作為試驗(yàn)數(shù)據(jù),檢驗(yàn)所建立的SSAE-SVM模型的性能。該試驗(yàn)所用數(shù)據(jù)為48 kHz的驅(qū)動(dòng)端軸承SKF6205數(shù)據(jù):選擇10 000個(gè)數(shù)據(jù)樣本,按照7∶3的比例設(shè)置訓(xùn)練集和測(cè)試集樣本數(shù)量[14]。
試驗(yàn)數(shù)據(jù)樣本劃分如表1所示。
表1 試驗(yàn)數(shù)據(jù)樣本劃分Tab.1 Division of experimental data samples
①模型訓(xùn)練的收斂速度和準(zhǔn)確率。
利用訓(xùn)練樣本,檢驗(yàn)SSAE-SVM模型與對(duì)比模型在7 000個(gè)訓(xùn)練集樣本上的準(zhǔn)確率和收斂速度。根據(jù)第5次、第10次、第20次、第30次、第50次、第80次、第100次、第120次、第150次迭代所對(duì)應(yīng)的準(zhǔn)確率,繪制準(zhǔn)確率折線。不同訓(xùn)練次數(shù)的模型準(zhǔn)確率對(duì)比如表2所示。
表2 不同訓(xùn)練次數(shù)的模型準(zhǔn)確率對(duì)比Tab.2 Comparison of model accuracy with different training times
由表2可知:SSAE-SVM模型和CNN模型的收斂速度比SSAE-Softmax模型和BP模型更快;SSAE-SVM模型的準(zhǔn)確率在訓(xùn)練次數(shù)達(dá)到80次后穩(wěn)定在99.9%以上。
②SSAE-SVM模型和對(duì)比模型的性能對(duì)比。
SSAE-SVM模型與3個(gè)對(duì)比模型使用測(cè)試集分別試驗(yàn)10次。不同測(cè)試次數(shù)的模型準(zhǔn)確率對(duì)比如圖7所示。
圖7 不同測(cè)試次數(shù)的模型準(zhǔn)確率對(duì)比Fig.7 Comparison of model accuracy with different test times
由圖7可知,SSAE-SVM模型比SSAE-Softmax模型、BP模型和CNN模型的滾動(dòng)軸承故障診斷準(zhǔn)確率更高,平均準(zhǔn)確率可達(dá)99.74%。
③迭代次數(shù)對(duì)模型準(zhǔn)確率的影響。
為了檢驗(yàn)迭代次數(shù)對(duì)滾動(dòng)軸承故障診斷性能的影響,將迭代次數(shù)分別設(shè)置為5次、10次、20次、50次、100次,利用測(cè)試集進(jìn)行10次試驗(yàn),然后取平均值。不同迭代次數(shù)的模型準(zhǔn)確率對(duì)比如圖8所示。
圖8 不同迭代次數(shù)的模型準(zhǔn)確率對(duì)比Fig.8 Comparison of model accuracy with different iteration times
由圖8可知,所有模型的滾動(dòng)軸承故障診斷的準(zhǔn)確率均受到了迭代次數(shù)的影響。尤其當(dāng)?shù)螖?shù)小于10時(shí),3個(gè)對(duì)比模型的故障診斷準(zhǔn)確率均有較大的損失。BP模型在迭代次數(shù)大于50后才達(dá)到90%左右。CNN模型在處理大量有監(jiān)督學(xué)習(xí)訓(xùn)練樣本時(shí)具有很高的準(zhǔn)確率,但在少量有監(jiān)督學(xué)習(xí)樣本中的性能較差。相較于3個(gè)對(duì)比模型,SSAE-SVM模型準(zhǔn)確率更高、穩(wěn)定性更強(qiáng),因而更具優(yōu)越性。
本文基于無監(jiān)督學(xué)習(xí)方法,提出了基于SSAE-SVM的滾動(dòng)軸承故障診斷方法,解決了現(xiàn)有算法過度依賴有標(biāo)簽故障數(shù)據(jù)的問題。首先,利用SSAE進(jìn)行無監(jiān)督式深層學(xué)習(xí)獲得滾動(dòng)軸承故障的高維深層特征,構(gòu)建5層SAE堆疊而成的SSAE自適應(yīng)學(xué)習(xí)網(wǎng)絡(luò)。然后,使用貪婪算法逐層訓(xùn)練和反向微調(diào)算法對(duì)其進(jìn)行改進(jìn)。最后,將深層特征向量輸出至SVM監(jiān)督學(xué)習(xí)分類器,實(shí)現(xiàn)滾動(dòng)軸承故障分類。采用美國(guó)凱斯西儲(chǔ)大學(xué)滾動(dòng)軸承數(shù)據(jù)集將SSAE-SVM滾動(dòng)軸承故障診斷模型分別與SSAE-Softmax的軸承故障診斷模型、基于BP神經(jīng)網(wǎng)絡(luò)的軸承故障診斷模型和基于CNN神經(jīng)網(wǎng)絡(luò)的滾動(dòng)軸承故障診斷模型進(jìn)行對(duì)比試驗(yàn)。試驗(yàn)結(jié)果表明,本文所提模型的準(zhǔn)確率更高、收斂速度更快,表明應(yīng)用無監(jiān)督學(xué)習(xí)建立軸承故障診斷模型將成為軸承故障診斷的重要發(fā)展方向之一。