雷 達(dá), 鐘詩勝
(哈爾濱工業(yè)大學(xué)機(jī)電工程學(xué)院 哈爾濱,150001)
?
用集成過程神經(jīng)網(wǎng)絡(luò)預(yù)測民航發(fā)動(dòng)機(jī)振動(dòng)趨勢*
雷 達(dá), 鐘詩勝
(哈爾濱工業(yè)大學(xué)機(jī)電工程學(xué)院 哈爾濱,150001)
提出了一種集成過程神經(jīng)網(wǎng)絡(luò)預(yù)測模型用于民航發(fā)動(dòng)機(jī)振動(dòng)信號趨勢預(yù)測。首先,對AdaBoost.RT算法的誤差函數(shù)進(jìn)行了改進(jìn),并采用自適應(yīng)調(diào)整策略在訓(xùn)練過程中自動(dòng)調(diào)節(jié)算法的分類閾值;然后,以改進(jìn)的AdaBoost.RT算法為集成學(xué)習(xí)框架構(gòu)建集成過程神經(jīng)網(wǎng)絡(luò)(process neural network,簡稱PNN)預(yù)測模型。通過對兩組實(shí)際民航發(fā)動(dòng)機(jī)振動(dòng)信號序列的預(yù)測對集成模型的預(yù)測效果進(jìn)行了評估。結(jié)果表明,在具有更加簡單網(wǎng)絡(luò)結(jié)構(gòu)的情況下,集成PNN模型的預(yù)測效果好于單一PNN模型。此外,提出的改進(jìn)AdaBoost.RT算法的效果優(yōu)于原始AdaBoost.RT以及僅改進(jìn)了閾值調(diào)整方法的AdaBoost.RT算法。對比結(jié)果表明,提出的集成PNN模型適用于民航發(fā)動(dòng)機(jī)振動(dòng)信號變化趨勢預(yù)測。
航空發(fā)動(dòng)機(jī); 振動(dòng)信號; 趨勢預(yù)測; 集成學(xué)習(xí); AdaBoost.RT; 過程神經(jīng)網(wǎng)絡(luò)
對排氣溫度、轉(zhuǎn)子振動(dòng)等健康狀態(tài)參數(shù)進(jìn)行監(jiān)測和趨勢預(yù)測是民航發(fā)動(dòng)機(jī)健康狀態(tài)監(jiān)控的重要內(nèi)容。時(shí)間序列分析、人工神經(jīng)網(wǎng)絡(luò)(artificial neural network,簡稱ANN)[1]和過程神經(jīng)網(wǎng)絡(luò)[2]等方法都被用來對民航發(fā)動(dòng)機(jī)健康狀態(tài)參數(shù)變化趨勢進(jìn)行預(yù)測。PNN由于模擬了實(shí)際生物神經(jīng)元的時(shí)間聚合特性,能夠有效處理實(shí)際系統(tǒng)中存在的時(shí)間累積效應(yīng),具有較好的預(yù)測效果[3-4]。
目前,一般通過建立全局模型的方法進(jìn)行發(fā)動(dòng)機(jī)健康狀態(tài)參數(shù)預(yù)測,即采用全部的訓(xùn)練樣本建立一個(gè)單一預(yù)測模型進(jìn)行預(yù)測。然而,全局模型可能難以完整描述發(fā)動(dòng)機(jī)健康狀態(tài)參數(shù)時(shí)間序列的某些局部特性,且模型結(jié)構(gòu)比較復(fù)雜。例如,ANN和PNN等神經(jīng)網(wǎng)絡(luò)模型在實(shí)際應(yīng)用中難以確定合適的網(wǎng)絡(luò)結(jié)構(gòu),網(wǎng)絡(luò)訓(xùn)練有可能陷入局部最優(yōu),導(dǎo)致難以獲得最佳的預(yù)測精度。集成學(xué)習(xí)通過組合一組“弱學(xué)習(xí)機(jī)”,即非最佳預(yù)測效果的學(xué)習(xí)機(jī)獲得更高的預(yù)測精度。AdaBoost就是一種有效的集成學(xué)習(xí)算法[5]。AdaBoost賦予上一次學(xué)習(xí)中錯(cuò)誤樣本更大的權(quán)重,按照權(quán)值從訓(xùn)練樣本中選擇一部分“硬”樣本訓(xùn)練新的學(xué)習(xí)機(jī),使得各個(gè)學(xué)習(xí)機(jī)適應(yīng)于當(dāng)前選擇的局部樣本。通過不同學(xué)習(xí)機(jī)對不同局部樣本的學(xué)習(xí),AdaBoost可以克服全局模型的不足,在不追求單個(gè)學(xué)習(xí)機(jī)最佳預(yù)測精度的同時(shí)獲得較好的總體預(yù)測效果。可見,采用集成學(xué)習(xí)模型可以減少模型優(yōu)化的相關(guān)工作,容易獲得比單一模型更好的預(yù)測效果。
有鑒于此,筆者針對民航發(fā)動(dòng)機(jī)振動(dòng)信號趨勢預(yù)測問題,對面向回歸問題的AdaBoost.RT[6]算法進(jìn)行了改進(jìn),以改進(jìn)的AdaBoost.RT算法作為集成學(xué)習(xí)框架,以PNN作為弱學(xué)習(xí)機(jī)構(gòu)建集成PNN預(yù)測模型對民航發(fā)動(dòng)機(jī)振動(dòng)信號進(jìn)行趨勢預(yù)測。
前饋過程神經(jīng)網(wǎng)絡(luò)模型是最為常用的過程神經(jīng)網(wǎng)絡(luò)模型,圖1即為一種典型的三層前饋過程神經(jīng)網(wǎng)絡(luò)模型。該模型的隱層由過程神經(jīng)元[2]組成,而輸出層由普通神經(jīng)元組成。過程神經(jīng)元以時(shí)變函數(shù)作為輸入,以模擬生物神經(jīng)元的持續(xù)輸入刺激,其連接權(quán)也為時(shí)變函數(shù),通過積分算子來實(shí)現(xiàn)時(shí)間聚合運(yùn)算。
圖1 過程神經(jīng)網(wǎng)絡(luò)模型Fig.1 PNN model
假設(shè)輸出層的激勵(lì)函數(shù)為線性函數(shù)g(z)=z,則圖1所示的過程神經(jīng)網(wǎng)絡(luò)模型的系統(tǒng)輸出為
(1)
同傳統(tǒng)人工神經(jīng)網(wǎng)絡(luò)一樣,過程神經(jīng)網(wǎng)絡(luò)可以采用梯度下降法、Levenberg Marquardt算法等進(jìn)行訓(xùn)練。同時(shí),為了簡化積分運(yùn)算,需要將過程神經(jīng)網(wǎng)絡(luò)的輸入函數(shù)和權(quán)函數(shù)進(jìn)行正交基展開[7]。
2.1 改進(jìn)的AdaBoost.RT算法
AdaBoost.RT是從AdaBoost發(fā)展而來的一種面向回歸問題的集成學(xué)習(xí)算法。AdaBoost.RT計(jì)算訓(xùn)練樣本的相對誤差,引入一個(gè)分類閾值φ將回歸問題轉(zhuǎn)化為分類問題,從而依照AdaBoost框架進(jìn)行模型訓(xùn)練。由于其使用的直觀性和簡便性,AdaBoost.RT得到了廣泛的應(yīng)用[8-9]。因此,筆者采用AdaBoost.RT作為集成過程神經(jīng)網(wǎng)絡(luò)模型的基本框架。
由于AdaBoost.RT使用的是相對誤差,因此在實(shí)際使用中具有較小值的訓(xùn)練樣本,在絕對誤差較小的情況下也可能產(chǎn)生較大的相對誤差,導(dǎo)致算法可能集中于具有較小值的樣本,從而失效。為克服上述不足,構(gòu)造誤差函數(shù)為
(2)
(3)
(4)
另外,分類閾值φ的大小直接影響AdaBoost.RT的使用效果,過大或者過小的φ都會(huì)對算法的預(yù)測效果造成影響,導(dǎo)致難以選擇合適的φ[10]。筆者提出一種根據(jù)誤差變化自適應(yīng)調(diào)整閾值的改進(jìn)方法。首先,賦予φ一個(gè)合適的初始值;然后,讓φ隨著實(shí)際訓(xùn)練誤差的變化而自適應(yīng)調(diào)整,具體為
(5)
如果訓(xùn)練誤差變大,則應(yīng)當(dāng)增加φ值,反之則減小φ值。另外,為了保證算法的有效性,應(yīng)當(dāng)對φ的取值范圍進(jìn)行限定。當(dāng)φ值大于訓(xùn)練誤差lt的最大值或者小于lt的最小值時(shí),筆者取φ為lt的中值。
2.2 集成預(yù)測模型構(gòu)造
改進(jìn)的AdaBoost.RT算法步驟如下。
按照下式更新權(quán)值Dt
其中:Zt為標(biāo)準(zhǔn)化因子。
4) 輸出
3.1 數(shù)據(jù)預(yù)處理與模型建立
民航發(fā)動(dòng)機(jī)轉(zhuǎn)子振動(dòng)狀態(tài)體現(xiàn)了發(fā)動(dòng)機(jī)的健康狀態(tài),一般通過與基線的偏差值(百分比)來描述。振動(dòng)偏差值越大,表明發(fā)動(dòng)機(jī)偏離基線越多,發(fā)動(dòng)機(jī)的性能可能發(fā)生了衰退。因此,有必要對發(fā)動(dòng)機(jī)振動(dòng)信號的變化趨勢進(jìn)行預(yù)測。
筆者采用平均絕對百分誤差(mean absolute percentage error,簡稱MAPE)以及均方根誤差(root mean square error,簡稱RMSE)描述預(yù)測誤差。MAPE和RMSE的計(jì)算公式分別為
(6)
(7)
3.2 測試結(jié)果
為了進(jìn)行對比,在采用本研究方法進(jìn)行預(yù)測的同時(shí)采用單一PNN、原始AdaBoost.RT以及文獻(xiàn)[8]的改進(jìn)AdaBoost.RT算法進(jìn)行預(yù)測。為方便起見,記文獻(xiàn)[8]的改進(jìn)AdaBoost.RT算法為Ref方法。在實(shí)驗(yàn)中,本研究方法和Ref方法的閾值初始值為φ=0.2,原始AdaBoost.RT的閾值φ通過試探確定。另外,3種集成預(yù)測模型的迭代次數(shù)(弱學(xué)習(xí)機(jī)個(gè)數(shù))及弱學(xué)習(xí)機(jī)隱層神經(jīng)元個(gè)數(shù)通過試探確定。單一PNN的隱層神經(jīng)元個(gè)數(shù)通過交叉驗(yàn)證確定。以上方法均采用選定的相同參數(shù)設(shè)置進(jìn)行5次重復(fù)試驗(yàn),取平均值作為最終預(yù)測結(jié)果。
各模型對ΔVN2序列的預(yù)測結(jié)果如圖2~4所示。模型參數(shù)設(shè)置和誤差見表1。各模型對ΔVN1序列的預(yù)測結(jié)果如圖5~7所示。模型參數(shù)設(shè)置和誤差見表2。
圖2 采用本研究方法的ΔVN2預(yù)測結(jié)果Fig.2 Prediction results of ΔVN2 using the proposed method
圖3 采用Ref方法的ΔVN2預(yù)測結(jié)果Fig.3 Prediction results of ΔVN2 using the reference method
圖4 采用原始AdaBoost.RT方法的ΔVN2預(yù)測結(jié)果Fig.4 Prediction results of ΔVN2 using the original AdaBoost.RT
表1 模型參數(shù)設(shè)置和ΔVN2預(yù)測誤差
圖5 采用本研究方法的ΔVN1預(yù)測結(jié)果Fig.5 Prediction results of ΔVN1 using the proposed method
圖6 采用Ref方法的ΔVN1預(yù)測結(jié)果Fig.6 Prediction results of ΔVN1 using the reference method
圖7 采用原始AdaBoost.RT方法的ΔVN1預(yù)測結(jié)果Fig.7 Prediction results of ΔVN1 using the original AdaBoost.RT
表2 模型參數(shù)設(shè)置和ΔVN1預(yù)測誤差
可以看出,對于兩種不同類型的振動(dòng)信號時(shí)間序列,在不同訓(xùn)練樣本和測試樣本比例的條件下,集成PNN預(yù)測模型的預(yù)測效果都好于單一PNN的預(yù)測效果,且作為弱學(xué)習(xí)機(jī)的PNN的網(wǎng)絡(luò)結(jié)構(gòu)比單一PNN的網(wǎng)絡(luò)結(jié)構(gòu)簡單,證明了通過集成次優(yōu)PNN模型獲得較好預(yù)測效果的方法是可行的,從而可以有效簡化民航發(fā)動(dòng)機(jī)健康狀態(tài)預(yù)測建模中模型優(yōu)化工作。
雖然文獻(xiàn)[8]改進(jìn)算法的預(yù)測效果實(shí)際上比原始AdaBoost.RT的預(yù)測效果略差,但該算法只需給定初始閾值,大大減少了閾值優(yōu)化的相關(guān)工作,因此其改進(jìn)是有效的。筆者提出的集成預(yù)測模型對于兩種類型振動(dòng)信號的預(yù)測效果好于未改進(jìn)的AdaBoost.RT算法以及文獻(xiàn)[8]的改進(jìn)算法。這是因?yàn)楸狙芯繉daBoost.RT算法的改進(jìn)采用了更加合理的誤差函數(shù)和自適應(yīng)閾值調(diào)整方法,易取得較好的預(yù)測效果。該結(jié)果同時(shí)也表明了該模型對于實(shí)際發(fā)動(dòng)機(jī)振動(dòng)信號趨勢預(yù)測具有良好的適應(yīng)性。
1) 提出了一種改進(jìn)的AdaBoost.RT集成學(xué)習(xí)算法,該方法采用改進(jìn)的誤差函數(shù)以避免算法在訓(xùn)練中向具有較小值的樣本集中,保證了算法的有效性。另外,該方法在訓(xùn)練過程中可以自適應(yīng)調(diào)整分類閾值,使用更為方便。
2) 以過程神經(jīng)網(wǎng)絡(luò)作為弱學(xué)習(xí)機(jī),采用改進(jìn)的AdaBoost.RT算法構(gòu)建集成模型對民航發(fā)動(dòng)機(jī)振動(dòng)信號變化趨勢進(jìn)行預(yù)測,并且與單一PNN模型、基于原始AdaBoost.RT以及只改進(jìn)了閾值調(diào)整方法的AdaBoost.RT算法的集成PNN模型進(jìn)行了對比。結(jié)果表明,本研究方法的預(yù)測效果好于對比方法,對民航發(fā)動(dòng)機(jī)振動(dòng)信號變化趨勢預(yù)測具有更好的適應(yīng)性。
[1] 陳果. 用結(jié)構(gòu)自適應(yīng)神經(jīng)網(wǎng)絡(luò)預(yù)測航空發(fā)動(dòng)機(jī)性能趨勢[J].航空學(xué)報(bào), 2007, 28(3): 535-539.
Chen Guo. Forecasting engine performance trend by using structure self-adaptive neural network[J]. Acta Aeronautica Et Astronautica Sinica, 2007, 28(3): 535-539. (in Chinese)
[2] 何新貴,梁久禎.過程神經(jīng)網(wǎng)絡(luò)的若干理論問題[J].中國工程科學(xué), 2000, 2(12): 40-44.
He Xingui, Liang Jiuzhen. Some theoretical issues on procedure neural networks[J]. Engineering Science, 2000, 2(12): 40-44. (in Chinese)
[3] 金向陽, 林琳, 鐘詩勝, 等. 航空發(fā)動(dòng)機(jī)振動(dòng)趨勢預(yù)測的過程神經(jīng)網(wǎng)絡(luò)法[J]. 振動(dòng)、測試與診斷, 2011,31(3):331-334.
Jin Xiangyang, Lin Lin, Zhong Shisheng, et al. Prediction of aeroengine vibration trend using process neural network[J]. Journal of Vibration, Measurement & Diagnosis, 2011, 31(3):331-334. (in Chinese)
[4] Ding Gang, Zhong Shisheng. Approximation capability analysis of parallel process neural network with application to aircraft engine health condition monitoring [J]. Lecture Notes in Computer Science, 2007, 4493(3): 66-72.
[5] Freund Y, Schapire R. A desicion-theoretic generalization of on-line learning and an application to boosting computational learning theory[J]. Lecture Notes in Computer Science, 1995, 904:23-37.
[6] Solomatine D P, Shrestha D L. AdaBoost.RT: a boosting algorithm for regression problems[J]. Neural Networks, 2004, 2: 1163-1168.
[7] 何新貴,梁久禎,許少華. 過程神經(jīng)網(wǎng)絡(luò)的訓(xùn)練及其應(yīng)用[J].中國工程科學(xué),2001,3(4):31-35.
He Xingui, Liang Jiuzhen, Xu Shaohua. Learning and applications of procedure neural networks[J]. Engineering Science, 2001, 3(4):31-35.(in Chinese)
[8] Tian Huixin, Mao Zhizhong. An ensemble elm based on modified AdaBoost.RT algorithm for predicting the temperature of molten steel in ladle furnace[J]. IEEE Transactions on Automation Science and Engineering, 2010, 7(1):73-80.
[9] Schclar A, Tsikinovsky A, Rokach L, et al. Ensemble methods for improving the performance of neighborhood-based collaborative filtering[C]∥Proceedings of the Third ACM Conference on Recommender Systems. New York: [s.n.], 2009.
[10]Shrestha D L, Solomatine D P. Experiments with AdaBoost.RT, an improved boosting scheme for regression[J]. Neural Computation, 2006, 18(7): 1678-1710.
[11]Schafer R W. What is a savitzky-golay filter[J]. Signal Processing Magazine, IEEE, 2011, 28(4): 111-117.
*國家高技術(shù)研究發(fā)展計(jì)劃(“八六三”計(jì)劃)資助項(xiàng)目(2012AA040911-1);國家自然科學(xué)基金資助項(xiàng)目(60939003)
2013-01-21;
2013-05-02
10.16450/j.cnki.issn.1004-6801.2015.01.023
TH183; TH263.6
雷達(dá),男,1984年11月生,博士研究生。主要研究方向?yàn)閺?fù)雜裝備健康狀態(tài)監(jiān)測與預(yù)測方法。曾發(fā)表《卷積和離散過程神經(jīng)網(wǎng)絡(luò)及其在航空發(fā)動(dòng)機(jī)排氣溫度預(yù)測中的應(yīng)用》(《航空學(xué)報(bào)》2012年第33卷第3期)等論文。 E-mail:leidame@163.com