房紅征
(1.青海民族大學 計算機學院,西寧 810007; 2.北京航天測控技術(shù)有限公司,北京 100041;3.北京市高速交通工具智能診斷與健康管理重點實驗室,北京 100041;4.裝備全壽命周期狀態(tài)監(jiān)測與健康管理技術(shù)與應(yīng)用國家地方聯(lián)合工程研究中心,北京 100041)
在發(fā)動機等典型設(shè)備的故障診斷中,具有較好的非線性問題處理能力的神經(jīng)網(wǎng)絡(luò)等方法得到了很多成功的應(yīng)用。隨著人工智能科學的發(fā)展,機器學習算法不斷豐富,學習深度不斷加深,性能不斷提高,基于深度學習方法得到廣泛應(yīng)用,在圖像、視覺和智能對弈等領(lǐng)域取得了空前的成功[1-2]。深度學習方法是多層表示的表示學習方法,多層表示由一個從低到高的非線性簡單模塊網(wǎng)絡(luò)獲得,每個模塊將表示從一個層次(起始于原始輸入)轉(zhuǎn)化至另一個更高的更抽象的層次。深度學習是機器學習的一個分支,基于一個嘗試使用多復雜結(jié)構(gòu)處理層或多非線性變化來模型化高層次抽象的算法集。
常見的深度學習方法包括深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network, DNN)[3-4]、深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)[5-6]、遞歸神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)[7]、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)等[8-9]。其中,卷積神經(jīng)網(wǎng)絡(luò)(CNN)作為一種重要的深度神經(jīng)網(wǎng)絡(luò)方法,可以為識別二維形狀提供多層感知器,對于平移、縮放、傾斜或其他形式的變形具有高度不變的特點,因此更適合于用于時間序列和語音信號的處理,在模式識別各個領(lǐng)域都取得了很好的成果[10]。此外在工業(yè)生產(chǎn)流水線上對磁片的缺陷檢測、潛射武器健康狀態(tài)評估也有了初步應(yīng)用[11-12]。
基于卷積神經(jīng)網(wǎng)絡(luò)的預測方法已經(jīng)有了一些研究。文獻[13]利用CNN方法權(quán)值共享的特性帶來的減少網(wǎng)絡(luò)參數(shù)數(shù)量、降低訓練難度、便于網(wǎng)絡(luò)優(yōu)化的優(yōu)勢,對飛行器的航跡進行了預測。文獻[14]利用改進卷積神經(jīng)網(wǎng)絡(luò)DropSample訓練方法構(gòu)建短時交通流量預測模型,并利用Adam算法的優(yōu)化器對預測模型進行優(yōu)化,與傳統(tǒng)的CNN、卡爾曼濾波、BP神經(jīng)網(wǎng)絡(luò)等方法相比取得了更高的預測精度。文獻[15]建立了一種用于太陽能輻照度預測的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),針對CNN預測模型因為超參數(shù)選取不當而導致預測性能差的問題,利用融合算法對CNN網(wǎng)絡(luò)的超參數(shù)進行優(yōu)化,有效地提高了CNN的預測性能。但是目前在發(fā)動機故障預測領(lǐng)域的應(yīng)用較少。本文針對卷積神經(jīng)網(wǎng)絡(luò)故障預測方法進行了研究,基于發(fā)動機試驗仿真數(shù)據(jù)對提出的方法進行了驗證,并與其它一些傳統(tǒng)的方法進行了比較,驗證結(jié)果表明,提出的基于卷積神經(jīng)網(wǎng)絡(luò)的預測方法具有較好的可行性和效果,可作為開展發(fā)動機PHM技術(shù)研究的參考。
卷積神經(jīng)網(wǎng)絡(luò)的模型構(gòu)建如圖1所示。CNN具有局部連接、權(quán)值共享、池化操作以及多層結(jié)構(gòu)等特點,一方面使得CNN可以有效提取局部特征,并通過網(wǎng)絡(luò)參數(shù)量的減少從而降低訓練過程的難度;另一方面對于平移、縮放、傾斜或其他形式的變形具有不變性,使其適用于時間序列和語音等信號的處理;此外,其多層結(jié)構(gòu)的特點還具有比其他方法更強的學習與特征表達能力。
圖1 卷積神經(jīng)網(wǎng)絡(luò)模型構(gòu)建示意圖
卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)包括輸入層、卷積層、激活層、池化層、全連接層和輸出層等。CNN方法的應(yīng)用首先是進行卷積層CNN,并通過卷積+池化的方法提取出某個時間點特征之間的空間信息,具體包括:
1)卷積層:對整體數(shù)據(jù)做卷積,通過多個卷積核來提取不同角度的空間信息;
2)池化層:減少模型的參數(shù)維度,提高模型訓練的效率。
CNN的訓練算法分為兩個階段:前向傳播階段:該階段首先需要從樣本集中取樣并輸入網(wǎng)絡(luò),然后再計算相應(yīng)的實際輸出。后向傳播階段:需要先計算真實結(jié)果與預期結(jié)果之間的差值,然后再根據(jù)最小化誤差的方法調(diào)整權(quán)重矩陣。
基于CNN的預測方法的流程如圖2所示。首先,對發(fā)動機的故障預測試驗數(shù)據(jù)集進行預處理,將相應(yīng)的數(shù)據(jù)進行歸一化。然后準備用于訓練和測試的數(shù)據(jù)集,其中每個樣本包含時間窗內(nèi)的時間序列信息。之后,基于特定的信號處理問題和數(shù)據(jù)集信息,開始建立用于預測的卷積神經(jīng)網(wǎng)絡(luò),并且確定其配置包括隱藏層的數(shù)量,卷積濾波器數(shù)量和長度等。卷積神經(jīng)網(wǎng)絡(luò)將標準化訓練數(shù)據(jù)作為輸入,并且訓練樣本的標記剩余壽命值用作網(wǎng)絡(luò)的目標輸出。反向傳播學習用于更新網(wǎng)絡(luò)中的權(quán)重。對于每個訓練周期,將樣本隨機分成多個小批量,每批包含若干(如512)個樣本,并放入訓練系統(tǒng)。接下來,基于每個小批量的平均損失函數(shù)來優(yōu)化網(wǎng)絡(luò)信息,即每層中的權(quán)重。批量大小的選擇會影響網(wǎng)絡(luò)訓練性能。例如本研究中根據(jù)實驗發(fā)現(xiàn)512個樣品的批量大小是合適的,并且它被用于本文的所有案例研究中。此外,采用不同的學習率。最后,將測試數(shù)據(jù)樣本饋送到訓練的網(wǎng)絡(luò)中以進行剩余壽命估計,并且得到預測準確性。
圖2 卷積神經(jīng)網(wǎng)絡(luò)模型構(gòu)建示意圖
在卷積神經(jīng)網(wǎng)絡(luò)方法研究基礎(chǔ)上開發(fā)了基于深度學習的氣路故障診斷預測軟件平臺。算法實現(xiàn)基于TensorFlow平臺架構(gòu),使用Python語言實現(xiàn)深度學習和其他算法。TensorFlow平臺架構(gòu)示意如圖3所示。
圖3 TensorFlow平臺架構(gòu)示意圖
如圖3所示,通過平臺API接口層的核心功能,可以實現(xiàn)相關(guān)的實驗和應(yīng)用[16]。TensorFlow的系統(tǒng)架構(gòu)如圖3所示。它從底部分為設(shè)備管理/通信層,數(shù)據(jù)操作層,圖形計算層,API接口層和應(yīng)用層。在所有層中,管理/通信層,數(shù)據(jù)操作層和圖形計算層是TF的核心層。
在方法層面,整個過程包括數(shù)據(jù)集成,數(shù)據(jù)處理,特征工程,模型培訓,數(shù)據(jù)集成,模型評估,模型保存等。 選擇卷積神經(jīng)網(wǎng)絡(luò)(CNN)、長短時記憶網(wǎng)絡(luò)(LSTM)等深度學習模型,選擇MES,RMSE和相關(guān)系數(shù)等評價指標,評價試驗數(shù)據(jù)的預測精度。氣路預測算法包括診斷過程創(chuàng)建模塊,過程模板管理模塊,數(shù)據(jù)集設(shè)置管理模塊,算法模型編輯管理模塊,算法模型訓練模塊和算法性能評估模塊等。
利用軟件平臺各個功能模塊,通過平臺構(gòu)建模型的過程主要包括:創(chuàng)建流程;選擇流程模板;修改流程參數(shù);訓練模型,評估性能。深度學習模型評估頁面如圖4所示。
圖4 深度學習模型評估頁面示意圖
發(fā)動機測試數(shù)據(jù)源自于NASA發(fā)布的一組發(fā)動機實驗數(shù)據(jù),該組數(shù)據(jù)包含了一系列多元多變量時間序列。NASA發(fā)布該數(shù)據(jù)主要用于開展發(fā)動機壽命預測方面的競賽等目標[17]。發(fā)動機實驗數(shù)據(jù)描述如表1所示。
表1 發(fā)動機實驗數(shù)據(jù)描述
這里利用該數(shù)據(jù)開展基于數(shù)據(jù)的發(fā)動機的故障預測方法研究,通過人工智能方法實現(xiàn)基于數(shù)據(jù)的預測。本試驗數(shù)據(jù)的每一組數(shù)據(jù)被劃分成了訓練和測試數(shù)據(jù),每臺發(fā)動機數(shù)據(jù)開始于一定程度的磨損和誤差,磨損和誤差程度未知。訓練數(shù)據(jù)中分別含有100臺、260臺、100臺、249臺發(fā)動機的全壽命測試數(shù)據(jù),測試數(shù)據(jù)中分別含有100臺、259臺、248臺發(fā)動機某生命周期階段中的數(shù)據(jù),剩余壽命數(shù)據(jù)給出了測試數(shù)據(jù)中每臺發(fā)動機的實際剩余壽命。
實驗數(shù)據(jù)主要記錄了發(fā)動機每次工作循環(huán)的以下26個參數(shù):
1)發(fā)動機號;2)循環(huán)次數(shù);3)運行設(shè)置1; 4)運行設(shè)置2;5)運行設(shè)置3;6)風扇入口總溫T2; 7)LPC出口總溫T24;8)HPC出口總溫T30;9)LPT出口總溫T50;10)風扇入口壓力P2;11)旁通總壓P15;12)HPC出口總壓P30;13)物理風扇轉(zhuǎn)速Nf;14)物理核心機轉(zhuǎn)速Nc;15)發(fā)動機壓氣比Epr(P50/P2);16)HPC出口靜壓Ps30(Psia);17)燃油流量Phi;18)換算風扇轉(zhuǎn)速NRF;19)換算高壓轉(zhuǎn)速NRC;20)涵道比(BPR);21)燃燒室油氣比(FarB);22)氣流焓值(htBleed);23)要求的風扇轉(zhuǎn)速Nf_dmd;24)要求修正的風扇轉(zhuǎn)速PCNfR_dmd(R/min);25)HPT冷卻流量W31(Lbm/s);26)LPT冷卻流量W32。
本文選取test_FD002文件數(shù)據(jù)作為驗證數(shù)據(jù),選取RUL_FD002文件數(shù)據(jù)作為觀察值數(shù)據(jù),并對數(shù)據(jù)進行歸一化等處理。訓練數(shù)據(jù)樣本和測試數(shù)據(jù)樣本文件如圖5、圖6所示。
圖5 訓練數(shù)據(jù)樣本文件
圖6 測試數(shù)據(jù)樣本文件
根據(jù)數(shù)據(jù)特點,再進行歸一化等預處理操作。數(shù)據(jù)的結(jié)尾為標簽信息。由于數(shù)據(jù)特征空間不一致,需要進行歸一化處理,以品更各特征權(quán)重。預處理后生成相應(yīng)的結(jié)果數(shù)據(jù)。
根據(jù)卷積神經(jīng)網(wǎng)絡(luò)模型原理,結(jié)合上述試驗數(shù)據(jù),在相關(guān)文獻基礎(chǔ)上[17-18],搭建學習模型,實現(xiàn)相關(guān)預測過程。模型包含2層CNN和2層的池化層構(gòu)建神經(jīng)網(wǎng)絡(luò),如圖7所示。
圖7 面向發(fā)動機故障預測的CNN模型示意圖
由于綜合了連續(xù)的15條記錄進行預測,所以選擇了卷積神經(jīng)網(wǎng)絡(luò)進行建模。卷積神經(jīng)網(wǎng)絡(luò)通過卷積核,將卷積視野下的連續(xù)幾個特征卷積在一起,達到了更好的提取局部特征的功能。
池化層采用下采樣操作(最大值方法),即對于某個Filter抽取到若干特征值,只取其中得分最大的那個值作為Pooling層保留值,其它特征值全部拋棄,值最大代表只保留這些特征中最強的,而拋棄其它弱的此類特征。
面向發(fā)動機試驗數(shù)據(jù)的CNN模型結(jié)構(gòu)主要包括以下過程:卷積(Convolution):特征掃描、提取;池化(Pooling):特征過濾,最大值法;降維(Flatten):實現(xiàn)數(shù)據(jù)的平展與降維;分類(Dense):對提取的特征進行分類。
將處理后的訓練數(shù)據(jù),利用神經(jīng)網(wǎng)絡(luò)進行訓練,得到訓練后的氣路系統(tǒng)故障診斷與預測模型。之后,將測試數(shù)據(jù)導入模型中進行計算,得出每個發(fā)動機的剩余壽命,并將其與實際結(jié)果進行比對與評價。評價方法選用MES、RMSE、Pearson相關(guān)系數(shù)等指標。計算方法如下:
(1)
(2)
(3)
其中:MSE主要用于評價數(shù)據(jù)的變化程度;RMSE主要用于評價樣本離散程度;Pearson相關(guān)系數(shù)(PCC)主要用來衡量定距變量間的線性關(guān)系。
利用卷積神經(jīng)網(wǎng)絡(luò)將處理后的訓練數(shù)據(jù)進行訓練,得到發(fā)動機氣路系統(tǒng)故障預測模型。將測試數(shù)據(jù)導入模型預測每臺發(fā)動機的剩余壽命。如圖8所示。
圖8 基于CNN模型的預測結(jié)果示意圖
為便于與本文提出的方法進行對比,在驗證過程中對一些數(shù)據(jù)驅(qū)動的算法進行了應(yīng)用分析,包括支持向量機、線性回歸、嶺回歸、彈性網(wǎng)絡(luò)、貝葉斯脊回歸等方法,具體說明如下:1)支持向量機方法建立在統(tǒng)計學習和結(jié)構(gòu)風險最小原理的基礎(chǔ)上,可作為二元分類器,對線性可分和線性非可分數(shù)據(jù)的分類較為有效,對發(fā)動機數(shù)據(jù)擬合與預測有良好的適應(yīng)性;2)線性回歸是一種傳統(tǒng)的基于回歸分析的數(shù)理統(tǒng)計分析方法,包括簡單回歸和多元回歸等;3)嶺回歸建立在最小二乘估計基礎(chǔ)上并進行了改進,較為適合針對線性數(shù)據(jù)的分析;4)彈性網(wǎng)絡(luò)是一種適用于很少的權(quán)重不為零的稀疏模型的線性回歸模型;5)貝葉斯脊回歸方法主要用于解決最大似然估計中很難決定模型的復雜程度,并對數(shù)據(jù)進行正規(guī)化處理。
上述各種算法的預測結(jié)果如圖9~12所示,預測結(jié)果分析如表2所示。
圖9 基于支持向量機的預測結(jié)果示意圖
圖10 基于線性回歸的預測結(jié)果示意圖
圖11 基于嶺回歸的預測結(jié)果示意圖
圖12 基于彈性網(wǎng)絡(luò)的預測結(jié)果示意圖
從表2可見,通過各算法的MSE、RMSE和Pearson系數(shù)可得出,CNN由于具有良好的容錯能力和自學習能力,其預測精度最高,與實際數(shù)據(jù)的相關(guān)度也較高,基于回歸分析的預測精度最差;SVM由于具備非線性及高維模式識別的優(yōu)勢,也具有較好的預測精度和效果,且與實際數(shù)據(jù)的相關(guān)度更高。
本文研究了基于卷積神經(jīng)網(wǎng)絡(luò)的發(fā)動機故障預測方法,構(gòu)建了基于深度學習的發(fā)動機故障預測人工智能算法平臺,實現(xiàn)的人工智能算法,較傳統(tǒng)支持向量機以及回歸分析等方法相比,在預測的準確率上有較大的提升。研究方法可直接應(yīng)用于典型實驗環(huán)境下的航空發(fā)動機氣路故障診斷與預測;算法經(jīng)適應(yīng)性調(diào)整和訓練后,亦可推廣應(yīng)用于其他類型的發(fā)動機裝備中,具有較好的推廣前景和價值。