王 雷,孫習習
(1.中國民航大學 工程技術訓練中心,天津 300300;2.中國民航大學 電子信息與自動化學院,天津 300300)
深度學習算法能夠用于自主獲取原始數據的有效特征信息,實現端到端的智能故障診斷。
相比于狀態估計法[1]、時頻分析法[2]等一些傳統的機器學習方法,基于深度學習的滾動軸承故障診斷算法具有更強的魯棒性和可行性。其中,最為常見的診斷模型包括卷積神經網絡(convolutional neural networks,CNN)、自編碼器(auto-encoder,AE)和循環神經網絡(recurrent neural network,RNN)以及深度殘差網絡(residual networks,ResNet)等[3,4]。
其中,基于AE的檢測模型不需要振動數據的標簽信息,其特征提取性能完全依賴于原始數據特點和重構誤差的選取。對此,學者們普遍采用自編碼器與信號處理結合的方法,并取得了更好的故障分類效果。
曹浩等人[5]采用堆棧系數自編碼器,對基于奇異值分解和時域分析方法提取的故障特征進行了優化,完成了對非平穩振動信號的特征分類。MAO W等人[6]提出了一種基于極限學習機和堆疊自編碼器的軸承故障診斷模型,并從特征穩定性、分類準確度和診斷效率等多方面,證明了該方法的有效性。
針對標簽樣本數目和學習率大小影響自編碼器分類準確率的問題,唐魏等人[7]采用動態學習率訓練SAE(Stacked Auto-Encoder)網絡,在同一模型下,通過比較不同數量的標簽數據集的測試效果,確定了輸入數據中標簽數據量的最優占比,并解決了傳統堆疊自編碼器診斷性能不佳的問題。
雖然AE網絡能夠擺脫對數據標簽信息的依賴,但由于其模型隱層層數較少,在處理復雜軸承數據集時,難以達到預期的效果。而因其獨有的卷積池化操作和權值共享算法,CNN能夠從軸承數據中提取更加抽象的特征信息。
基于CNN的軸承故障診斷方法主要分為數據源處理和改進網絡結構兩個方面。
在數據源處理方面,WANG J等人[8]研究了將不同位置傳感器采集的時域信號融合構造組成二維矩陣,利用CNN完成了多工況下的軸承故障分類。LI C等人[9]研究了基于時間編碼序列和CNN的故障診斷方法,發現平均預測精度分別達到了94.07%和96.28%。
在改進網絡結構方面,YOU W等人[10]研究了使用LReLU和PReLU作為激活函數改進CNN模型,克服了標準ReLU梯度消失的缺點,提高了其收斂速度和準確率。蒙志強等人[11]采用多尺度卷積核并聯方式和全局平均池化來改進CNN,發現改進后的模型對滾動軸承不同部位、不同程度的故障,都具有更為快速、準確的診斷性能。
此外,在采用深度學習進行軸承故障診斷時,還需要人為設定閾值或者判別依據。但軸承數據是一個時序數據,其變化規律是具有短期性、周期性和趨勢性的,人為設定閾值的難度很大。因此,這就需要通過時序分解來對軸承的發展趨勢進行分析預測。
STL是一種常用的時間序列分析方法,可以用于將時序信號分解成趨勢項、周期項和不規則波動項(殘差項),具有較好的魯棒性,在信號分解領域中得到了廣泛應用,如:堆石壩變形預測[12],用電負荷分析[13,14],城市軌道交通短時客流預測[15]等。
因此,為了解決實際工業場景下,原始信號數據無標注或標注不全的情況,筆者綜合STL的數據信息分解重構特點、CNN較強的特征提取能力以及AE無監督學習的優點,提出一種基于時間序列分解和一維深度卷積自編碼器(STL-1DDCAE)的無監督軸承異常信號檢測方法模型。
該方法利用健康樣本的重構誤差確定異常檢測的閾值標準,實現振動數據的狀態判斷,同時通過STL分解算法自適應確定故障發生的起始點。
在采用AE網絡進行軸承故障檢測時,AE網絡中的編碼器將一維軸承振動數據映射到低維空間,編碼所得的隱層向量則由解碼器進行重構還原為輸入數據[16]。
AE網絡的編碼過程如下:
hm=Sθ(W1xn+b1)
(1)


AE網絡的解碼過程如下:
(2)


