王欣, 黃佳琪, 許雅璽
(1.中國民用航空飛行學院計算機學院, 廣漢 618307; 2.中國民用航空飛行學院經濟與管理學院, 廣漢 618307)
如今預測與健康管理(prognostics and health management,PHM)技術應用在很多復雜的工業系統領域,其中,通過提前預測系統中可能存在的故障,預測相關設備在失效前的剩余使用壽命(remaining useful life,RUL)是PHM的一個重要組成部分[1]。發動機作為飛機的核心器件,對安全性要求嚴格,其內部結構復雜,工況多變,運行期間容易受到多種因素的影響。通過對發動機上的傳感器部件進行監控,分析傳感器的數據,掌握發動機內部的健康狀態,從而進一步挖掘其中隱藏的故障信息,對發動機的RUL進行預測[4]。發動機剩余壽命的預測,有效保障了發動機的平穩運行和狀態維護,一定程度上減少了發動機在運行中發生災難性故障的可能性,對航空業的發展有一定的促進作用[5]。
RUL預測本質是一個與時間序列相關的回歸問題。航空發動機的RUL預測通常包括基于物理模型的預測、基于統計方法的預測、基于人工智能方法的預測以及基于混合模型的預測[1]。基于物理模型的預測,通常需要領域專家對其發動機內部結構有充足的了解,掌握其運行原理,且有時面對系統多個內部變量的共同作用,難以準確構建預測模型。基于統計方法的預測需要利用統計學原理,針對復雜設備故障概率給出設備的維護建議。二者都需要掌握一定的相關領域的專業知識,而且當設備更復雜時,退化機理難以通過物理模型和經驗模型描述,無法準確預測RUL,因此這兩種方法受到了一定程度的限制。基于數據驅動的方法無需系統的先驗知識,只需用搭建相應的網絡模型描述輸入數據與輸出數據關系即可,無需建立復雜的退化機理模型,通過機器學習或深度學習的方法挖掘數據之間的隱含信息進行剩余壽命預測,是一種重要的RUL預測手段。
針對工業設備內部傳感器記錄的參數,有多方面的信息需要去挖掘,于是,有眾多學者通過使用卷積神經網絡(convolutional neural networks,CNN)方法,對序列數據的空間特征進行提取。Miao等[6]通過自適應卷積神經網絡,自適應調整感受野捕獲特征的基本信息,在不同工況下預測軸承的RUL。郭俊峰等[7]搭建了堆疊的膨脹卷積神經網絡的預測模型,擴大了感受野,接收了更多的歷史數據的輸入,提高了長序列信號的航空發動機RUL預測。雖然CNN方法在空間特征提取上具有較好的優勢,但是難以提取長期數據之間的依賴關系,當面對多維且長序列的傳感器數據時,不足以充分挖掘傳感器時間維度上的隱藏信息,因此便有了RNN和注意力機制的應用。Li等[8]提出了一種基于注意力的方法,在RNN中對不同的時間步長進行加權來提高RUL預測的性能。Ragab等[9]提出了一種Encoder-Decoder模型,在網絡中嵌入長短期記憶單元(long short-term memory,LSTM),通過注意力層來選擇重要的輸入信息,傳遞給解碼器;并通過給定當前輸入序列,讓解碼器來預測下一個輸入序列。通過計算預測序列和實際序列之間的差值、RUL標簽與真實標簽之間的差值來聯合優化損失,從而增強模型的預測能力。王欣等[10]提出了一種基于注意力與長短期記憶(directional long short-term memory, LSTM)網絡的航空發動機剩余壽命預測模型Attention-LSTM,并融合注意力機制加強模型對特征之間的學習,提高發動機剩余使用壽命預測精度。慎明俊等[11]將融合深度置信神經網絡和長短時記憶神經網絡,充分利用數據的相關性,提高了軸承壽命預測的準確性。
雖然以上方法在RUL估計問題上有著很大的優勢,但是在面對非常長的序列數據時,由于其網絡結構的局限性,容易丟失重要的信息。航空發動機上的健康監測傳感器通常以高頻率記錄數據,飛行時間通常達數小時,每次飛行需測量的時間序列很長。因此,為了改善RNN在預測長序列數據時存在的梯度消失和爆炸問題,以及CNN的局限性,本文研究使用了一種改進版的Transformer架構來進行時間序列預測。Transformer模型使用自注意力機制學習序列間的依賴關系。但是在對長時間序列數據進行預測時,Transformer往往也會暴露出部分缺陷,如高時間復雜度、高內存占用率,動態解碼對模型推理速度的限制等問題。為了改善上述問題,本文研究在借鑒Informer[12]的基礎上,結合概率稀疏自注意力(ProbSparse Self-Attention)和擴張因果卷積進行航空發動機的RUL預測,上述模型主要具有三個顯著的優點:①應用ProbSparse Self-Attention,能夠篩選出所有最重要的一部分query,能夠大大地減少計算的時間復雜度和空間復雜度;②提出了自注意力層的蒸餾操作,通過卷積核池化層減少網絡參數量;③將擴張因果卷積與Transformer結合,以獲得指數級的感受野增長。
商用模塊化航空推進系統仿真(commercial modular aero-propulsion system simulation, C-MAPSS)數據集發布于2008年,是航空發動機剩余壽命預測領域的典型數據集,目前大量研究工作都是基于此數據集。2021年新發布了N-CMAPSS數據集[13],N-CMAPSS不僅考慮了商業飛機上記錄的真實飛行條件,還將退化過程與其操作歷史聯系。因此預測在長時間運行、退化模式更復雜情況下的航空發動機剩余使用壽命,現使用ProbSparse Self-Attention取代原始Transformer中的常規自注意力機制,結合擴張因果卷積來提高模型對長序列信息的捕獲能力,以此提高預測效率和精度。
模型由編碼器和解碼器兩部分構成,整體結構如圖1所示。在基于Transformer模型結構基礎上,將內部的自注意力部分替換為ProbSparse Self-Attention,且EncoderLayer之間通過擴張因果卷積與池化層相連接,以此優化網絡中的參數數量。經過預處理的數據首先進行位置編碼,使用位置編碼可以讓神經網絡更好地理解數據的時間關系,從而改善模型的準確性;編碼器部分通過多頭自注意力機制以及卷積神經網絡對傳感器數據進行時間和空間上的特征提取,輸出一個包含特征隱藏信息的序列Feature Map,作為解碼器的一部分輸入。解碼器與編碼器類似,還包含一個多頭注意力層,用于將編碼器的輸出與解碼器自身的表示結合起來,以便更好地預測下一個飛行周期的RUL。在訓練階段,解碼器部分包含兩部分輸入:一是編碼器部分最后的輸出;二是標簽RUL的輸入,要預測的部分填充為0,通過兩層注意力層,將解碼器的輸出映射到RUL作為輸出。

