崔建國(guó),李 勇,崔 霄,王景霖,蔣麗英,于明月
(1.沈陽(yáng)航空航天大學(xué) 自動(dòng)化學(xué)院,沈陽(yáng) 110136;2.航空工業(yè)空氣動(dòng)力研究院 洞設(shè)備研發(fā)部,沈陽(yáng) 110034;3.故障診斷與健康管理技術(shù)航空科技重點(diǎn)實(shí)驗(yàn)室,上海 201601)
航空發(fā)動(dòng)機(jī)作為飛機(jī)的主要?jiǎng)恿ρb置,是一個(gè)極其復(fù)雜的系統(tǒng),其工作環(huán)境惡劣,長(zhǎng)期受到高溫、高速、強(qiáng)振動(dòng)、大應(yīng)力等內(nèi)外部不利因素的影響而容易出現(xiàn)異常狀態(tài)。因此,對(duì)航空發(fā)動(dòng)機(jī)進(jìn)行有效的監(jiān)控和診斷是實(shí)現(xiàn)航空發(fā)動(dòng)機(jī)視工作情況進(jìn)行維修、降低使用維護(hù)成本、保證飛行安全的關(guān)鍵[1]。目前,常用的故障診斷方法有BP(Back propagation,BP)神經(jīng)網(wǎng)絡(luò)、SVM(Support Vector Machine,SVM)等,但以反向傳播神經(jīng)網(wǎng)絡(luò)BP為代表的傳統(tǒng)淺層神經(jīng)網(wǎng)絡(luò)存在泛化能力弱,易產(chǎn)生局部極小值等問題;而SVM參數(shù)選擇復(fù)雜,訓(xùn)練速度較慢,在發(fā)動(dòng)機(jī)故障診斷中的應(yīng)用受到限制[2]。
近年來,深度學(xué)習(xí)的不斷發(fā)展為故障診斷技術(shù)提供了新的解決方案。深度學(xué)習(xí)網(wǎng)絡(luò)是通過構(gòu)建多層神經(jīng)網(wǎng)絡(luò),逐層學(xué)習(xí)和提取數(shù)據(jù)特征,最終實(shí)現(xiàn)對(duì)數(shù)據(jù)復(fù)雜特征信息的挖掘。姜洪開等[3]將深度學(xué)習(xí)算法用于飛行器的故障診斷;李夢(mèng)詩(shī)等[4]將深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)用于風(fēng)力發(fā)電機(jī)的故障診斷;李巍華等[5]利用DBN可以組合低層特征并逐層學(xué)習(xí)得到更好的特征表示的特點(diǎn),直接從軸承的振動(dòng)原始數(shù)據(jù)出發(fā),對(duì)軸承故障進(jìn)行分類識(shí)別。由于無需運(yùn)用其他特征提取方法減少了人為參與因素,增強(qiáng)了故障診斷的智能性??梢?,深度學(xué)習(xí)在故障診斷領(lǐng)域具有較好的效果。但深度置信網(wǎng)絡(luò)結(jié)構(gòu)的選擇,隱藏層數(shù)量以及學(xué)習(xí)速率的設(shè)置等都會(huì)對(duì)DBN的分類結(jié)果產(chǎn)生很大的影響。目前,DBN算法多是憑借經(jīng)驗(yàn)或者通過耗費(fèi)大量時(shí)間多次調(diào)節(jié)參數(shù)來確定網(wǎng)絡(luò)結(jié)構(gòu)[6],一定程度上限制了它的發(fā)展與應(yīng)用。
基于此,本文提出了一種改進(jìn)的深度信念網(wǎng)絡(luò),采用粒子群算法(Particle Swarm Optimization,PSO)優(yōu)化DBN-ELM混合網(wǎng)絡(luò)參數(shù),得到最優(yōu)的網(wǎng)絡(luò)結(jié)構(gòu),創(chuàng)建改進(jìn)的最優(yōu)故障診斷模型,對(duì)飛機(jī)發(fā)動(dòng)機(jī)的滑油系統(tǒng)進(jìn)行了故障診斷技術(shù)研究,取得了很好的診斷效果。
作為一種深層網(wǎng)絡(luò)模型,深度置信網(wǎng)絡(luò)具有良好的特征學(xué)習(xí)能力,通過對(duì)數(shù)據(jù)的底層特征進(jìn)行學(xué)習(xí)和訓(xùn)練,形成更適用于分類的高層表示,使分類效果更加顯著。DBN深度神經(jīng)網(wǎng)絡(luò)模型由多個(gè)RBM堆棧而成[7]。
RBM的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,由一個(gè)可見層和一個(gè)隱含層構(gòu)成單個(gè)的RBM結(jié)構(gòu)模型,層內(nèi)神經(jīng)元無連接,不同層之間的神經(jīng)元通過權(quán)重全連接??梢妼觱連接觀測(cè)數(shù)據(jù)或上一RBM輸出,w為可見層與隱含層的連接權(quán)重,h表示隱含層。RBM是一種基于能量的模型,網(wǎng)絡(luò)中神經(jīng)元有激活狀態(tài)和未激活狀態(tài)兩種狀態(tài)[8]。狀態(tài)(v,h)確定的RBM系統(tǒng)所具有的能量可表示為
(1)
式中:θ=(wij,ai,bj)表示RBM內(nèi)部參數(shù);可見層與隱含層的神經(jīng)元數(shù)量分別為n、m。
圖1 受限玻爾茲曼機(jī)結(jié)構(gòu)圖
由于RBM層內(nèi)各神經(jīng)元激活狀態(tài)是相互獨(dú)立的,可以根據(jù)可見層神經(jīng)元的狀態(tài)計(jì)算出隱含層第j個(gè)神經(jīng)元的激活概率,激活概率為:
(2)
由隱含層重建可見層第i個(gè)神經(jīng)元,激活概率為:
(3)
DBN是一個(gè)由多個(gè)無監(jiān)督的RBM層和一個(gè)有監(jiān)督的BP層堆疊而成的深層神經(jīng)網(wǎng)絡(luò)。每個(gè)RBM層的輸出是下個(gè)RBM層的輸入,通過多個(gè)RBM層的特征提取,在頂層形成一個(gè)更適合模式分類的特征向量[9]。無監(jiān)督訓(xùn)練完成后,通過BP算法對(duì)整個(gè)網(wǎng)絡(luò)參數(shù)在細(xì)節(jié)上微調(diào),使整個(gè)DBN網(wǎng)絡(luò)全局最優(yōu)達(dá)到最佳效果。
極限學(xué)習(xí)機(jī)是一種新型快速的單隱層前饋神經(jīng)網(wǎng)絡(luò)[10]。其結(jié)構(gòu)簡(jiǎn)單,由輸入層、隱含層和輸出層組成,其中輸入層與隱含層之間的權(quán)重和偏置隨機(jī)給定;隱含層與輸出層神經(jīng)元權(quán)重通過廣義逆矩陣求最小二乘解得到[11-12]。
(4)
式中:ωi是輸入節(jié)點(diǎn)與第i個(gè)隱含層節(jié)點(diǎn)連接權(quán)值;bi是第i個(gè)隱含層神經(jīng)元的偏置;βi是第i個(gè)隱含層神經(jīng)元和輸出神經(jīng)元的權(quán)值;
通過設(shè)定隱層節(jié)點(diǎn)的參數(shù),相對(duì)應(yīng)的隱層輸出矩陣H就被唯一確定[13]。通過最小二乘方法求得隱含層與輸出層間的連接權(quán)值β,其解為:
β=H+T
(5)
式中,H+是矩陣H的廣義逆矩陣。
ELM訓(xùn)練目的就是快速找到使輸出誤差最小的網(wǎng)絡(luò)輸出權(quán)值β,使得ELM網(wǎng)絡(luò)的輸出值盡可能接近真實(shí)值。
基于PSO優(yōu)化DBN算法主要分為兩部分:DBN網(wǎng)絡(luò)結(jié)構(gòu)初始化和PSO優(yōu)化DBN網(wǎng)絡(luò)結(jié)構(gòu)。
DBN是由多個(gè)RBM堆疊而成,DBN的訓(xùn)練過程包含對(duì)多層RBM網(wǎng)絡(luò)的逐層訓(xùn)練和誤差反向微調(diào)兩個(gè)階段[14]。
第一階段為前向堆疊RBM訓(xùn)練學(xué)習(xí)過程。該階段為無監(jiān)督學(xué)習(xí)過程,將無監(jiān)督學(xué)習(xí)到的模型參數(shù)作為有監(jiān)督學(xué)習(xí)模型的初始值,相當(dāng)于為有監(jiān)督學(xué)習(xí)過程提供了輸入數(shù)據(jù)的先驗(yàn)知識(shí);
第二階段為DBN的反向微調(diào)過程。從DBN的最后一層出發(fā),利用已知標(biāo)簽向低層通過BP算法進(jìn)行反向微調(diào),模型的參數(shù)在全局上得到進(jìn)一步的優(yōu)化,對(duì)于多分類問題,本文在DBN網(wǎng)絡(luò)的最后一層選擇ELM作為分類器模型。
DBN-ELM網(wǎng)絡(luò)模型包含一個(gè)數(shù)據(jù)輸入層、k-1個(gè)挖掘數(shù)據(jù)特征的隱含層、一個(gè)ELM隱含層和一個(gè)輸出診斷結(jié)果的輸出層。其中,輸入層和1到k-1個(gè)隱含層共同組成DBN網(wǎng)絡(luò),第k-1個(gè)、第k個(gè)隱含層和輸出層組成ELM分類層。在分類層將DBN提取后的信息轉(zhuǎn)換為故障診斷結(jié)果。
圖2 DBN-ELM結(jié)構(gòu)圖
在進(jìn)行故障診斷時(shí),輸入層的神經(jīng)元數(shù)為輸入樣本的參數(shù)個(gè)數(shù),各隱含層神經(jīng)元個(gè)數(shù)通過PSO算法進(jìn)行尋優(yōu)來確定,輸出神經(jīng)元數(shù)可以根據(jù)故障類別設(shè)置。
為了提高DNB網(wǎng)絡(luò)在后期的學(xué)習(xí)和訓(xùn)練過程中的局部尋優(yōu)能力,本文采用粒子群算法優(yōu)化DBN網(wǎng)絡(luò)參數(shù)。PSO是把目標(biāo)函數(shù)的尋優(yōu)問題轉(zhuǎn)化為解集空間內(nèi)的最優(yōu)粒子搜尋問題[15]。
對(duì)一個(gè)i隱藏層DBN,每層分別有m1、m2和mi個(gè)神經(jīng)元,學(xué)習(xí)率η∈[0,1)。對(duì)粒子群進(jìn)行編碼時(shí),設(shè)定粒子種群中的每一個(gè)粒子為一個(gè)多維向量X(m1,m2…mi)。
(1)由航空發(fā)動(dòng)機(jī)滑油系統(tǒng)數(shù)據(jù)構(gòu)造訓(xùn)練和測(cè)試樣本集,對(duì)構(gòu)造好的樣本集進(jìn)行標(biāo)準(zhǔn)化處理,即數(shù)據(jù)按式(6)進(jìn)行歸一化處理,處理后的數(shù)據(jù)在[0,1]之間。
x=(x-xmin)/(xmax-xmin)
(6)
式中,xmin為原數(shù)據(jù)中的最小值,xmax為原數(shù)據(jù)中的最大值;
(2)初始化網(wǎng)絡(luò)參數(shù)。建立改進(jìn)深度信念神經(jīng)網(wǎng)絡(luò)的初始模型。
圖3 航空發(fā)動(dòng)機(jī)故障診斷流程
(3)初始化粒子群算法參數(shù)。
(4)適應(yīng)度計(jì)算。運(yùn)用交叉驗(yàn)證的方法,以交叉驗(yàn)證的平均準(zhǔn)確率作為適應(yīng)度函數(shù)。
(7)
式中:n為交叉驗(yàn)證的次數(shù);TP為正確分類的樣本個(gè)數(shù);TN為劃分錯(cuò)誤的樣本個(gè)數(shù);
(5)更新粒子的速度和位置
北京市作為全國(guó)的科技中心,旅游業(yè)涉及的許多行業(yè)都建立了自己的信息庫(kù),有著建設(shè)智慧旅游城市的良好基礎(chǔ),但由于缺乏科學(xué)有效的整合機(jī)制,各信息庫(kù)之間沒有建立鏈接,企業(yè)之間無法實(shí)現(xiàn)信息共享與協(xié)同作業(yè),海量信息未得到充分利用與交流,導(dǎo)致信息資源利用效率低下,不利于游客旅游互動(dòng)體驗(yàn)質(zhì)量的提升[3]。
(8)
(9)
(6)判斷是否滿足判別條件。若滿足轉(zhuǎn)為下一步;若不滿足返回(4),繼續(xù)尋優(yōu)。
(7)將最優(yōu)解網(wǎng)絡(luò)參數(shù),賦給改進(jìn)的網(wǎng)絡(luò)結(jié)構(gòu),創(chuàng)建最優(yōu)的深度信念神經(jīng)網(wǎng)絡(luò)改進(jìn)模型,對(duì)航空發(fā)動(dòng)機(jī)進(jìn)行故障診斷。
(8)利用測(cè)試數(shù)據(jù)樣本集對(duì)基于優(yōu)化的深度信念網(wǎng)絡(luò)的航空發(fā)動(dòng)機(jī)故障診斷模型進(jìn)行測(cè)試,并對(duì)測(cè)試結(jié)果進(jìn)行分析。
依據(jù)飛機(jī)發(fā)動(dòng)機(jī)滑油系統(tǒng)結(jié)構(gòu)和理論知識(shí)對(duì)該系統(tǒng)眾多參數(shù)進(jìn)行分析,選取能夠較好反應(yīng)滑油系統(tǒng)性能的供油壓力、滑油壓差、供油溫度、中軸承腔回油溫度、后軸承腔回油溫度、滑油總回油溫度、滑油后軸承腔腔壓和滑油液位8個(gè)表征參數(shù)。通過專業(yè)試驗(yàn)平臺(tái)采集航空發(fā)動(dòng)機(jī)滑油系統(tǒng)表征參數(shù)數(shù)據(jù),并劃分工作狀態(tài),每種狀態(tài)都包含8個(gè)表征參數(shù),并對(duì)數(shù)據(jù)進(jìn)行歸一化處理。
選取其中的900組數(shù)據(jù)作為訓(xùn)練樣本集(其中健康狀態(tài)樣本360組,三級(jí)油泵損壞故障樣本180組,放油開關(guān)故障樣本180組,離心通風(fēng)器故障樣本180組),選取其中的100組數(shù)據(jù)作為測(cè)試樣本集(其中健康狀態(tài)樣本40組,三級(jí)油泵損壞故障樣本20組,放油開關(guān)故障樣本20組,離心通風(fēng)器故障樣本20組),其工作狀態(tài)名稱及數(shù)據(jù)樣本數(shù)量分布如表1所示。
表1 滑油系統(tǒng)工作狀態(tài)及樣本分布
對(duì)DBN與ELM混合網(wǎng)絡(luò)選用兩隱含層的DBN和ELM,設(shè)置DBN每層神經(jīng)元數(shù)分別為m1、m2。進(jìn)行粒子群尋優(yōu)時(shí),設(shè)定PSO中的每個(gè)粒子為一個(gè)二維向量x(m1,m2)。種群大小設(shè)為20,最大迭代數(shù)設(shè)為30,慣性權(quán)重最大和最小為0.9和0.5,加速因子最大和最小分別為0.9和0.5。經(jīng)PSO進(jìn)行尋優(yōu)后,得到如圖4的適應(yīng)度曲線。
圖4 粒子群適應(yīng)度曲線
從圖4可知,當(dāng)粒子群迭代次數(shù)超過5時(shí),以準(zhǔn)確率作為適應(yīng)度的曲線趨于平穩(wěn)。經(jīng)迭代尋優(yōu)得到的最優(yōu)神經(jīng)元個(gè)數(shù)分別為12和22,最優(yōu)值為0.998 8。因此,最終選用的模型結(jié)構(gòu)參數(shù)設(shè)置情況如表2所示。
表2 DBN-ELM網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)設(shè)置
通過網(wǎng)絡(luò)參數(shù)建立PSO-DBN-ELM故障診斷模型,對(duì)100組測(cè)試數(shù)據(jù)進(jìn)行故障診斷,診斷結(jié)果如圖5所示??梢钥闯鲇袃商幊霈F(xiàn)誤報(bào),其余測(cè)試樣本都能正確分類。
圖5 PSO-DBN-ELM故障診斷結(jié)果
為驗(yàn)證改進(jìn)DBN航空發(fā)動(dòng)機(jī)故障診斷模型的有效性,本文分別創(chuàng)建PSO-DBN-ELM、DBN-ELM故障診斷模型,對(duì)同樣的數(shù)據(jù)進(jìn)行了測(cè)試,得到如表3所示的診斷效果。
表3 不同方法的故障診斷結(jié)果 (%)
本文將粒子群優(yōu)化參數(shù)的方法運(yùn)用到深度置信網(wǎng)絡(luò)中,在DBN監(jiān)督訓(xùn)練之前,通過粒子群算法求解網(wǎng)絡(luò)參數(shù)的最佳解,避免網(wǎng)絡(luò)訓(xùn)練時(shí)陷入局部最優(yōu)。另外,多隱含層的DBN有利于提取輸入數(shù)據(jù)的內(nèi)在特征,ELM作為分類層加快了網(wǎng)絡(luò)的訓(xùn)練輸出,從而使模型具有較好的診斷性能并縮短監(jiān)督訓(xùn)練的時(shí)間。研究表明,采用DBN-ELM網(wǎng)絡(luò)模型滑油系統(tǒng)的故障診斷準(zhǔn)確率為92%,本文提出的基于PSO-DBN-ELM故障診斷模型,故障診斷率為98%,診斷效果明顯高于DBN-ELM故障診斷模型。
本文提出的基于改進(jìn)的DBN故障診斷模型克服了人為給定參數(shù)的缺點(diǎn),通過優(yōu)化DBN網(wǎng)絡(luò)參數(shù)中的參數(shù),使故障診斷率得到提高,模型的泛化能力加強(qiáng),與傳統(tǒng)方法相比,模型的全局搜索能力和穩(wěn)定性大大提升,適合航空發(fā)動(dòng)機(jī)故障診斷。