由于AE網絡模型隱層層數較少,網絡深度有限,并且閾值需人為設定等問題,使得其難以應對不同的軸承復雜數據集。
而CNN具有卷積池化操作和權值共享算法[17,18],能夠充分提取輸入數據的特征信息,之后利用全連接層實現狀態分類,訓練采用反向傳播算法。與單一結構的神經網絡相比,CNN具有良好的泛化性能,只是其訓練過程需要大量的帶標簽數據來完成。
因此,依據軸承數據特點,并結合AE和CNN在軸承故障診斷上的優勢,筆者提出一維深度卷積自編碼器(1DDCAE)網絡。
DDCAE網絡是在AE網絡的基礎上引入一維CNN作為編碼器和解碼器的具體結構,利用編碼器網絡中交替的卷積池化操作,逐層提取輸入樣本的特征信息,映射到低維空間,再通過解碼器網絡中的反卷積核和下采樣,操作編碼器網絡輸出的特征向量進行重構,得到輸出信號。1DDCAE網絡同時具備了AE模型無監督學習的優點和CNN模型的數據挖掘能力。
DDCAE網絡結構示意圖如圖1所示。

圖1 1DDCAE網絡結構示意圖
圖1中,1DDCAE模型由編碼網絡和解碼網絡組成,其中,編碼網絡由4個卷積層和3個池化層交替組成;解碼網絡則由3個上采樣層和3個反卷積層組成,模型的輸入為預處理后的一維時序數據,輸出為重構信號。
DDCAE網絡結構參數如表1所示。

表1 1DDCAE網絡結構參數
由表1中可以看出,1DDCAE網絡的卷積層采用ReLU激活函數,其池化層選擇最大值池化(max-pooling)策略。
DDCAE網絡通過梯度下降法不斷調整模型的權重矩陣和偏置向量,使得輸入信號和重構信號之間的誤差達到最小。
為了提升網絡的特征表達能力,筆者采用平均絕對誤差(mean absolute error, MAE)作為重構誤差函數即模型的目標函數,其計算公式為:
(3)

因軸承振動數據為連續的時間序列數據,筆者假定健康樣本集合為X,且X的重構誤差概率分布模型服從正態分布N(μ,σ),之后采用統計分析擬合X的概率分布估計閾值,最后判斷夏皮洛-威爾克(Shapiro-Wilk)檢驗的p-value值是否大于顯著性水平α(一般為0.05),以此來檢驗假設是否正確。
其具體步驟為:
(1)依據最大似然估計法計算重構誤差的均值和協方差;
(2)根據(1)的結果,按照正態分布建立健康樣本的概率分布模型,定義如下:
(4)
式中:p—健康樣本的概率分布;μ—重構誤差的均值;σ—重構誤差的協方差;xi—樣本的第i個值。
(3)根據步驟(2)的結果,擬合概率密度曲線,并計算置信水平為95%時健康樣本的模型參數,以此確定軸承異常檢測的閾值T。
通過以上步驟,就將對信號異常檢測的過程轉化為比較被測數據重構誤差和基準閾值的過程。
為了進一步避免因外界干擾造成的檢測誤差,筆者規定故障起始點必須大于軸承全運行周期的60%。
筆者采用STL算法計算軸承原始數據的重構誤差趨勢分量,通過分析趨勢分量得到軸承運行狀態的變化情況,然后結合閾值確定異常信號產生的具體時間戳,以此實現對軸承異常信號的分析。
STL分解模型一般分為加法模型和乘法模型兩類,其中,加法模型適合處理趨勢項不受周期變化影響的時間信號。
由于異常檢測方法主要分析軸承振動數據自身的變化趨勢,筆者選用基于加法模型的STL算法獲取誤差曲線的趨勢分量。
原始振動時間序列經STL分解得趨勢項分量、周期項分量和殘差項,其公式如下:
Yt=Tt+St+Rt
(5)
式中:Yt—原始時間序列;Tt—趨勢項分量,表明了振動數據重構誤差的變化趨勢,是時間序列的主要特征;St—周期項分量,表現出振動數據重構誤差的周期性特征,即在固定的時間間隔內重復出現的規律,為輔助特征;Rt—殘差項,其表現出原始振動數據內部潛在的波動與其他不可預測的因素,一般被認為是干擾項。
STL的異常信號分解過程可分為兩步,即內循環和外循環。在內循環迭代時,主要是利用平滑器更新St和Tt,去除各分量的異常擾動;外循環迭代時,主要是用于計算Rt(余項)。
第i+1次迭代的過程如下:
(1)對原始序列進行去趨勢項處理:
(6)

