龍勝平,袁 戟,李錚偉,陳建萍,寧 可,孫 奧
(1.華東師范大學(xué)工商學(xué)院,上海 200241;2.上海東方低碳科技產(chǎn)業(yè)股份有限公司,上海 200052;3.同濟(jì)大學(xué)機(jī)械與能源工程學(xué)院,上海 200092)
工程核心部件RUL(Remaining Useful Life,剩余使用壽命)預(yù)測(cè)是設(shè)備全生命周期健康和運(yùn)維的核心內(nèi)容之一,基于數(shù)據(jù)驅(qū)動(dòng)的算法,可在很大程度上克服試驗(yàn)成本高、周期長的局限性,并逐漸成為剩余使用壽命預(yù)測(cè)和維護(hù)的重要而有效的解決方案。
由于預(yù)測(cè)的準(zhǔn)確性對(duì)保障設(shè)備安全運(yùn)行、降低維護(hù)成本意義重大,近年來樹模型強(qiáng)大的泛化性和魯棒性,尤其是XGB(極限梯度增強(qiáng))、LGB(非對(duì)稱加密)等算法在工程應(yīng)用中優(yōu)勢(shì)凸顯,使得樹模型在研究領(lǐng)域備受重視。Li Fei等[1](2018)為了更充分地抓取退化信息,以時(shí)間序列窗口的原始數(shù)據(jù)和渦扇引擎運(yùn)行時(shí)間為輸入項(xiàng),應(yīng)用LGB模型在C-MAPSS數(shù)據(jù)集上進(jìn)行有效性驗(yàn)證。Li Yiming[2](2019)采用了特征優(yōu)化降維方法,并應(yīng)用局部線性嵌入和LGB預(yù)測(cè)工具使用壽命。本文中選取LGB為基本模型,結(jié)合遺傳規(guī)劃的優(yōu)勢(shì),提升LGB算法的預(yù)測(cè)精度。
通過Stacking的算法集成方式提升模型精度,現(xiàn)正成為RUL預(yù)測(cè)領(lǐng)域的一大研究熱點(diǎn)。Shamaei Ehsan等[3](2016)通過對(duì)GP(Genetic programming,遺傳規(guī)劃)算法和模糊神經(jīng)網(wǎng)絡(luò)進(jìn)行算法集成(Stacking),提升單模型的預(yù)測(cè)精度,在泥沙沉積預(yù)測(cè)中進(jìn)行了應(yīng)用,并在實(shí)際數(shù)據(jù)集上做了有效性驗(yàn)證。在調(diào)研中發(fā)現(xiàn),GP算法是一種比較有效的非線性擬合算法,它能夠給出具體的預(yù)測(cè)值對(duì)應(yīng)的解析表達(dá)式,相比其他算法,有較強(qiáng)的解釋性[4]。Liao Linxia等[5](2014)通過GP算法對(duì)原數(shù)據(jù)集進(jìn)行預(yù)兆特征挖掘,從而提升剩余使用壽命計(jì)算精度。Qin Aisong等[6](2017)基于首次預(yù)測(cè)時(shí)間,應(yīng)用GP算法找尋更佳退化因子,并結(jié)合維納過程退化模型預(yù)測(cè)旋轉(zhuǎn)機(jī)器的剩余使用壽命。
在調(diào)研過程中發(fā)現(xiàn)通過Bagging的抽樣和樣本匹配,也能實(shí)現(xiàn)模型精度的提升[7]。Wang Tianyi等[8](2008)通過找尋疲勞裂紋擴(kuò)展測(cè)試集相似的訓(xùn)練集樣本,對(duì)樣本的剩余使用壽命(RUL)進(jìn)行了估計(jì),改進(jìn)的模型有更好的預(yù)測(cè)精度。李勁松等[9](2016)提出一種基于K-Means的聚類匹配曲線相似性的方法,估計(jì)航空渦扇發(fā)動(dòng)機(jī)剩余使用壽命,并驗(yàn)證了方法的有效性。武斌等[10](2016)提出了基于相似性的軸承剩余使用壽命預(yù)測(cè)方法,準(zhǔn)確率高達(dá)81.8%。
本文考慮訓(xùn)練集到測(cè)試集之間的匹配性,選取特征相似的樣本,應(yīng)用Bagging采樣方式保證模型精度提升。并通過GP算法實(shí)現(xiàn)強(qiáng)特征的提取,采用和LGB算法Stacking的集成方式,提升單模型的預(yù)測(cè)精度。本文在競(jìng)賽數(shù)據(jù)集上對(duì)模型的有效性進(jìn)行了驗(yàn)證,對(duì)相關(guān)研究具有一定的借鑒意義。
本節(jié)重點(diǎn)介紹LGB和GP算法。其中,LGB是微軟開發(fā)的基于梯度下降的Boosting算法。LGB通過基于梯度的單邊采樣和互斥特征捆綁,有效地降低處理樣本的時(shí)間復(fù)雜度。此外,在大量的數(shù)據(jù)實(shí)驗(yàn)和實(shí)踐應(yīng)用中都證明LGB在計(jì)算精度上有明顯優(yōu)勢(shì),特別適用于大型數(shù)據(jù)集的情況。
假設(shè)訓(xùn)練集(xs,ys)和測(cè)試集(xt,yt),其中xs和xt分別表示訓(xùn)練集和測(cè)試集特征,ys和yt分別表示訓(xùn)練集和測(cè)試集的部件真實(shí)的剩余使用壽命(RUL)。通過LGB對(duì)測(cè)試集的RUL進(jìn)行估計(jì),可表示為[1]:
GP算法是一種基于遺傳算法原理構(gòu)建的非線性擬合算法,有著明顯的設(shè)置參數(shù)少、模型適應(yīng)性強(qiáng)、運(yùn)算效率高、模型可解釋性強(qiáng)等特點(diǎn)[5]。由于GP算法中應(yīng)用了遺傳算法的基本原理,解析表達(dá)式會(huì)隨遺傳的代數(shù)會(huì)發(fā)生變異,通常迭代更新20~50代后結(jié)果較為穩(wěn)定。
本文采用Stacking算法集成方式來實(shí)現(xiàn)LGB和GP算法的集成。首先通過GP算法從原特征數(shù)據(jù)抽取得到新的特征,即g(xt)=xt+,將變換后的訓(xùn)練集和測(cè)試集({xs;xs+},ys)和({xt;xt+},yt),應(yīng)用LGB進(jìn)行RUL預(yù)測(cè),代入式(1)可得:
其中,fk(·)通過訓(xùn)練集數(shù)據(jù)({xs;xs+},ys)確定。
由于LGB中通過互斥特征捆綁(EPB)的方式來實(shí)現(xiàn)特征的選取,是通過訓(xùn)練集樣本特征來實(shí)現(xiàn)的,未考慮測(cè)試集和訓(xùn)練集樣本特征的相似性和匹配性問題。
訓(xùn)練集特征xs和測(cè)試集特征xt樣本總計(jì)分別為M和N,且M>>N。計(jì)算每個(gè)訓(xùn)練集樣本xtj(j=1,2,…,N)到訓(xùn)練集特征的距離,并以最小距離對(duì)應(yīng)的訓(xùn)練樣本重新構(gòu)建M個(gè)訓(xùn)練樣本集{xs'}:
其中,dj(·,·)表示距離算子,可表示為:
為確保通過若干弱學(xué)習(xí)器集成后降低原模型的預(yù)測(cè)誤差[7],本文采用Bagging方式隨機(jī)采樣,將訓(xùn)練集(xs,ys)抽樣為n個(gè)訓(xùn)練子集,即(xsi,ysi),i=1,2,…,n,然后再進(jìn)行特征匹配計(jì)算,重構(gòu)新的訓(xùn)練子集。
為了簡(jiǎn)化表達(dá),本文以下忽略剩余使用壽命的標(biāo)簽子集ysi,用xsi表示訓(xùn)練集子集,其他表達(dá)式以此類推。根據(jù)上一章所述,通過選取特征集中的若干特征作為特征子集,并以此為基礎(chǔ)計(jì)算和測(cè)試集最為匹配的訓(xùn)練集樣本作為訓(xùn)練樣本{xsi'}。然后通過GP算法進(jìn)行新特征提取,得到計(jì)算結(jié)果{xsi+},同樣操作可應(yīng)用于測(cè)試集特征{xt},獲得新的特征{xt+}。將新特征和原特征匹配后的子集合并,即{xsi';xsi+},代入LGB進(jìn)行模型訓(xùn)練,得到對(duì)應(yīng)的k輪迭代的決策樹模型fki。在n個(gè)訓(xùn)練新子集上獲得的模型,可應(yīng)用于測(cè)試集對(duì)應(yīng)的新特征,并代入式(3)預(yù)測(cè)部件的剩余使用壽命:
經(jīng)過若干個(gè)弱學(xué)習(xí)器的學(xué)習(xí),取得期望值,根據(jù)Bagging算法的基本原理,得到的計(jì)算結(jié)果誤差應(yīng)當(dāng)小于原有單個(gè)LGB模型的計(jì)算結(jié)果誤差,圖1為算法的大致架構(gòu)和計(jì)算流程。
研究案例源自2019科大訊飛工程核心部件剩余壽命預(yù)測(cè)賽題。已知某類工程機(jī)械設(shè)備的核心耗損性部件的特征數(shù)據(jù)字段包括:部件工作時(shí)長、累計(jì)量參數(shù)1和2、轉(zhuǎn)速信號(hào)1和2、壓力信號(hào)1和2、溫度信號(hào)、流量信號(hào)、電流信號(hào)、開關(guān)信號(hào)1和2、告警信號(hào)1,以及設(shè)備類型。訓(xùn)練和測(cè)試數(shù)據(jù)文件分別為1100個(gè)和890個(gè),每個(gè)文件對(duì)應(yīng)一個(gè)工程部件的分時(shí)監(jiān)測(cè)數(shù)據(jù),需要預(yù)測(cè)測(cè)試部件的剩余使用壽命。預(yù)測(cè)準(zhǔn)確性的評(píng)估函數(shù)定義如下:
圖1 算法流程架構(gòu)
其中,yt和分別表示樣本真實(shí)的使用壽命和預(yù)測(cè)值;N表示測(cè)試集樣本數(shù)量,即N=890。
本文主要是在原有的特征的基礎(chǔ)上,通過總使用壽命0.35~0.85每隔0.01的比例進(jìn)行切片,并提取對(duì)應(yīng)時(shí)間切片中的最大值、最小值、中位數(shù)、均值、25%分位數(shù)(下分位數(shù))、75%分位數(shù)(上分位數(shù))、complexity、標(biāo)準(zhǔn)差、偏度、峰度等統(tǒng)計(jì)學(xué)特征。此外,提取觀測(cè)時(shí)序中的突變點(diǎn)作為特征,即時(shí)間序列中變化超過±20%的數(shù)據(jù)點(diǎn)。
此時(shí)特征已將近1200維,考慮到占用的計(jì)算資源,且并非所有的特征都是有效的,根據(jù)缺失值和零值所占的比例,剔除占比超過50%的特征,并對(duì)非開關(guān)信號(hào)1、告警信號(hào)1進(jìn)行差分處理,變換為one-hot形式的數(shù)據(jù)格式,這兩種方式提升預(yù)測(cè)精度3%以上。隨后采用Bagging的方式對(duì)50%的訓(xùn)練集樣本進(jìn)行隨機(jī)抽樣,隨機(jī)抽取其中若干條特征進(jìn)行匹配(20~50維效果最佳),其中部件當(dāng)前使用壽命為非常重要的參考特征。
LGB算法在訓(xùn)練集上用2折交叉驗(yàn)證,迭代次數(shù)為800,早停迭代次數(shù)為200,學(xué)習(xí)率為0.01,最大葉子數(shù)量為250,最大樹深為5,boosting方式選擇gbdt,損失函數(shù)選擇regression,隨機(jī)種子選取1024。GP算法繁衍代數(shù)為50,提取新特征時(shí)繁衍代數(shù)為20,其他參數(shù)遵循默認(rèn)設(shè)置[12]。
在Bagging算法獲取的訓(xùn)練子集{xsi}上,GP和LGB算法得到的最終分?jǐn)?shù)略有差異,約為0.008。而在通過特征匹配的訓(xùn)練子集{xsi'}上兩種算法分別有0.024和0.03的精度提升。通過特征匹配和GP+LGB算法集成,預(yù)測(cè)壽命的精度相比只是基于Bagging訓(xùn)練集{xsi} 的模型效果有將近0.025~0.03的精度提升(表1)。
部件當(dāng)前使用壽命對(duì)剩余使用壽命預(yù)測(cè)的影響較為顯著。圖2所示為實(shí)驗(yàn)5部件當(dāng)前使用時(shí)長和剩余壽命之間的分布關(guān)系,可觀察到部件當(dāng)前使用壽命約為4000以下時(shí),剩余和當(dāng)前使用壽命存在一定線性比例關(guān)系,而當(dāng)前壽命大于4000時(shí),剩余使用壽命類似于漸近線,但分布較為發(fā)散。這可能是由于測(cè)試集給出的部件當(dāng)前使用壽命時(shí)間越短,預(yù)測(cè)的不確定性越大。在實(shí)驗(yàn)過程中發(fā)現(xiàn)當(dāng)前使用壽命已大于4000時(shí),通過Bagging、特征匹配、Stacking方式生成的預(yù)測(cè)模型,預(yù)測(cè)得到結(jié)果的離散程度越大,而實(shí)際精度也越高。
表1 基于訓(xùn)練集和算法的反饋結(jié)果
圖2 部件當(dāng)前和剩余使用壽命分布
工程核心部件壽命預(yù)測(cè)對(duì)于預(yù)測(cè)性維護(hù)意義重大,本文在GP和LGB的Stacking集成算法的基礎(chǔ)上應(yīng)用Bagging以及特征匹配算法,通過數(shù)據(jù)實(shí)驗(yàn)論證該方法在的有效性,對(duì)相似工程問題能夠提供較好的解決方案。運(yùn)用該方法和一些數(shù)據(jù)預(yù)處理技術(shù),東方低碳算法團(tuán)隊(duì)在2019科大訊飛比賽工程機(jī)械核心部件壽命預(yù)測(cè)挑戰(zhàn)賽決賽中取得了團(tuán)隊(duì)第四名的成績,并榮獲了算法菁英獎(jiǎng)。
感謝在2019科大訊飛比賽工程機(jī)械核心部件壽命預(yù)測(cè)挑戰(zhàn)賽中孫奧、袁戟、王尉同、熊喬楓、李敬杰等參賽選手的努力付出和出色表現(xiàn)。