圖1 模型結構Fig.1 Structure of model
編碼器由位置編碼層、注意力層、前饋神經網絡層、激活函數、殘差連接和歸一化層等堆疊組成,位置編碼層通過使用正弦和余弦函數將輸入向量中的元素添加到位置編碼向量中來編碼時間序列數據中的序列信息。序列信息經過注意力層整合,使得模型更關注時間序列中重要的時間節點,大幅縮減時間維度;通過前饋神經網絡層和卷積層,進一步提取傳感器空間特征;在編碼器層之間通過擴張因果卷積相連,最后映射為向量傳遞給解碼器。具體結構如圖2所示。

圖2 編碼器架構Fig.2 Encoder part diagram

圖3 解碼器架構Fig.3 Decoder part diagram
解碼器與編碼器類似,不同之處在于解碼器中有兩個注意力層,第一個注意力層使用了掩碼機制,以確保時間序列數據點的預測僅依賴于歷史信息。第二個注意力層也可以稱為交叉注意力機制(cross-attention),使解碼器能夠對發動機歷史退化信息進行有效建模。
為了使模型能夠利用輸入信息中的時間順序信息,在編碼器和解碼器的入口添加位置編碼層,在輸入序列中注入每個值的一些相對或絕對位置信息[14]。在這里使用正弦和余弦函數對序列進行位置編碼,具體公式為
(1)
(2)
式中:PE為位置編碼;pos為時間點位置;dmodel為傳感器維度;i為向量中索引,偶數位置與奇數位置分別使用sin和cos函數編碼位置信息。
擴張因果卷積[15]結合了因果卷積核擴張卷積的思想,因果卷積可以確保信息不會泄露,即t時刻的數據是根據t時刻之前的信息進行預測,但是當網絡層數加深的時候,會影響模型訓練速度,擴張卷積的引入會改善此問題。擴張卷積通過跳過部分值捕獲更長的歷史序列信息,而感受野隨著網絡層數增加呈指數形式增長,因此,擴張因果卷積的引入有效地增加了感受野,也避免了網絡層數加深帶來的模型訓練效率下降等問題。擴張因果卷積結構示意圖如圖4所示。