(2)子序列平滑。對每個子序列進行局部加權回歸(locally weighted scatterplot smoothing, LOWESS)平滑處理,前后各延展1個時間點,組合得到新的子序列;
(3)采用低通濾波計算新時間序列的趨勢項分量,去除周期性差異,然后由時間序列的可加性計算新時間序列的季節性分量,即:
(7)

(4)去除子序列中的季節成分,得到原始序列的季節分量和趨勢分量,即:
(8)

(5)判斷是否收斂,若不收斂,則重復步驟(1)~(4)的過程;若收斂,則跳出內循環,得到時間序列的余項分量,即:
(9)

結合STL算法與1DDCAE網絡,筆者提出了一種軸承異常信號檢測的方法。
該方法的流程,即基于STL-1DDCAE的軸承異常檢測流程圖,如圖2所示。

圖2 基于STL-1DDCAE的軸承異常檢測流程圖
圖2中,該檢測流程總共可分為4部分,即數據預處理、模型訓練、異常檢測和異常信號分析。其具體的檢測步驟如下:
(1)數據預處理。傳感器采集的原始振動信號的預處理步驟包括:降采樣、滑窗分割和歸一化,構造短信號基準樣本集;
(2)模型訓練。該過程首先搭建1DDCAE網絡模型,然后選取部分健康樣本訓練模型,優化網絡參數,保證模型對健康樣本具備良好的重構效果,并計算健康樣本的重構誤差;
(3)異常信號檢測。該過程利用統計分析的方法,對步驟(2)中的重構誤差進行概率分布擬合,計算正態分布模型參數,確定異常檢測的閾值,并將其與基準樣本集中數據的重構誤差進行比較,以判斷軸承的運行狀態。當重構誤差大于閾值時,則說明該數據存在異常;反之,當重構誤差小于閾值時,則判定其為健康數據;
(4)異常信號分析。該過程利用STL對軸承重構誤差信號進行分解,以得到信號的趨勢分量。尋找原始信號重構誤差趨勢項高于閾值的時間戳,且當異常點的時間戳比例足夠大時,判定該時刻為故障的起始點,分別給健康數據和故障數據進行標簽化處理。
為了驗證上述方法的可行性,筆者采用美國辛辛那提大學IMS(Intelligent Maintenance Systems)Center提供的航空軸承運行數據,即IMS數據集進行實驗驗證。
IMS實驗裝置臺如圖3所示。

圖3 IMS實驗裝置臺
圖3中,4個同規格的實驗軸承被依次安裝在主軸上,并由電機驅動旋轉,且其在運行過程中始終保持轉速不變。
考慮到對后續軸承異常信號的分析,實驗中軸承的具體型號和相應的故障特征頻率如表2所示。

表2 軸承各部位的故障特征頻率(Hz)
該試驗在保持軸承連續運轉工況下,采集到滾動軸承從健康到失效的全運行周期數據;在此期間,每隔10 min記錄一次(所有故障均在軸承既定的使用壽命后產生)。
筆者選取的IMS數據集描述,如表3所示。

表3 IMS數據集描述
表3中,筆者選取數據集1的軸承3、4和數據集2的軸承1作為實驗數據集。因為其具有的異常狀態已經覆蓋了軸承所有部位的故障情況,便于對軸承的異常狀態進行監測,以及對其進行后續的故障診斷。
由表3可以看出,由于單個樣本序列過長,且數目過大,實驗所選取的數據集易導致模型的訓練時間過長,網絡無法收斂等結果。因此,必須首先對所選取的數據集進行預處理,以提高模型的訓練效率。
在實際工業采集系統中,一般采用間隔采樣的方式來降低其采樣率。因此,筆者將原始振動數據集采樣頻率降至工業中常用的5 kHz;其次,為了提升其網絡性能,采用移動長度為1 000的無重疊滑動窗口平移方式來切割樣本,以獲得一系列短序列樣本,從而擴充樣本的數量,并以此作為模型訓練的最小單位。
在振動信號的采集過程中,每個傳感器所獲得的樣本量不一致。因此,為了降低由傳感器量綱和變化范圍不一致所引起的采集信號幅值的差異,最后,筆者對振動信號數據進行min-max歸一化處理,剔除異常的數據點。
其具體的計算方法為:
(10)
式中:xi—該列數據中第i個數據的值;Norm(xi)—xi歸一化之后的數值;xmin,xmax—該項數據中的最小值和最大值。
根據軸承故障的發生機理,筆者分別取軸承1、軸承3及軸承4的前350組數據作為健康狀態樣本,對樣本進行預處理后,再從標準樣本庫中隨機抽取400組,以構成訓練樣本集,用于計算重構誤差;而測試集則是將原始數據進行預處理后得到的全部樣本。
為了驗證上述方法的有效性和泛化性,筆者擬通過實驗的方式,對3個全運行周期的軸承振動數據集進行軸承異常狀態檢測與分析。
實驗中,1DDCAE的網絡參數設置如下:初始學習率lr為0.001,epcoh為100,batch_size為32;采用Adam算法優化網絡參數。
筆者通過數據預處理后,將選定的3個軸承訓練集樣本分別輸入1DDCAE模型中,得到3個軸承樣本的重構信號。
按照2.1節中的步驟,筆者通過計算得到了3個軸承重構信號的參數,如表4所示。

