代鈺,趙蓉,郭浩男,高振,楊雷
(1.東北大學 軟件學院,沈陽 110169;2.東北大學 計算機科學與工程學院,沈陽 110169)
對軌道交通裝備以及關鍵耗損性部件進行壽命預測,可以根據剩余使用壽命對相關零部件進行維護或者更換,從而減少設備非計劃停機時間,避免因計劃外停機而帶來的經濟損失。傳統的剩余壽命預測方法通常需要2個基礎步驟:
1)建立性能退化指標;
2)研究預測模型[1]。王鳳飛[2]等提出了一種考慮隨機效應的多源信息融合剩余壽命預測方法,利用了同類設備的先驗信息,提高了參數估計和剩余壽命預測的精度。這種傳統的剩余壽命預測方法需要對歷史退化數據和失效壽命數據進行合理融合,需要充分了解這些多源信息,也需要一定的經驗和專業知識,這降低了壽命預測的智能性。
利用信號采集和計算機技術,可以獲取機械設備運行過程中大量的狀態監測數據,這推動了數據驅動的設備剩余壽命預測方法研究的發展。這些監測數據使得利用機器學習和深度學習的方法進行剩余壽命預測成為可能。齊盛[3]等提出了基于貝葉斯和極值分析的剩余壽命預測方法,該方法使用極值分布確定尺度參數和剩余壽命預測公式,最終得到壽命預測值。但是貝葉斯模型只在小規模的數據集上表現較好,當數據較多時,貝葉斯模型預測精度會下降。
深度學習中的循環神經網絡能夠利用全生命周期時序數據的前后關聯關系[4],故可以將其應用到剩余壽命預測問題中。劉樹鑫[5]等采用灰色關聯分析法和皮爾遜相關系數法剔除冗余信息,進行特征選擇,最后利用LSTM模型進行訓練。但是循環神經網絡由于梯度爆炸和梯度消失的問題難以訓練,這使得模型缺乏學習長期依賴的能力[6]。雖然LSTM設計了遺忘門在一定程度上解決了傳統循環神經網絡會出現的梯度爆炸、消失問題,但是如果超過了100個隨時間反向傳播(BPTT)步驟,也會存在誤差積累的情況,同樣也會有以上問題的出現[7]。循環神經網絡在長序列預測建模中還存在路徑過長的問題,路徑越短,在神經網絡中進行前向傳播和反向傳播的次數越少,意味著輸入與輸出之間采集信息的累計誤差越小,長期依賴也捕捉得更清晰。然而,LSTM在進行時間序列預測時,最長路徑可達到O(L),L為序列長度[6],過長的路徑導致輸入與輸出之間的累積誤差過大,降低模型捕捉長期依賴的能力。現有的循環神經網絡模型大多是在時間序列長度較短的情況下訓練的,長度一般在48或者更短,如Li[8]等提出的DCRNN模型,Yu[9]采用的HOT-RNN結構。當輸入時間序列較長時,以上模型很難精確捕捉長期序列之間的依賴關系,預測精度會降低。
與LSTM類似,為了解決RNN中出現的梯度問題,在剩余壽命預測問題中也會使用門控循環單元(GRU)模型。袁燁[10]利用門控循環單元,對時序關系進行建模,提取了數據時間上的特征,建立了特征與真實剩余壽命值之間的映射關系,從而得到剩余壽命預測值。姚德臣[11]等提出了注意力GRU算法,將注意力機制與門控循環單元相融合進行剩余壽命預測。但是以上方法只使用兩個甚至一個門控循環單元,網絡層數較少,無法提取較高層次的特征,導致模型預測精度不高。
本文就軌道交通裝備及關鍵零部件剩余壽命預測中的由于時間序列長度增加導致模型捕捉長期依賴的能力降低這一問題進行分析,提出了基于Transformer的LongTransformer剩余壽命預測模型。LongTransformer模型對Transformer網絡中的編碼器層進行改進,通過自注意力蒸餾機制將級聯層輸入減半來突出主導注意力,增強了對于長周期時間序列依賴關系特征的提取,從而能夠有效地處理更長的輸入序列。首先將獲取的歷史數據進行位置編碼,作為編碼器層的輸入;將真實的剩余壽命值輸入到解碼器層中,經過掩蓋多頭注意機制,再與編碼器層的輸出值一起輸入到多頭注意力機制中,通過全連接層得到最終的剩余壽命預測值。與傳統的剩余壽命預測方法相比,LongTransformer模型需要的先驗知識更少,泛化能力更強。利用LongTransformer有效捕捉長時間序列之間精確的依賴關系的能力,在與LSTM模型輸入相同長度的時間序列時,LongTransformer的最長路徑可減少到理論上最短的O(1)[6],大大降低了路徑長度,累積誤差減小,捕捉時間序列之間依賴關系的能力增強,提高了剩余壽命預測的準確率。
本文使用的實驗數據采用中車株洲電力機車有限公司提供的軌道交通裝備及關鍵零部件數據集。此數據集包含了2015年11月至2021年11月一列車組在行駛過程中列車各零部件參數的變化情況。此列車組由8列車廂組成,每列車廂有4根軸承。車廂按照功能可分為3類:有司機室動車(Mc)、帶受電弓拖車(Tp)、動車(M),列車組的整體結構如下圖所示。