Input:輸入;Output:輸出;padding:填充;d:擴張因果卷積的擴張率
自注意力機制是Transformer中的核心部分,引入Self-Attention后更容易捕獲數據中長距離的依賴關系,傳統的自注意力通過計算當前時間點與其他時間點的相關性,時間復雜度和空間復雜度為O(L2)。而概率分布稀疏自注意力(ProbSparse Self-Attention)通過利用自注意力概率分布的稀疏性,在計算當前時間和歷史時間點的相關性時,忽略掉關聯性非常小的時間點信息,使時間和空間復雜度均達到了O(LlogL),有效地減小了Attention計算的復雜度,提高了模型運算效率[10]。
在傳統的Self-Attention中,基于查詢向量Q、鍵向量K、內容向量V,通過計算關聯矩陣,再經過Softmax函數得到注意力值,相應計算公式為
(3)
式(3)中:A為Attention。
在ProbSparse Self-Attention,允許每個key 只關注u個主要的查詢,即
(4)
(5)

N-CMAPSS數據集是由美國國家航空航天局(National Aeronautics and Space Administration,NASA)開發的商用模塊化航空推進系統仿真(CMAPSS)模型生成,在原始的C-MAPSS數據集上進行了改進,N-CMAPSS數據集提供了實際飛行條件下未知初始健康狀態的渦扇發動機數據集的全面運行到故障退化軌跡。本文研究采用N-CMAPSS中的DS02數據集作為實驗對象,該數據集包含9臺發動機以及2種故障模式。DS02數據集具體描述如表2所示,訓練集中第2、5和10號機組的故障模式是高壓渦輪(high-pressure turbine, HPT)效率下降;第16、18、20機組以及測試單元11、14、15的故障模式更為復雜,包括低壓渦輪(low-pressure turbine, LPT)效率和流量、高壓渦輪(high-pressure turbine,HPT)效率的下降。表中展示了不同編號發動機數據的大小和從正常到失效的周期,每個飛行周期包括爬升、巡航和下降過程且發動機的初始健康狀況未知。數據集包含6類變量:操作條件(W),測量屬性(Xs),虛擬傳感器讀數(Xv),發動機健康參數(θ),RUL標簽以及輔助數據,為下一步的數據預處理提供幫助。
為便于分析發動機的狀態參數在退化過程中的變化趨勢,以飛行時間為橫坐標,各自傳感器的狀態監測值為縱坐標,以編號為U5的發動機從正常運行到失效的傳感器為例分析參數變化,如圖5所示。在一個完整生命周期內,發動機健康狀態的參數hs初始狀態為1,表示發動機性能一切正常,隨著發動機的運行,hs在某一時刻變為0,表示發動機性能此時已經開始出現退化趨勢,各部件性能狀態已不是初始狀態;RUL從初始的89逐漸降為0。