表4 重構信號參數值
由表4可以看出,依據2.1節中計算得到的3個軸承的Shapiro-Wilk檢驗的p-value值均大于顯著性水平α(α=0.05)。該結果與假設結果相一致,且符合正態分布。
根據表4的結果,筆者分別擬合出了3個軸承健康樣本的正態分布概率直方圖,如圖4所示。

圖4 軸承健康樣本概率分布直方圖
觀察圖4可知,3個軸承健康樣本的概率分布擬合曲線基本符合正態分布。該結果也進一步驗證了其符合2.1節中的假設。
接下來,筆者進一步對3個軸承樣本進行異常信號的檢測分析。
3.3.1 軸承1異常檢測
軸承1的故障類型主要為外圈故障,外圈故障一般發生在軸承運轉工作的后期。為了更加直觀地展示模型的重構性能,筆者分別繪制出軸承1在1個采樣周期的健康樣本重構信號,以及原始含外圈故障樣本的重構信號。
軸承1的重構信號如圖5所示。

圖5 軸承1重構信號圖
對比圖5中的訓練樣本重構信號和測試樣本重構信號圖可知:軸承1健康狀態樣本的重構信號更接近輸入信號,而外圈故障重構信號振幅與原始信號相比存在明顯差異。該結果表明,利用1DDCAE模型的重構誤差能夠有效地區分軸承的異常信號。
為了比較重構誤差對于判斷異常起始點的有效性,筆者利用STL算法分別對原始信號和經1DDCAE得到的重構誤差信號進行分解,得到軸承1的重構誤差趨勢,如圖6所示。

圖6 軸承1重構誤差趨勢圖
圖6(a)中,通過比較重構誤差趨勢曲線與閾值的關系,確定軸承1的時間戳為760處發生故障;這表明軸承1在2004-02-17的17:02:39~17:12:39時間段內開始出現異常;
而在圖6(b)中,分析原始樣本的變化趨勢可知,雖然其整體變化趨勢基本一致,但其自身擾動較為嚴重,難以通過其趨勢判斷出故障具體的發生時間。
3.3.2 軸承3異常檢測
軸承3的故障類型為內圈故障。軸承內圈故障一旦產生,軸承會很快失效。由于內圈位置與傳感器的距離最遠,其所采集到的故障信號一般會包含一定量的外部噪聲。
因此,在模型訓練結束后,筆者將軸承3的原始樣本輸入到1DDCAE網絡模型中,得到軸承3的重構信號,如圖7所示。

圖7 軸承3重構信號圖
由圖7可知,模型對輸入信號的重構能力受樣本異常值的影響較大。
在圖7(a)中,由于健康樣本包含的狀態信息相對穩定,其輸出信號更為接近輸入信號;
而在圖7(b)中,含故障樣本的重構信號存在明顯的沖擊擾動。這也表明,1DDCAE模型能夠較好地提取出軸承的故障特征。
為了進一步地確定軸承3故障發生的時間點,筆者將軸承3的原始信號樣本與重構誤差采用STL進行分解,得到了軸承3重構誤差趨勢圖,如圖8所示。

