李學偉,王毅洋,齊永蘭,邢 倩,孟昕元
(1.河南工學院 智能工程學院, 河南 新鄉(xiāng) 453003;2.新鄉(xiāng)市工業(yè)測控電器系統(tǒng)工程技術研究中心,河南 新鄉(xiāng) 453003)
預測性維護是智能制造的關鍵創(chuàng)新點之一[1]。預測性維護通過傳感器技術[2]、工業(yè)物聯(lián)網技術、機器學習算法以及大數據技術,從設備的歷史運行數據中挖掘運行規(guī)律或模式,通過這些規(guī)律或模式,能夠準確有效地實現對設備剩余使用壽命(Remaining Useful Life,RUL)的預測,進而制定合理的維護計劃,以降低維護成本,提高維護效率[3,4]。近十年來,深度學習在RUL預測領域取得了顯著成效[5],Giduthuri[6]首次將深度卷積神經網絡(Deep Convolutional Neural Network, DCNN)引入RUL預測方法中并取得了較好的效果;Chen[7]目前RUL預測主要存在以下問題:(1)基于支持向量回歸(Support Vector Regression, SVR)的預測方法具有對RUL的不同健康狀況使用相同權重向量的局限性[8];(2)DCNN模型在捕捉由故障或異常引起的快速退化趨勢方面是無效的[9];(3)利用LSTM進行RUL預測雖然可以消除計算過程中梯度消失的問題,但其計算耗時長的缺點無法回避。因此,鑒于注意力機制在模型架構上的優(yōu)點,本文意圖設計一種基于Transformer模型的計算耗時少且相對傳統(tǒng)預測算法準確率更高的RUL預測算法。
一般的RUL預測系統(tǒng)大都采用以大數據為基礎的深度學習設計方法,其框架如圖1所示。
圖1 RUL預測系統(tǒng)框架圖
實施預測的具體步驟如下:
步驟1:明確預測目標及目標涉及的范圍,針對預測目標搜集相關數據。
步驟2:對收集到的數據進行初步整合、分析,確定數據預處理方案。
步驟3:進行數據預處理,數據預處理主要包含數據清理、數據轉換、規(guī)范數據、特征選擇等內容。
步驟4:選擇合適的訓練模型,通常情況下,會選用幾種不同的模型進行特征學習,然后比較它們的性能,從中選擇最優(yōu)的模型。在選擇模型時還需要重點考慮以下幾個關鍵點:(1)最后一層是否需要添加softmax或RELU激活層;(2)選擇合適的損失函數;(3)選擇合適的優(yōu)化器。
步驟5:利用測試數據對所選用的模型進行測試,比較不同模型的RUL預測性能。
為了將Transformer模型優(yōu)越的特性引入設備的RUL預測方法中,本文設計了一種改進的Transformer模型。該RUL預測模型是基于注意力機制的Transformer模型,是Vaswani[10]在2017年為語言翻譯任務提出的,在翻譯任務中有良好的表現。Transformer模型的體系結構僅依靠注意力機制來完成翻譯任務,不再使用任何循環(huán)和卷積層,雖然結構簡單,但其在精度和計算速度方面優(yōu)于以前最先進的模型。
在對設備的RUL進行特征學習之前,還需要確定預測的目標函數。
與典型的回歸問題不同,基于數據驅動的預測問題有一個固有挑戰(zhàn)就是需要確定每個輸入數據點的所需輸出值,即預測的目標值。這是因為在實際應用中,如果沒有一個精確的基于物理的模型,就不可能準確地確定每個時間階段設備的系統(tǒng)健康狀態(tài)。一個合理的解決方法是以預測對象在其功能失效前的實際剩余時間作為預測系統(tǒng)的輸出。然而,這種方法間接表示了系統(tǒng)的健康狀況是隨使用時間增加呈線性下降,這將導致RUL預測出現一定的偏差。另一種方法是根據適當的降級模型導出預測系統(tǒng)所需的輸出值。
本文所使用的數據集采用分段線性退化模型,該模型限制了RUL函數的最大值,如圖2所示。最大值是根據觀測值選擇的,每個數據集的數值是不一樣的。分段線性RUL目標函數更有可能避免算法高估RUL預測的性能。
圖2 分段線性RUL目標函數
本文的創(chuàng)新點在于,Vaswani的模型在實現機器翻譯任務時需要使用編解碼結構,而本文提出的模型僅使用了一個沒有循環(huán)結構的前饋網絡,主要由前饋網絡模塊、尺度點積注意力模塊和尺度點積自注意力模塊三部分組成,模型的結構如圖3所示。輸入數據經過輸入Embedding線性處理,在加入輸入序列位置編碼信息以后,分別傳輸給前饋網絡模塊、尺度點積注意力模塊和尺度點積自注意力模塊,最后經過輸出層輸出預測值。接下來對模型中的關鍵模塊進行分別解釋。
圖3 基于注意力機制的Transformer模型架構
(1)輸入Embedding和位置編碼。
該模型的第一部分是輸入Embedding模塊,假設原始輸入樣本數據為XIN∈T×d,其中每一行數據表示在一個時間點上的特征向量,輸入Embedding模塊根據方程(1)給原始輸入施加一個線性變換。
XIE=(XIN·W0+b0)+P,
(1)
其中W0∈d×h是貫穿所有時間區(qū)間的線性變換矩陣,b0∈h表示偏置,P∈T×h是位置編碼矩陣。P和W初始值隨機初始化,并在訓練期間根據模型中其他參數的變化進行更新。由于該模型沒有循環(huán)結構,因此序列的位置信息由位置編碼模塊提供。
(2)前饋網絡模塊。
由輸入Embedding模塊線性變換和位置編碼矩陣合并的輸出XIE∈T×h不能直接輸入給注意力模塊,需要先經過一個全連接前饋神經網絡,然后進行歸一化,依據公式(2)和(3)的計算得到前饋網絡模塊的輸出XFF。
FFN(XIE)=ReLU(XIE·W1+b1)·W1+b2
(2)
XFF=Norm(XIE+FFN(XIE))
(3)
(3)注意力模塊。
在Transformer模型中尺度點積注意力模塊和尺度點積自注意力模塊的核心就是注意力機制,注意力模型的輸入有三個矩陣組成:有關keys的矩陣K∈T×h,有關values的矩陣V∈T×h,有關queries的矩陣Q∈T×h。注意力模塊的輸出是一個銜接矩陣C∈T×h,它是根據公式(4)計算得到的。
C=Attention(K,Q,V)
(4)
在尺度點積注意力模塊中,注意力模塊的三個輸入keys矩陣和values矩陣均等于前饋網絡模塊的輸出XFF,即K=V=XFF,與位置編碼P相似,queries矩陣Q也是隨機初始化并隨著訓練的過程進行參數更新。然后根據公式(5)進行歸一化處理。
XSDA=Norm(Q+Attention(XFF,XFF,Q))
(5)
尺度點積自注意力模塊跟尺度點積注意力模塊非常相似,唯一的不同是其注意力模塊的三個輸入完全相同。該結構的目標是利用自注意力機制獲取一個序列的深度上下文信息,如公式(6)所示。
XSDSA=Norm(XSDA
+Attention(XSDA,XSDA,XSDA))
(6)
(4)輸出層。
我們都知道識字寫字教學在小學語文教學中占有極其重要的基礎地位,因此,我們需要扎實上好每一堂識字寫字課。漢字教學不同于普通的漢字研究,而小學生的記憶、想象、思維及其他活動主要基于圖像。在識字教學中,我們需要挖掘漢語言文字在幾千年歷史發(fā)展中積累的大量文化信息,從而增加識字教學的知識內容。整個過程應該集科學、知識和趣味為一體,也讓學生進一步感受語言文字的獨特魅力。
以上就是本文所提出的基于注意力機制Transformer模型的完整流程。
為了對本文所提出的RUL預測模型的性能進行深度分析,接下來通過一系列的實驗測試,與曾經或目前在RUL預測方面表現較好的算法如SVR、DCNN和LSTM進行對比。
由于以往學者在做RUL研究時均采用CMAPSS或N-CMAPSS數據集進行模型測試,其中N-CMAPSS可以促進預測性維護應用的深度學習算法開發(fā),這些算法更容易轉移到實際應用中,此外,N-CMAPSS數據集是機器學習社區(qū)測試新的時間序列預測算法的重要資源。因此,為了方便在相同標準下對比深度學習模型的性能,本文采用N-CMAPSS數據集對Transformer模型進行測試。接下來對實驗過程進行詳細描述。
N-CMAPSS數據集描述的是一批飛機發(fā)動機在真實飛行條件下,由正常運行到出現故障的狀態(tài)曲線數據,數據集利用商用模塊化航空推進系統(tǒng)仿真動力學模型生成。該數據集由NASA公司的Ames聯(lián)合蘇黎世聯(lián)邦理工學院和帕洛阿爾托研究中心合作提供,有關數據集的自述文件可以在參考文獻[11]中找到。在預測中,準確估計飛機發(fā)動機的剩余使用壽命是一個關鍵問題。通常一些傳感器如振動傳感器,主要用于收集發(fā)動機運行信息,并將其作為估計RUL的特征。
N-CMAPSS數據集包含來自128個單元的八組數據和影響所有旋轉子部件的流量和效率的七種不同故障模式。每組數據都存儲在HDF5格式的文件中。數據集可在存儲庫中公開訪問,數據存儲庫中還提供了Jupyter notebook形式的腳本,以演示如何加載、復制數據,并對數據的子集進行簡單分析。每個數據文件提供兩組數據:訓練數據集和測試數據集。每個數據集都包含六種類型的變量:操作條件W、測量信號Xs、虛擬傳感器Xv、發(fā)動機健康參數θ、RUL標簽和輔助數據(即單元號U和飛行循環(huán)號C、飛行等級FC和健康狀態(tài)Hs)。
每個發(fā)動機的退化模型由三部分組成:初始退化、正常退化和異常退化。通過調整這些發(fā)動機子部件的流量和效率(即發(fā)動機健康參數θ)來模擬退化效應。由于制造和裝配公差,發(fā)動機子部件上有不同程度的初始磨損。雖然這種由初始磨損而導致的退化并不被認為是異常的,但會對部件的使用壽命產生影響,因此,通常會利用各種子部件的流量和效率的變化來模擬這種初始磨損。
為了在測試數據集上公平地對比預測模型在準確率方面的性能,需要一些客觀的評價標準。在本實驗中,主要采用兩種評價標準:評價函數和均方根誤差(RMSE)。這兩個評價指標值越低,表示對應模型的準確率越高。具體說明如下:
(7)
該評價函數對后期預測(執(zhí)行維護決策的時間較晚)的程度比早期預測要多,雖然它沒有太大的危害,但可能會浪費維護資源,而且,此功能有幾個缺點。最顯著的缺點就是單個異常值(具有較晚的預測)將主導整體性能得分(請參考圖4右側的指數增長),從而掩蓋了算法的整體準確性。另一個缺點是缺乏對算法預測范圍的考慮。預測范圍在評估故障前的時間,算法能夠在某個置信水平內準確估計RUL值。最后,這個評價函數更加偏向于通過低估RUL來人為地降低分數的模型或算法。
除了評價函數之外,估計RUL的RMSE也被用作預測模型準確率的評價指標。選擇RMSE是因為它對早期和晚期預測給予相同的權重。將RMSE與評價函數結合使用將避免針對一種評價指標人為降低分數而導致另一種評價指標分數上升的情況。RMSE定義如式(8)所示。
(8)
兩個評估指標之間的比較圖如圖4所示??梢杂^察到,在較低的絕對誤差值下,評價函數產生的值低于RMSE。這兩個評估指標的相對特征將在本文后面部分討論實驗結果時應用。
圖4 不同誤差值對比
本文所有的深度學習模型運行在GPU工作站上,GPU工作站配置為酷睿TMi9-10900K CPU@3.7GHz,32G內存,1塊NVIDIA GeForce RTX3080Ti GPU。在整個實驗過程中,使用學習率為0.001的Adam Optimizer作為優(yōu)化方法,在訓練階段對模型進行隨機梯度下降。模型的架構使用python v3.7.1 + pytorch1.7.0構建。
根據RUL預測系統(tǒng)的預測流程,在正式進行模型訓練和模型測試之前,首先要對原始數據進行探索和預處理,使模型輸入的數據更加規(guī)范,這樣才能體現出模型真實的性能。圖5顯示了N-CMAPSS數據集中DS02組數據由場景描述變量w給出的模擬飛行數據的核密度估計:高度(alt)、飛行馬赫數(Mach)、油門-解析器角度(TRA)和風扇入口處的總溫度 (T2)。圖6顯示了一個典型的單個飛行周期的示例,該示例由場景-腳本變量的軌跡給出。每個飛行周期都包含不同長度的記錄,涵蓋對應于飛機運行的不同航線的爬升、巡航和下降飛行條件(alt >10,000英尺),其余單元遵循類似的飛行軌跡。
圖5 模擬飛行數據的核密度估計
圖6 單個飛行周期的示例
為了說明運行條件對異常退化開始的影響,圖7給出了DS02組數據三個單元的高壓渦輪效率(HPT Eff mod)、低壓渦輪效率(LPT_Eff_mod)和低壓渦輪流量(LPT flow_mod)的退化軌跡。每個選定的單元對應一個不同的飛行級別。單元11為長途飛行單元,異常退化最早出現在第19次循環(huán)。單元14為短飛行長度單元,起始周期為第36次循環(huán)。最后,單元15為中等飛行長度單位,其起始周期為第24次循環(huán)??梢杂^察到單元14在后期出現異常退化,因此可以進行更多的飛行。
圖7 影響低壓渦輪效率和低壓渦輪流量的退化痕跡
在經過數據探索和一系列預處理以后,開始進行模型訓練和模型測試。表1用RMSE值說明了四種模型在四個子數據集上的比較結果。結果表明,無論運行條件如何,Transformer模型在所有子數據集上均比SVR、DCNN和LSTM獲得了更低的RMSE值,表明本文所提出的深度學習模型能夠從樸素神經網絡中找到比淺層特征更多的信息特征。在四種方法中,SVR在所有數據上均獲得了較高的RMSE值,說明單純的機器學習模型甚至會損害性能,也進一步驗證了探索現代深度學習技術的必要性。在單個工況數據集即第一和第三子數據集上,DCNN比SVR的RMSE值更低;在多個工況數據集即第二子數據集和第四子數據集上,LSTM比SVR和DCNN的RMSE值更低,而本文所提出的Transformer模型在多個數據集上取得了較LSTM更好的效果。
表1 N-CMAPSS數據集中不同模型的RMSE對比
同樣,在相同的數據集中,表2描述了四種方法在評價函數方面的比較結果??梢钥闯?,在多工況數據集即第二、第四數據集上,以及在單一工況數據集即第一子數據集上,Transformer比SVR、DCNN和LSTM的得分值更低(更好)。在四種方法中,無論運行條件如何,SVR在所有四個子數據集上都比其他方法獲得了更高的評分值(最差的結果)。Transformer在一個單一的操作條件數據集即第三個子數據集上的得分略高于(較差)DCNN,盡管RMSE值較低。再加上每個評價指標的特征,這意味著稍微高的分數可能是由預測RUL的某些異常值造成的?;谶@些觀察,實驗發(fā)現RUL估計方法的性能還取決于它們的運行條件。
表2 N-CMAPSS數據集中不同模型的評價函數對比
在分別利用RMSE和評價函數對預測模型進行評價中,本文使用的Transformer模型較LSTM模型的參數指標非常接近,但其模型訓練耗時卻相差較多,前者平均耗時3分30秒,后者平均耗時1.5小時,模型訓練效率得到大幅度提高。
目前工業(yè)核心設備的RUL預測主要存在對RUL的不同健康狀況使用相同權重向量的局限性,在捕捉由故障或異常引起的快速退化趨勢方面無效,以及利用循環(huán)卷積的預測模型計算耗時長的缺點。本文設計了基于Transformer模型的RUL預測算法,分別采用評價函數和RMSE作為衡量預測模型準確率的評價指標,在公開的N-CMAPSS數據集上檢驗它的RUL預測性能,實驗結果表明,該預測模型的準確率顯著優(yōu)于文獻中廣泛用于RUL估計的現有最先進的深度學習模型如SVR、DCNN和LSTM模型。在未來的研究中,希望進一步探索新的深度學習技術,以解決預測性維護領域中的各種新問題。