橫坐標表示發動機運行時間,縱坐標表示參數具體數值;Nf、Nc、Wf分別為物理風扇轉速、物理核心轉速、燃料流量;unit、cycle、Fc、hs分別為發動機單元、飛行周期、航班類別、健康狀態
2.2.1 歸一化
由于原始變量具有不同的尺度,若直接輸入模型中訓練會大幅降低模型學習和收斂速度,因此在訓練前,應先對原始數據進行規范化處理。本文研究采用歸一化對原始數據進行處理,使數據量綱范圍處于[0,1],即
(6)
式(6)中:xi為此傳感器的值;xmax和xmin分別為此傳感器的最大值和最小值。
2.2.2 數據切片


圖6 滑動窗口切片Fig.6 Sliding window slice
2.2.3 數據分組
在對航空發動機的RUL進行預測過程中,也需要綜合考慮多種外在因素對發動機性能的影響,工況是影響航空發動機剩余壽命預測的重要因素之一。工況對發動機疲勞壽命、腐蝕程度、可靠性等均有不同程度的影響:發動機在不同工況下的使用壽命和載荷大小不同,例如高溫、高速、高海拔等環境下的使用會使發動機受到更大的熱力和機械應力,從而加速疲勞損傷,潮濕或腐蝕性會加速發動機的腐蝕損傷,影響其可靠性和穩定性,增加了故障的風險。
因此,在進行航空發動機剩余壽命預測時,需要考慮工況對發動機壽命的影響。在表3的基礎上,可以進一步對數據集進行劃分,可以將表示索引的如發動機編號,飛行周期數、飛行類別分為索引組,這幾個參數對于預測發動機剩余壽命沒有作用,只是為了區分不同發動機的飛行周期和飛行類別;將表示工況的4個參數分為一組;剩余38個傳感器讀數分為一組。具體分類如表3所示。
2.2.4 實驗環境及超參數設置
模型在訓練過程中受參數影響較大,因此需要選取最佳的參數組合來增強模型的魯棒性。對于6個訓練單元(u=2,5,10,16,18,20),按照9∶1的比例把數據集隨機劃分成訓練集和驗證集,剩下的3個單元(u=11,14,15)作為測試集。采用發動機RUL直接映射方法,將訓練好的數據樣本輸入訓練好的神經網絡中,最后經過一個全連接層輸出RUL值,全連接層激活函數采用Gelu函數,優化器采用Adam。每次試驗輪數設置為50,進行5次重復實驗,以5次實驗的RMSE和Score均值作為評價標準。
采用Hyperband 超參數動態優化算法和StratifiedKFold優化模型性能,對實驗中涉及的部分參數進行組合實驗,窗口長度L={30,50,80,100},卷積核尺寸k={3,5,10},批訓練量batch size={32,64,128,256},初始學習率設為0.001,每2個epoch過去模型性能沒有提升則學習率衰減為2倍,均方根誤差(root mean square error,RMSE)作為模型的損失函數,早停率設為5,當RMSE值在連續5個epoch沒有下降時停止訓練。實驗硬件設備為Intel(R)Xe-on(R)W-2123(3.60 GHz),內存16.0 GB,顯卡為NVIDIA Quadro P2000,編程環境為Python3.6,框架為Pytorch1.8.0。一些重要的參數如表4所示。
算法性能評價指標使用均方根誤差(RMSE)和NASA的評分函數(Score),具體公式為
(7)
(8)
式中:m*為測試樣本總數;ypred為預測值;ytrue為真實值;α取值為1/13(預測值小于真實值時)或1/10(預測值大于真實值時),不同的懲罰系數體現出對壽命預測結果不同的懲罰程度。
2.4.1 編碼器、解碼器層數對比實驗
相比多層編碼器,單一的編碼器層不足以提取發動機監測數據中深層次信息,但是過多的編碼器層又增大了模型的復雜度、訓練時間等,效果也不一定最優,因此為了探索適合的編碼器層數,進行多次對比實驗,不同層數對應的模型指標如表5所示。
當解碼器層數固定,隨著編碼器層數的增多,RMSE和Score呈先下降后上升趨勢,說明了當網絡層數加深的時候,能更充分地提取發動機退化特征,網絡效果表現良好;但是當層數超過某個數量的時候,模型性能下降,訓練時間也明顯增加,因此綜合考慮模型復雜度和訓練時間,將編碼器層數設置為3,解碼器層數設置為2。
2.4.2 多頭注意力頭數對比實驗
模型在對當前位置信息編碼時,有時會過于將注意力集中于自身位置,因此使用多頭注意力機制改善這一問題,同時處理多個輸入序列,自動學習到不同輸入序列之間的關聯,然后將所有學習到的特征融合起來,捕獲數據間的依賴關系。一般來說,頭數越多,模型的表達能力就越強,可以更好地利用輸入序列之間的關聯,從而提高模型的準確率。但頭數過多可能引起過擬合,計算復雜度也會升高。為了尋找最優的注意力頭數,在上一步最優編碼解碼器層數的基礎上,設置了如表6所示的對比實驗,當注意力頭數為8時,模型的性能最好,推理時間也最短,因此設置多頭注意力個數為8。
2.4.3 消融實驗
為了驗證模型內部組件對于實驗精度的影響,將模型分為幾個部分進行訓練,Transformer為基準模型,Transformer_M1在原Transformer基礎上,將標準的自注意力換為ProbSparse Self-Attention,Transformer_M2在Transformer_M1基礎上,注意力層后加入卷積操作;基于M2,Transformer_M3把M2卷積操作替換成為擴張因果卷積,此模型也是本文提出的模型。結果如表7所示。
M1模型相比原始的Transformer模型精度有了很大提高,ProbSparse Self-Attention也大大降低了計算復雜度;M2模型基于M1在注意力層后加入卷積操作,使得模型訓練速度和精度得到提升,但是改進效果不顯著;M3模型在M2的基礎上把卷積操作替換成為擴張因果卷積,擴大了感受野,增強了模型的學習能力,使訓練時間進一步減少,有效提高了模型推理效率。
2.4.4 RUL預測中的工況分析
DS02數據集中,傳感器參數呈現周期長、特征維數多的特點,僅以U5為例,在89個飛行周期中,傳感器記錄的參數量達到(1 033 420,47),所有訓練集中數據量達(5 263 447,47)之多,測試集三個單元的數據量為(1 253 743,47)。為了減少模型的計算量,對所需的數據進行下采樣,即隔位取值,每隔k個時間步取一行數據。對于訓練數據集,下采樣步數為10步,對于測試數據集,下采樣步數為5步,采樣后的訓練集和測試集分別為(526 344,47)、(250 748,47)。本節設置對照組,分析發動機工況對剩余壽命預測的影響,搭建了以下實驗,具體描述如表8所示。
在預測模型中可以發現,加入運行條件后,各項實驗指標都出現了明顯的優化,結果如表9所示。這證明了在RUL預測中融入實際運行條件對于模型性能提升和預測精度的重要性和有效性。
以U11和U15為例,將不同工況下模型對發動機RUL的預測值進行整合,結果如圖7所示,由圖7可知,在對發動機RUL進行預測的過程中,加入工況參數,預測精度得到提高,Transformer_M3模型的預測值曲線與真實值擬合程度也優于其他三個模型。本文數據集中表示海拔高度、馬赫數、油門解析器角度、風機入口總溫度的4種工況參數,在一定程度上記錄了溫度、海拔、濕度、轉速等工作條件,都直接或間接影響著發動機的性能退化過程。