圖8 軸承3重構誤差趨勢圖
對比圖8中的重構誤差趨勢分量以及原始樣本趨勢分量可以看出,圖8(a)中的重構信號在降低外部干擾的同時,重點突出了重構誤差隨運行時間的變化趨勢;
觀察圖8還可知,重構誤差趨勢分量以及原始樣本趨勢分量圖均存在不同程度的干擾,符合軸承內圈故障的采集特點。
為了避免因安裝誤差造成的故障誤判,筆者根據2.1節中的規定(即故障起始點必須大于軸承全運行周期的60%),確定軸承3外圈故障的真正時間戳為第1 780點,即軸承3在2003-11-22的07:26:56~07:36:56時間段內出現內圈異常狀態。
3.3.3 軸承4異常檢測
軸承4的故障類型為滾動故障,受軸承的結構影響,滾動體故障一般發生在外圈故障和內圈故障之間。筆者繪制了1DDCAE模型輸出的健康重構信號及含滾動體故障重構信號波形圖,如圖9所示。

圖9 軸承4重構信號圖
圖9(b)中,故障信號樣本的重構信號僅放大了由1DDCAE模型提取的滾動體故障沖擊特征,忽略了樣本的局部振幅變化,而圖9(a)健康樣本的重構信號由于沒有異常值的干擾,重構效果整體上仍優于含故障樣本的重構效果,可以作為異常信號檢測的依據。
筆者采用STL分別對重構誤差信號和原始樣本進行分解,并保留各自的趨勢項分量,以此判斷軸承異常狀態的起始點。
分解得到軸承4的重構誤差趨勢分量如圖10所示。

圖10 軸承4重構誤差趨勢圖
圖10中,雖然STL分解去除了軸承樣本中存在干擾較多的余項分量,但圖10(b)中的原始樣本趨勢曲線仍存在較多的擾動點,嚴重影響了信號的趨勢走向,導致故障起始點的判斷出現偏差。
因此,筆者采用圖10(a)重構誤差趨勢曲線進行分析,從圖10(a)中根據閾值判斷滾動體異常狀態的開始時間戳為第1 700點,表明軸承4從運行時間為2003-01-21的18:16:56~18:26:56的采樣時間段后全部為滾動體故障運行狀態。
上述3個軸承異常狀態的分析結果表明,與單純使用STL分解相比,采用STL-1DDCAE方法能夠充分提取軸承的故障特征,實現對不同軸承數據集的異常狀態檢測。
定義樣本標簽為:

(11)
式中:Y—樣本標簽;0—軸承健康狀態;1—軸承內圈故障;2—軸承外圈故障;3—軸承滾動體故障。
筆者根據3個軸承數據集的異常檢測時間點分別給軸承數據添加對應的標簽信息。
為直觀顯示,4種軸承標簽信號對應的頻域圖如圖11所示(僅顯示了軸承3的健康樣本數據)。
由圖11可知:(1)軸承信號均存在不同程度的噪聲,圖11(a)選取的健康樣本來自軸承3的前期數據,由于傳感器安裝位置等因素導致軸承信號幅值波動較大;(2)圖11(b)的內圈故障樣本由于內圈與傳感器的距離較遠,導致頻域波形中故障頻率存在嚴重偏差;(3)因故障位置與傳感器距離較近,圖11(c)的外圈故障信號和圖11(d)的滾動體故障信號頻率相對明顯,尤其是軸承外圈故障,其沖擊特征較為突出。

圖11 軸承4種狀態時域和頻域圖
由于軸承原始振動數據標簽信息不足,難以對其進行建模分析,為此筆者以美國辛辛那提大學IMS數據集為研究對象,提出了一種基于時序分解與一維深度卷積自編碼網絡(STL-1DDCAE)的無監督故障診斷方法,即首先采用基于多層卷積池化的1DDCAE模型,提取健康數據的重構誤差,引入正態分布,擬合重構誤差的概率密度分布,最后結合STL分析了軸承的重構誤差曲線。
研究結果表明:
(1)1D-DCAE模型能夠充分提取健康數據的重構誤差;
(2)利用正態分布擬合重構誤差的概率密度分布,能夠根據不同類型的軸承數據提取對應的閾值;
(3)經STL分解得到的趨勢項分量和閾值比較,實現了對軸承的異常狀態分離,實現了無故障標簽的軸承異常狀態檢測。
在之后的研究工作中,筆者將進一步地借助深度學習模型來挖掘軸承故障的特征信息,以降低故障信號中噪聲的影響,使得其標定結果更加準確。