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