紫色表示真實值的RUL
2.4.5 與其他方法對比
此節對比實驗,將測試集的3個發動機單元數據集進行合并,為了充分驗證本模型的優越性,將本模型與其他常見的RUL預測方法進行對比,結果如表10所示。

表1 ProbSparse Self-Attention計算過程Table 1 ProbSparse Self-Attention calculation process

表2 DS02數據集描述Table 2 DS02 data set description

表3 DS02數據集分組Table 3 Grouping of DS02 data sets

表4 模型參數設置Table 4 Model parameter settings

表5 編碼/解碼器層數的結果比較Table 5 The result compares the number of encoding/decoder layers

表6 不同注意力頭數各指標對比

表7 模型消融實驗Table 7 Model ablation experiment

表8 工況分析模型描述Table 8 Description of working condition analysis model

表9 各方法在測試集上的評價指標Table 9 Evaluation indexes of each method on the test set

表10 與其他方法的對比實驗Table 10 Comparison experiment with other methods
本文模型在RMSE值和推理時間上取得了最優效果,Score略高于擴張因果卷積模型,這證明擴張因果卷積模型在處理長序列時具有良好的性能,能夠處理時間序列中的長期依賴關系,并且訓練速度較快。LSTM處理長序列時存在梯度消失和梯度爆炸的問題,導致訓練困難,并沒有取得較好效果;CNN處理時間序列數據中能夠捕捉局部的時間特征,相比LSTM和BiLSTM都有明顯的提升;MLP不適用于處理長期依賴關系的時間序列數據,Transformer相比LSTM預測效果略微提升,由于原始的多頭自注意力機制的存在,增大了模型復雜度,導致推理時間變長; N-CMAPSS數據集相比C-MAPSS時間序列變長,特征維數變多,本模型中通過結合ProbSparse Self-Attention注意力,使得模型更關注時間序列中重要的時間節點,減小了時間和空間復雜度,使得在長時間序列數據預測中更有優勢。
將數據輸入網絡模型中,迭代50次進行訓練,最后在測試集[11,14,15]3個發動機單元進行驗證,預測結果和真實結果的對比曲線圖如圖8所示。

