黃 亮 劉君強(qiáng) 張振良 張 曦
(南京航空航天大學(xué)民航學(xué)院 南京 211106)
發(fā)動(dòng)機(jī)故障診斷相關(guān)研究分為基于知識(shí)規(guī)則相關(guān)研究的診斷[1-3]、基于物理模型的診斷[4-5]和基于數(shù)據(jù)驅(qū)動(dòng)的人工智能算法診斷[6-7]三類,在基于數(shù)據(jù)驅(qū)動(dòng)的人工智能算法診斷研究中由于人工神經(jīng)網(wǎng)絡(luò)可以自適應(yīng)逼近復(fù)雜函數(shù)的優(yōu)點(diǎn),成為故障診斷領(lǐng)域所廣泛采用的算法.用人工神經(jīng)網(wǎng)絡(luò)進(jìn)行故障檢測(cè)的可靠性與網(wǎng)絡(luò)的訓(xùn)練算法以及網(wǎng)絡(luò)類型有著緊密的聯(lián)系.現(xiàn)有故障檢測(cè)相關(guān)研究中采用了如下的人工神經(jīng)網(wǎng)絡(luò):學(xué)習(xí)向量化(learning vector quantization,LVQ)網(wǎng)絡(luò)[8]、反向傳播(back-propagation,BP)網(wǎng)絡(luò)[9]、Elman神經(jīng)網(wǎng)絡(luò)[10]、概率神經(jīng)網(wǎng)絡(luò)[11]等.目前研究中所使用的這些神經(jīng)網(wǎng)絡(luò)大多都是結(jié)構(gòu)較簡(jiǎn)單的淺層網(wǎng)絡(luò),訓(xùn)練過(guò)程中特別容易產(chǎn)生局部最優(yōu)解.此外,這類網(wǎng)絡(luò)由于結(jié)構(gòu)簡(jiǎn)單,學(xué)習(xí)能力不強(qiáng),泛化性差,容易導(dǎo)致故障檢測(cè)不準(zhǔn)確.
隨著計(jì)算機(jī)性能與智能學(xué)習(xí)算法領(lǐng)域的不斷發(fā)展與創(chuàng)新,科學(xué)家們提出了與傳統(tǒng)“淺層”學(xué)習(xí)方法相對(duì)應(yīng)的“深度學(xué)習(xí)”方法.深度學(xué)習(xí)方法主要指的就是具有多隱藏的神經(jīng)網(wǎng)絡(luò),利用各種算法來(lái)訓(xùn)練擬合樣本,充分挖掘樣本特征,使分類的結(jié)果更可靠.深度學(xué)習(xí)以其強(qiáng)大的特征學(xué)習(xí)能力,在圖片識(shí)別與分類、語(yǔ)音識(shí)別、自動(dòng)駕駛等諸多領(lǐng)域快速發(fā)展[12-14].深度學(xué)習(xí)技術(shù)中主要使用的網(wǎng)絡(luò)有:DBN網(wǎng)絡(luò)、多層反饋循環(huán)網(wǎng)絡(luò)、稀疏自動(dòng)編碼器等.而深度學(xué)習(xí)中的DBN網(wǎng)絡(luò),以其強(qiáng)大的基于概率生成的樣本特征學(xué)習(xí)能力在故障診斷相關(guān)領(lǐng)域使用的越來(lái)越頻繁.為了從受可變運(yùn)行條件和背景噪聲影響的振動(dòng)信號(hào)中檢測(cè)故障,Shao等[15]提出了一種新的優(yōu)化DBN網(wǎng)絡(luò)用于軸承故障診斷,該優(yōu)化后的DBN網(wǎng)絡(luò)具有更高的穩(wěn)定性與分類精度.車暢暢等[16]用深度信念網(wǎng)絡(luò)求出航空發(fā)動(dòng)機(jī)故障分類置信度,然后對(duì)多次故障分類結(jié)果進(jìn)行決策融合.
上述研究豐富了航空發(fā)動(dòng)機(jī)故障診斷的研究,但卻沒(méi)有考慮到航空發(fā)動(dòng)機(jī)監(jiān)測(cè)數(shù)據(jù)存在的過(guò)擬合、維數(shù)災(zāi)難等問(wèn)題.由于航空發(fā)動(dòng)機(jī)監(jiān)測(cè)參數(shù)多且長(zhǎng)期運(yùn)行在復(fù)雜多變的高溫高壓環(huán)境中,參數(shù)監(jiān)測(cè)值之間會(huì)存在著相關(guān)性.針對(duì)數(shù)據(jù)的過(guò)擬合、維數(shù)災(zāi)難和淺層神經(jīng)網(wǎng)絡(luò)診斷精度不高等問(wèn)題,文中提出了基于KPCA分析和深度信念網(wǎng)絡(luò)的發(fā)動(dòng)機(jī)故障檢測(cè)方法,其中KPCA分析方法能有效減少樣本數(shù)據(jù)維度,有效消除數(shù)據(jù)間的非線性關(guān)聯(lián).把經(jīng)KPCA分析提取后的航空發(fā)動(dòng)機(jī)監(jiān)測(cè)數(shù)據(jù)以及對(duì)應(yīng)的故障類型輸入到DBN網(wǎng)絡(luò)模型中,充分學(xué)習(xí)提取出樣本特征.
由于各種因素的影響,傳感器監(jiān)測(cè)數(shù)據(jù)會(huì)出現(xiàn)誤差,并且存在誤差的數(shù)據(jù)會(huì)使最終的模型訓(xùn)練和模型診斷的準(zhǔn)確性降低.統(tǒng)計(jì)平滑法是建立在數(shù)理統(tǒng)計(jì)基礎(chǔ)上的一種平滑方法,用該方法可以減少測(cè)量的誤差.
統(tǒng)計(jì)平滑法的定義為
(1)
在一組原始數(shù)據(jù)集中,與其他點(diǎn)存在較大程度差異的點(diǎn)記作為離群點(diǎn).由于離群點(diǎn)與其他點(diǎn)存在顯著區(qū)別,其中可能會(huì)包含有重要的信息,所以我們不對(duì)離群點(diǎn)進(jìn)行平滑處理.
將N個(gè)監(jiān)測(cè)數(shù)據(jù)按照測(cè)量時(shí)間先后順序進(jìn)行排列,構(gòu)成一個(gè)符合正態(tài)分布的隨機(jī)數(shù)據(jù)集.
由于發(fā)動(dòng)機(jī)傳感器監(jiān)測(cè)參數(shù)之間單位不同,為了消除各個(gè)參數(shù)不同量綱的影響,需要對(duì)經(jīng)平滑法處理后的數(shù)據(jù)進(jìn)行歸一化處理,歸一化公式為
(2)
1.3.1核主成分分析方法介紹
由于航空發(fā)動(dòng)機(jī)監(jiān)測(cè)參數(shù)多且長(zhǎng)期運(yùn)行在復(fù)雜多變的高溫高壓環(huán)境中,參數(shù)監(jiān)測(cè)值之間會(huì)存在著非線性相關(guān)性.為消除數(shù)據(jù)之間的非線性關(guān)聯(lián)性,降低數(shù)據(jù)維度,提出KPCA分析法.KPCA方法關(guān)鍵在于利用非線性映射函數(shù)把具有關(guān)聯(lián)性的數(shù)據(jù)集映射到了高維特征空間中,然后再進(jìn)行傳統(tǒng)主成分分析,并用核矩陣替代高維特征空間中內(nèi)積矩陣.
1.3.2核函數(shù)介紹
設(shè)函數(shù)φ(·)是把存在關(guān)聯(lián)性的低維監(jiān)測(cè)數(shù)據(jù)映射到高維特征空間中的非線性函數(shù),低維特征空間中的向量xi經(jīng)過(guò)函數(shù)φ(·)映射后的向量為φ(xι).若在低維空間中存在函數(shù)k(·)符合如下要求k(xi,xj)=φ(xi)T·φ(xj),則稱該函數(shù)k(·)為核函數(shù).如果高維空間中的矩陣K=XTX滿足式(3),即矩陣K中的元素φ(xi)T·φ(xj)均使用核函數(shù)表示,則稱矩陣K為核矩陣.
(3)
式中:k(·)為核函數(shù);Φ為映射到高維空間中的樣本矩陣;n表示樣本個(gè)數(shù).
由于不知道函數(shù)φ(·)具體形式是什么,在對(duì)高維特征空間中的數(shù)據(jù)進(jìn)行主成分提取時(shí),通過(guò)核矩陣來(lái)替換高維特征空間中的內(nèi)積矩陣,只需要對(duì)K進(jìn)行分析.目前主要使用以下五種核函數(shù):
1) 線性核函數(shù)
(4)
2) 高斯核函數(shù)
(5)
3) 多項(xiàng)式核函數(shù)
(6)
4) 拉普拉斯核函數(shù)
(7)
5) Sigmoid型核函數(shù)
(8)
式中:σ,β和θ為函數(shù)表達(dá)式中的參數(shù);d為冪指數(shù).
1.3.3核主元計(jì)算
根據(jù)文獻(xiàn)[17],能夠把核主成分的提取轉(zhuǎn)變成計(jì)算核矩陣特征值及其特征向量相關(guān)的問(wèn)題.核主成分分析計(jì)算流程如下
1) 對(duì)觀測(cè)參數(shù)x=[x1,x2,…,xm]′進(jìn)行n次的監(jiān)測(cè),監(jiān)測(cè)得到的樣本矩陣為X∈Rn×m.通過(guò)分析選擇符合要求的核函數(shù),并根據(jù)核函數(shù)和樣本矩陣求得對(duì)應(yīng)的核矩陣K
(9)
2) 將核主元分析是在假設(shè)向量φ(xi)為0均值的前提條件下進(jìn)行的,由于函數(shù)φ(·)的具體表現(xiàn)形式?jīng)]有給出,因此,不能對(duì)核矩陣直接進(jìn)行中心化處理.通過(guò)以下公式中心化矩陣K.
(10)
4) 求Φ的核主元向量ti:
(11)
式中:Φ為映射到高維空間后的樣本矩陣.
5) 計(jì)算方差貢獻(xiàn)率和累計(jì)貢獻(xiàn)率.
(12)
式中:λi為主元i的方差;ξi為主元i的方差貢獻(xiàn)率;ηk為k個(gè)主元累計(jì)方差貢獻(xiàn)率.
深度信念網(wǎng)絡(luò)(deep belief nets,DBN)一般是由多于一個(gè)的無(wú)監(jiān)督的受限玻爾茲曼機(jī)(restricted boltzmann machines, RBM)和最后一層有監(jiān)督的BP神經(jīng)網(wǎng)絡(luò)組成.
2.1.1能量函數(shù)和概率分布
RBM模型是基于能量的模型,一個(gè)RBM的能量可以定義如下.
(13)
式中:vi,hj為顯層中輸入值與隱層中輸出值;wij為可見(jiàn)層與隱藏層的連接權(quán)值;ai為可見(jiàn)層的偏置,bj為隱藏層的偏置.
由能量函數(shù)得到v,h的聯(lián)合概率分布為
(14)
由式(14)可知,v,h的邊緣概率分布P(v|θ),P(h|θ)為
(15)
(16)
隱層和顯層節(jié)點(diǎn)被激活(即狀態(tài)為1)的概率為
由于RBM 具有層內(nèi)神經(jīng)元之間無(wú)連接的特點(diǎn),因此當(dāng)已知某層神經(jīng)元的狀態(tài)時(shí),則另外一層中的神經(jīng)元狀態(tài)分布相互獨(dú)立,即
(19)
(20)
2.1.2RBM的訓(xùn)練
RBM具體的訓(xùn)練步驟如下.
步驟1根據(jù)樣本數(shù)據(jù),設(shè)定RBM中顯層和隱層有nv和nh個(gè)神經(jīng)元.設(shè)定有關(guān)參數(shù)wij、ai與bj初始值,設(shè)定相應(yīng)學(xué)習(xí)率、RBM循環(huán)重構(gòu)誤差err以及循環(huán)迭代的最大值.
步驟2將訓(xùn)練樣本輸入到可見(jiàn)層v,利用式(17)計(jì)算出隱層中所有節(jié)點(diǎn)被激活的概率P(hj=1|v),使用吉布斯采樣法抽取一個(gè)隨機(jī)數(shù),假如該隨機(jī)數(shù)小于該節(jié)點(diǎn)被激活的概率,則激活該節(jié)點(diǎn),否則不激活.
步驟3利用式(18)求得所有顯層中節(jié)點(diǎn)被激活的概率,用吉布斯采樣法抽取一個(gè)隨機(jī)數(shù),假如該隨機(jī)數(shù)小于該節(jié)點(diǎn)被激活的概率,則激活該節(jié)點(diǎn),否則不激活.
步驟4將求得的vk與初始v進(jìn)行比較,計(jì)算RBM的循環(huán)重構(gòu)誤差err=‖vk-v‖,當(dāng)誤差小于預(yù)先設(shè)定的誤差值時(shí),把hk作為下一層RBM的顯層繼續(xù)訓(xùn)練.如果重構(gòu)誤差大于設(shè)定的允許重構(gòu)誤差值時(shí)則重復(fù)步驟2,3,達(dá)到設(shè)置的最大迭代次數(shù)的時(shí)候停止當(dāng)前RBM的訓(xùn)練,繼續(xù)下一層訓(xùn)練.
循環(huán)迭代時(shí),使用以下公式更新連接權(quán)值以及偏置
Wk=Wk-1+η(P(hk-1|vk-1)vk-1-P(hk|vk)vk)
(21)
bk←bk-1+η(vk-1-vk)
(22)
ck←ck-1+η(hk-1-hk)
(23)
式中:vk和hk為進(jìn)行第k次迭代時(shí)顯層及隱層偏置;Wk為進(jìn)行第k次循環(huán)迭代時(shí)的權(quán)值.
DBN是由多個(gè)無(wú)監(jiān)督的RBM和一層有監(jiān)督的BP神經(jīng)網(wǎng)絡(luò)組成.訓(xùn)練完全部RBM后,最后還需根據(jù)BP算法,結(jié)合最后的樣本標(biāo)簽微調(diào)整體DBN的相關(guān)參數(shù).
DBN的具體訓(xùn)練過(guò)程如下
步驟1把數(shù)據(jù)依次輸入第一個(gè)RBM的顯層中,利用2.1.2步驟訓(xùn)練RBM,通過(guò)貪婪逐層學(xué)習(xí),逐步地完成所有RBM的學(xué)習(xí)訓(xùn)練.
步驟2在DBN 的頂層設(shè)置一個(gè)神經(jīng)網(wǎng)絡(luò)來(lái)完成分類,使用反向傳播算法,結(jié)合有標(biāo)簽的樣本對(duì)整體DBN網(wǎng)絡(luò)進(jìn)行參數(shù)的微調(diào).
基于KPCA分析的深度信念網(wǎng)絡(luò)模型見(jiàn)圖1.
圖1 基于KPCA和DBN的網(wǎng)絡(luò)模型
根據(jù)航空公司的發(fā)動(dòng)機(jī)故障診斷的經(jīng)驗(yàn),文中選取七個(gè)主要的發(fā)動(dòng)機(jī)監(jiān)測(cè)參數(shù)分別為作為表征發(fā)動(dòng)機(jī)健康狀況的關(guān)鍵參數(shù),選取的參數(shù)及其描述見(jiàn)表1.
選取了實(shí)際運(yùn)行過(guò)程中2中典型的發(fā)動(dòng)機(jī)故障,表2為選取的各運(yùn)行狀態(tài)下的數(shù)據(jù).
首先,使用1.1的統(tǒng)計(jì)平滑法和1.2的數(shù)據(jù)歸一化方法來(lái)預(yù)處理樣本數(shù)據(jù).然后,使用KPCA方法來(lái)減少預(yù)處理后數(shù)據(jù)的維度.分析結(jié)果見(jiàn)表3.
表1 關(guān)鍵參數(shù)
表2 樣本數(shù)
表3 核主成分分析結(jié)果
由表3可知,可以保留主元1和主元2,因?yàn)樗鼈兊睦塾?jì)貢獻(xiàn)率達(dá)到了99.523 4%,已經(jīng)具備了極大部分的樣本信息,并根據(jù)式(11)計(jì)算主元1和2的主元向量.
3.2.1深度信念網(wǎng)絡(luò)參數(shù)的設(shè)置
在DBN輸入節(jié)點(diǎn)與輸出節(jié)點(diǎn)數(shù)已知的前提下,經(jīng)過(guò)多次改變隱藏層層數(shù)和隱層節(jié)點(diǎn)數(shù),進(jìn)行訓(xùn)練和調(diào)試,最終確定網(wǎng)絡(luò)結(jié)構(gòu)為[2 4 4 3].選取的2個(gè)主元向量作為網(wǎng)絡(luò)的輸入,隱藏層設(shè)置為2層,每層包含4個(gè)神經(jīng)元,輸出層有3個(gè)神經(jīng)元,對(duì)應(yīng)于發(fā)動(dòng)機(jī)的運(yùn)行狀態(tài)種類數(shù),各運(yùn)行狀態(tài)編碼見(jiàn)表4.
表4 運(yùn)行狀態(tài)的編碼
3.2.2訓(xùn)練結(jié)果及訓(xùn)練過(guò)程
對(duì)DBN的訓(xùn)練主要是為了使最后網(wǎng)絡(luò)的輸出結(jié)果與訓(xùn)練樣本的標(biāo)簽盡可能一致,讓訓(xùn)練后的網(wǎng)絡(luò)能具備對(duì)數(shù)據(jù)的分類能力,根據(jù)3.2.1的DBN網(wǎng)絡(luò)相關(guān)參數(shù)的設(shè)置,將學(xué)習(xí)誤差置為0.01,循環(huán)迭代的閾值置為1 200.圖2為DBN網(wǎng)絡(luò)循環(huán)迭代中的誤差.
圖2 迭代誤差
由圖2中的誤差曲線可知,起始誤差在0.12左右,隨著迭代的不斷進(jìn)行,訓(xùn)練誤差快速下降,且下降速度由快到慢,最后誤差擬合值趨于0.062.
使用獨(dú)立于訓(xùn)練樣本的320個(gè)測(cè)試樣本來(lái)測(cè)試最終DBN網(wǎng)絡(luò)的預(yù)測(cè)分類性能,并且得到的性能測(cè)試結(jié)果見(jiàn)表5.
表5 測(cè)試結(jié)果
由表5可知,最終的DBN網(wǎng)絡(luò)對(duì)正常狀態(tài)下的發(fā)動(dòng)機(jī)識(shí)別正確率最高,為96%,對(duì)風(fēng)扇故障的識(shí)別率最低,為85%.
為了測(cè)試文中提出的KPCA+DBN故障檢測(cè)方法與其它方法的優(yōu)劣性,在相同環(huán)境下將文中方法與BP算法、DBN算法以及KPCA+BP算法作對(duì)比.比對(duì)四種方法故障檢測(cè)的準(zhǔn)確率和訓(xùn)練運(yùn)行時(shí)間,比對(duì)結(jié)果見(jiàn)表6.
表6 四種算法的性能對(duì)比
由表6可知,文中所采用的基于KPCA+DBN組合方法的正確率為 92.6%,比其它三種算法略高.主要原因是通過(guò)KPCA算法降低了輸入數(shù)據(jù)的維度,降低了數(shù)據(jù)間的過(guò)耦合性,同時(shí)深層神經(jīng)網(wǎng)絡(luò)比淺層神經(jīng)網(wǎng)絡(luò)具有更好的逼近復(fù)雜函數(shù)的能力,能夠使故障檢測(cè)的準(zhǔn)確性更高.
從花費(fèi)時(shí)間來(lái)看,基于核主成分分析的深度信念網(wǎng)絡(luò)會(huì)比基于核主成分分析的BP網(wǎng)絡(luò)多花費(fèi)了約12 s的時(shí)間,但是比單純的深度信念網(wǎng)絡(luò)少花費(fèi)了約11 s時(shí)間.主要是因?yàn)镈BN網(wǎng)絡(luò)的結(jié)構(gòu)復(fù)雜,相應(yīng)的訓(xùn)練時(shí)間則更長(zhǎng).經(jīng)KPCA降維后的數(shù)據(jù),由于輸入節(jié)點(diǎn)更少,則比單純的深度信念網(wǎng)絡(luò)的學(xué)習(xí)時(shí)間更少.
KPCA分析法能有效減少樣本數(shù)據(jù)的維數(shù),消除數(shù)據(jù)之間的非線性關(guān)聯(lián),而DBN網(wǎng)絡(luò)是基于概率充分學(xué)習(xí)樣本的特征,KPCA+DBN組合方法用于故障檢測(cè)的有效性高于傳統(tǒng)淺層BP 網(wǎng)絡(luò)方法,但學(xué)習(xí)所花時(shí)間比較長(zhǎng).