圖1 列車組示意圖
此數據集包含8個子數據集,每個子數據集記錄一列車廂行駛中各零部件的狀態監測數據,數據的采樣間隔為1min。不同種類車廂所監控的零部件類型不同,本實驗以軸承為例對算法進行測試,在驗證過程中選用了Mc1車廂的1號軸承數據集(下文用Mc1-1表示),Mc1-1共31列傳感器監測數據,實驗時取前80%數據作為模型的訓練集,剩余的20%數據作為測試集輸入。
首先對軸承狀態監測數據進行篩選,篩選的意義在于某些特征參數在列車運行過程中近似恒定不變,對于模型的訓練過程沒有任何價值。經過計算后,有3列狀態監測數據不隨時間變化,故舍棄,使用其余28列狀態監測數據進行剩余使用壽命預測。
下面需要對每列數據分別進行標準化,標準化是將數據按比例縮放,使之落入一個小的特定區間。這樣做的好處是提高模型訓練性能,簡化計算。本文采用min-max標準化,計算公式如式(1)所示:

式(1)中,xj‘‘為min-max標準化后的第j個數據,j=1,2···,n;xj為原始的第j個數據;xj,min為該列數據的最小值,xj,max為該列數據的最大值。
為了量化模型性能,確保模型的準確性與可用性,需要計算評價指標對模型進行綜合評估。本文采用的模型評價指標如下:
平均絕對誤差(MAE):是絕對誤差的平均值,這是一種更一般化的求誤差方法,計算公式為:

式(2)中,n為剩余壽命預測值的個數;yi為剩余壽命真實值;為剩余壽命預測值。均方根誤差(RMSE):是預測值與真實值殘差的標準差,均方根誤差具有無偏性,計算公式為:

本文使用滑動窗口構建訓練數據與測試數據,滑動窗口是指將數據集中連續的n條數據打包成二維矩陣,此時稱滑動窗口的大小為n;這樣做的目的是將前n-1條數據與第n條數據同時放入模型中進行訓練,以便獲取數據間的隱藏關系,得出更好的結果。
在具有固定大小的滑動窗口的預測設置下,本文輸入數據格式為X(t)=[x1(t-N+1),...,xN(t)]T的矩陣,大小為M×N。其中xn(t-N+n)表示在t時刻,采用第t-N+n時刻的傳感器數據對零部件進行預測,大小為M×1。M為監測某個零部件的傳感器的數量,N為滑動窗口的大小,yt代表的t時刻該軸承真實的剩余壽命值。模型的輸出值即預測目標為Y=y'',表示模型對該零部件剩余壽命的預測值。
Transformer拋棄了傳統的卷積神經網絡(CNN)和循環神經網絡(RNN),整個網絡結構完全是由注意力機制組成,即由self-Attention和Feed-Forward Neural Network組成。與LSTM等傳統的循環神經網絡相比,Transformer輸入與輸出之間的路徑較短,捕捉長時間序列依賴的能力較強。然而,隨著工業技術的升級,短周期的軌道交通關鍵零部件狀態監測數據已經不能顯著反映剩余壽命的變化,剩余壽命對已有算法的預測能力也提出了更高的要求即需要處理更長周期依賴性特征,從而提高模型預測的準確率。為了解決這一挑戰,本文提出了基于改進Transformer剩余壽命預測算法(Long-Transformer),整體結構如圖2所示。該模型分別搭建了2層編碼器和解碼器,編碼器層包括多頭自注意力機制、自注意力蒸餾機制以及前饋神經網絡,解碼器層由掩蓋多頭注意機制、多頭注意力機制、前饋神經網絡組成。接下來對各個部分做詳細說明。