Pred、True分別為航空發動機剩余使用壽命的預測值和真實值;Count為預測值和真實值誤差的統計
圖中給出了真實值的95%置信區間,絕大多數預測值分布在置信區間內,U11、U14、U15三個單元的R2分數分別為0.94/0.91/0.92,這也表示模型對數據的擬合程度較好。可以發現在預測初期,預測值曲線都是先低于實際曲線,與真實值相差較大,這可能是運行初期發動機退化特征不明顯,模型學習到的發動機退化特征有限,從而結果存在一定誤差。隨著發動機運行時間增大,當RUL預測到達中后期時,曲線收斂速度加快,與實際曲線擬合更緊密,波動范圍更小。說明中后期退化特征也更加明顯,模型能更加充分的提取發動機的退化信息,因此,預測值與真實值也更接近,從而使預測值更準確。
在圖8(b)對編號為U14的發動機RUL預測過程中,前一半周期的預測值偏小,整體預測效果明顯不如U11和U15,由表2可知,U14發動機對應的數據量只有0.16M,相對于其他兩臺發動機,U14數據量偏小,模型未能充分學習到發動機退化特征,無法精確預測發動機的RUL,造成前期預測偏差加大。
為了進一步探究所提框架的RUL預測精度,統計了其在測試樣本和每個子集上的RUL預測偏差,如圖8(d)、圖8(e)和圖8(f)所示。由圖8可知,RUL的預測偏差接近正態分布。大部分預測偏差集中在較小的偏差區間,只有少量預測偏差集中在較高的偏差區間,以上表明所提模型具有良好的RUL預測性能。
提出了一種基于概率稀疏自注意力的Transformer模型用于航空發動機的剩余壽命預測,用ProbSparse Self-Attention取代原始Transformer中的常規自注意力機制,使得模型更關注時間序列中重要的時間節點,大幅縮減時間維度,減小了時間和空間復雜度;通過注意力層整合后的信息,進一步通過前饋神經網絡層和卷積層,提取傳感器的空間特征,編碼層之間通過擴張因果卷積相連接,擴大了感受野,提高了模型對長序列信息的捕獲能力。針對N-CMAPSS數據集中長序列、高維度的特點,對訓練集和測試集進行下采樣,分析消融實驗和對比實驗結果,實驗結果表明了本文模型對于長序列數據有著良好的預測能力,進一步提升了模型的訓練效率,有著更好的應用前景。但是本模型所使用的注意力機制只在局部網絡中取得了良好的表現效果,若要與其他模型結合使用,證明概率稀疏自注意力機制的泛化性和有效性還需進一步研究。