圖2 LongTransformer整體結構圖
本文利用LongTransformer中的Encoder層來捕獲關鍵零部件剩余壽命的長期與短期依賴關系。Encoder層包括三個部分,分別是Multi-Head Self-Attention(多頭自注意力模塊)、Self-Attention Distilling(自注意力蒸餾模塊)和Feed-Forward Neural Network(前饋神經網絡模塊)。另外,為了解決深度學習中的退化問題,多頭自注意力模塊使用了殘差網絡中的short-cut結構。
2.1.1 Multi-Head Attention
當采用自注意力模型時,模型只能關注到單方面的信息,無法將多方面的信息合并,使得模型預測精度不高。由于剩余壽命預測
問題需要關注每條數據不同特征部分,捕捉到數據之間潛在的依賴信息。所以本文使用多頭自注意力機制將模型分為多個子空間,每個子空間關注不同方面的信息。多頭自注意力模塊將Query向量(Q)、Key向量(K)以及Value向量(V)進行N次拆分,并將每次拆分分別通過不同的頭傳遞,再將所有頭計算的結果合并得到最終的注意力得分,這可以使多頭注意力關注到不同的信息,提高剩余壽命預測的準確率。在自注意力中,每條數據有三個不同的向量,分別是Query向量(Q)、Key向量(K)以及向量Value(V),這三個向量由輸入的數據與三個值不同、維度相同的權值矩陣Wq、Wk和Wv相乘得到。多頭自注意力模塊實際上是多個不同的Self-Attention(自注意力)的集成,本文的多頭自注意力模塊包括4個自注意力模塊,即head個數為4。步驟如下:首先,每個head根據輸入數據得到K、V、Q三個向量:


在head為4的情況下,多頭自注意力模塊的步驟為:首先,將得到的注意力矩陣連接,接著經過softmax激活函數,最后,與一個隨機初始化的權重矩陣WA相乘得到最后的注意力矩陣,即多頭自注意力模塊的輸出:

2.1.2 Self-Attention Distilling
由于編碼器層的特征映射存在值V的冗余組合,導致模型空間復雜度較高,不能接受較長的輸入序列。但是,短期的零部件監測數據輸入序列,已經不能顯著地反映出剩余壽命的趨勢,所以,需要能夠處理更長周期輸入序列的模型。因此在自注意力蒸餾模塊中,通過將級聯層輸入減半這一步驟來突出主導注意力并優先處理,具體做法是對具有主導特性的優勢特征賦予更高的權重,蒸餾操作將總空間復雜度降低到O((2-α)LlogL),這有助于接受更長的輸入序列。該模塊從第j層推進到第j+1層的過程如該公式所示:

其中,一維卷積層Conv1d使用的卷積核大小為3,最大池化層MaxPool的步長為2。
2.1.3 Feed-Forward Neural Network
在多頭自注意力機制的內部結構中,主要進行的是矩陣乘法,即線性變換,線性變換的學習能力與非線性變換相比較弱,但是,由于剩余壽命預測的數據時間跨度較長,需要具有更強學習能力的模型來捕捉輸入與輸出之間的長周期依賴特征。所以本文通過采用激活函數的方式來強化多頭自注意力模塊的學習能力。前饋神經網絡模塊由兩個線性變換組成,激活函數為ReLU函數。公式表示為:

其中,x為多頭自注意力模塊的輸出,W1、b1分別為第一層線性變換的權重和偏置項,W2、b2分別為第二層線性變換的權重和偏置項。
傳統的解碼器層的輸入是上一層和編碼器的輸出,由于預測偏差會逐漸積累,導致最終預測結果精度降低,所以本文將壽命預測的真實值(ground-truth)和編碼器層的輸出作為編碼器層的輸入,讓數據的真實值輸入到解碼器層進行訓練,以緩解誤差的積累,提高預測準確率。解碼器層包括masked Multi-Head Attention模塊、Multi-Head Attention模塊和Linear模塊。Masked Multi-Head Attention模塊的作用為防止模型看到要預測的數據,由于解碼過程是一個順序操作的過程,也就是指當解碼第i個特征向量時,模型只能看到第i-1及其之前的解碼結果。向量Xde經過位置編碼后,與特征矩陣相乘后得到向量Q,K,V,作為Masked Multi-Head Attention模塊的輸入,向量Xde的計算公式為:

其中,X是數據集中的真實剩余壽命,X0是需要補充的占位符,值設置為0。
Multi-Head Attention模塊的K和V來自于編碼器層的輸出,Q來自于Masked Multi-Head Attention模塊的輸出,計算過程與編碼器層相同。
由于LongTransformer模型的編碼器層和解碼器層不包含循環和卷積網絡,因此不能利用輸入序列的前后順序,所以要在編碼和解碼之前注入序列中關于數據之間位置關系的信息。本文采用不同頻率的正弦函數和余弦函數來計算輸入數據的位置信息,通過位置編碼(position Encoding),使LongTransformer有了捕捉長時間序列順序的能力,之所以選擇正弦函數和余弦函數,是因為對于任意確定的偏移k,可以表示為的線性函數,這允許模型很容易學習對相對位置的關注。位置編碼一般是一個長度為d的特征向量,這樣便于和輸入的數據進行單位加的操作,編碼公式如下:

其中,pi表示第i條數據的位置編碼,s表示數據的維度。這樣,對于給定任意的長度l,pi+l與pi都有線性關系,即pi+l的位置向量可以表示pi為的位置向量的線性變化,這方便捕捉數據之間的相對位置關系。
本實驗分為兩個部分,第一部分討論在相同滑動窗口長度下,不同模型的預測結果比較及分析;第二部分討論隨著滑動窗口的長度增加,不同模型的評價指標對比。本文使用的基線模型為LSTM,Attention-GRU[11]。
首先,當滑動窗口的長度為60時,不同模型的預測結果隨時間增加的變化情況如圖3所示。

圖3 滑動窗口長度為60時模型預測情況
從圖3 中可以看出,相比較于其他兩個模型,Attention-GRU模型的預測結果浮動較大,精度稍差。當測試集數據在前400分鐘內時,本文提出的LongTransformer模型與基線LSTM模型預測結果都較為準確,隨著時間推移,兩模型的預測精度逐步下降。這是由于開始時的測試數據,在時間上距離訓練數據較近,測試集與訓練集的數據相似度較高,容易得到準確性較高的結果。隨著時間推移,狀態監測數據發生變化,測試集與訓練集的數據相似性逐步降低,預測值的準確性也逐漸降低。
為了進一步比較三種模型的預測結果隨時間的變化趨勢,下表分別列出0~420分鐘,421~960分鐘以及961分鐘之后三種模型預測值與真實值的MAE與RMSE情況。
從表1中可以看出,在前420分鐘內,LSTM模型MAE與RMSE兩項指標均好于本文提出的模型,表現最差的為Attention-GRU模型。當時間在421~960分鐘時,表現最好的模型為LongTransformer,其MAE相較于LSTM、Attention-GRU模型分別降低了6.63%、58.73%,RMSE值分別降低了2.41%、45.83%。隨著時間的增加,三種模型的MAE與RMSE值繼續增大,在961分鐘后,表現最好的依舊為本文提出的LongTransformer,其MAE與RMSE值相較于LSTM模型分別提高了2.16%,2.05%;相較于Attention-GRU模型,這兩項指標分別提升了45.83%,49.08%。這是因為相較于基線模型,LongTransformer能夠更好的捕捉相鄰輸入序列之間的相關性,具備預測更長時間序列的能力。

表1 (a) 0~420分鐘內不同模型的評價指標

表1 (b) 421~960分鐘內不同模型的評價指標

表1 (c) 961分鐘后不同模型的評價指標
下面討論隨著滑動窗口的長度增加,即輸入數據的周期變長,不同模型平均絕對誤差與均方根誤差的變化情況,結果如圖4所示。

圖4 (a) 不同滑動窗口長度下不同模型的MAE值比較

圖4 (b) 不同滑動窗口長度下不同模型的RMSE值比較
本實驗的輸入滑動窗口長度為180~1440分鐘,即3~24小時,中間每3小時進行一次測試,從圖中可以看到,不同模型下MAE與RMSE的變化趨勢基本相同。當滑動窗口長度為180分鐘時,兩評價指標最低的模型均為LongTransformer,其次為LSTM,最次為Attention-GRU。相較于后兩個模型,LongTransformer的MAE值分別降低了19.07%,29.32%;RMSE值分別降低了13.11%,30.47%。隨著滑動窗口長度增加,小滑動窗口期間表現較好的LSTM模型的兩個評價指標迅速增長,到720分鐘后,評價指標變化平穩,當輸入序列長度為1440分鐘時,LSTM模型的MAE與RMSE值分別為4281.85,4283.68,預測精度降低明顯,故此模型不適用與長周期序列預測。這是因為輸入序列過長,導致LSTM在訓練過程中產生梯度消失,模型參數無法迭代更新。
Attention-GRU模型與LongTransformer模型的精度雖然也隨滑動窗口輸入周期的增加而降低,但評價指標變化相較平穩,當滑動窗口長度為1440分鐘時,表現最優的為LongTransformer模型,MAE值與RMSE值分別為738.60,810.45;其次為Attention-GRU模型,兩值分別為1085.66,1136.01。前者與后者相比,兩評價指標分別降低了31.97%,28.66%。這是因為相較于Attention-GRU,LongTransformer模型能夠更好地提取長距離輸入內部的依賴關系,而忽略數據之間的無關信息。
本文提出了基于LongTransformer的軌道交通裝備及關鍵零部件件剩余壽命預測方法。通過自注意力蒸餾操作中的級聯層輸入減半方法大幅降低了空間復雜度,增強了對長時間序列依賴關系特征的提取能力。實驗結果表明,本文所提出的方法優于兩種較先進的基于循環神經網絡的方法,在剩余壽命預測問題上有更高的準確率。