陸航, 楊濤存, 劉洋, 于衛(wèi)東, 田光榮, 肖齊, 李方烜
(中國(guó)鐵道科學(xué)研究院集團(tuán)有限公司機(jī)車車輛研究所,北京 100081)
由于我國(guó)現(xiàn)役動(dòng)車組速度等級(jí)和運(yùn)營(yíng)環(huán)境差異較大,同時(shí)又存在多種技術(shù)平臺(tái)的背景,基于傳統(tǒng)統(tǒng)計(jì)學(xué)概念的數(shù)學(xué)方法研究故障規(guī)律及其回歸問題的方法不足以滿足研究需要。同時(shí)由于動(dòng)車組本身涉及多種功能系統(tǒng)的故障研究對(duì)象,單純通過(guò)機(jī)理建立故障層級(jí)聯(lián)系成本過(guò)高,系統(tǒng)或部件級(jí)的失效關(guān)系很難直接描述其邏輯映射[1-3]。因此當(dāng)分析動(dòng)車組故障率趨勢(shì)時(shí),考慮通過(guò)數(shù)據(jù)驅(qū)動(dòng)的方式,不深入探究其變化機(jī)理,如因高級(jí)修大量更新部件的系統(tǒng),源頭質(zhì)量整治、技術(shù)規(guī)章改進(jìn)后故障率大幅降低,氣候因素導(dǎo)致的故障率波動(dòng),涉及動(dòng)車組生命周期內(nèi)大量轉(zhuǎn)配問題導(dǎo)致其運(yùn)行環(huán)境的改變等。
與通過(guò)數(shù)理統(tǒng)計(jì)及機(jī)理模型不同,機(jī)器學(xué)習(xí)的概念是通過(guò)特征提取、數(shù)據(jù)驅(qū)動(dòng)的方式找到輸入與輸出數(shù)據(jù)間的某種聯(lián)系。循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)是接受序列數(shù)據(jù)為輸入,在序列的演進(jìn)方向(隨故障率統(tǒng)計(jì)的自然年推進(jìn))進(jìn)行遞歸,利用回歸問題的監(jiān)督學(xué)習(xí),所有節(jié)點(diǎn)按鏈?zhǔn)竭B接的遞歸神經(jīng)網(wǎng)絡(luò),在解決復(fù)雜、非線性、難以直接找到其規(guī)律的時(shí)序問題時(shí)有較好效果[4]。在預(yù)測(cè)問題如股票價(jià)格與投資量化等經(jīng)濟(jì)學(xué)領(lǐng)域[5-6]以及分類問題如網(wǎng)絡(luò)流量分析[7]和人類行為識(shí)別[8]等RNN 均有廣泛運(yùn)用。陸冰鑒等[9]對(duì)傳統(tǒng)模態(tài)分析(EMD) 后的子時(shí)間序列進(jìn)行長(zhǎng)短期記憶(LSTM)序列建模,在預(yù)測(cè)風(fēng)速方面取得進(jìn)展。電力通信網(wǎng)絡(luò)流量也有類似隨機(jī)波動(dòng)性強(qiáng)的特性,黃國(guó)倫等[10]提取多個(gè)本征模態(tài)分量和殘差差分量。對(duì)于前者運(yùn)用類似EMD-LSTM 混合模型預(yù)測(cè)趨勢(shì),對(duì)后者用SVR 擬合建模預(yù)測(cè),可以更好體現(xiàn)整體流量的發(fā)展趨勢(shì)。Sim?o 等[11]提出將16 通道肌電信號(hào) (EMG)以步長(zhǎng)分為靜態(tài)、動(dòng)態(tài)判別的方法,其中靜態(tài)識(shí)別采用前饋神經(jīng)網(wǎng)絡(luò)(FFNN),動(dòng)態(tài)序列識(shí)別采用LSTM 分析,實(shí)際測(cè)試效果較好。對(duì)比其他機(jī)器學(xué)習(xí)算法,如動(dòng)態(tài)貝葉斯與馬科夫鏈等基于概率的模型,由于前述大長(zhǎng)交路運(yùn)營(yíng)環(huán)境差異,同時(shí)存在動(dòng)車組檢修、轉(zhuǎn)配產(chǎn)生的統(tǒng)計(jì)難度,很難建立獨(dú)立事件下的先驗(yàn)知識(shí)模型。在交通領(lǐng)域,利用循環(huán)神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的相關(guān)研究可見于:利用多源輸入數(shù)據(jù)的公交到站時(shí)間預(yù)測(cè)及其與其他 KNN、SVR 等主流預(yù)測(cè)模型的對(duì)比[12]。李萬(wàn)等[13]通過(guò)相關(guān)性分析得到鐵路營(yíng)業(yè)里程、國(guó)家鐵路客車擁有量、國(guó)內(nèi)生產(chǎn)總值和年末總?cè)丝谧鳛殍F路客運(yùn)量的重要影響因素并利用LSTM對(duì)鐵路客運(yùn)量進(jìn)行預(yù)測(cè)。
介紹序列分析方法(同時(shí)考慮確定性和隨機(jī)性因素),建立對(duì)應(yīng)動(dòng)車組服役性能演變規(guī)律的以RNN為基礎(chǔ)的LSTM模型,以揭示動(dòng)車組整車及關(guān)鍵系統(tǒng)的服役性能演變。利用高鐵開通10 年來(lái)的歷史故障數(shù)據(jù)進(jìn)行特征提取,作為模型輸入源,通過(guò)模型優(yōu)化、參數(shù)調(diào)整及訓(xùn)練結(jié)果泛化等機(jī)器學(xué)習(xí)技術(shù),實(shí)現(xiàn)對(duì)系統(tǒng)級(jí)故障規(guī)律的預(yù)測(cè)。
運(yùn)用RNN 處理等間隔動(dòng)車組故障率數(shù)據(jù)流程見圖1,其下、中、上3 層結(jié)構(gòu)可簡(jiǎn)單理解為輸入層—隱含層—輸出層,實(shí)線箭頭部分自下而上的數(shù)據(jù)流為神經(jīng)網(wǎng)絡(luò)前饋傳遞的過(guò)程。在輸入層中,提取動(dòng)車組信息管理系統(tǒng)(EMIS)的結(jié)構(gòu)化與非結(jié)構(gòu)化信息,對(duì)故障數(shù)據(jù)原因等進(jìn)行人工文本標(biāo)注與自然語(yǔ)言處理[14],并與結(jié)構(gòu)化故障數(shù)據(jù)匹配。將數(shù)據(jù)依運(yùn)行速度級(jí)、車型高級(jí)修周期關(guān)聯(lián)分為幾種車型,作為輸入層數(shù)據(jù)源。該特征提取后的自然年維度等間隔時(shí)間序列,從t時(shí)刻向前n個(gè)周期(包括t時(shí)刻)輸入。每個(gè)輸入層節(jié)點(diǎn)包含該時(shí)刻6 個(gè)關(guān)鍵子系統(tǒng)故障率,其中n視數(shù)據(jù)結(jié)構(gòu)特征及訓(xùn)練泛化的結(jié)果而定。
圖1 運(yùn)用RNN處理等間隔動(dòng)車組故障率數(shù)據(jù)流程
模型結(jié)構(gòu)中的隱含層與傳統(tǒng)前饋(又稱前遞)神經(jīng)網(wǎng)絡(luò)(FFNN)不同的是,前一時(shí)刻(t-1)的狀態(tài)也會(huì)影響t時(shí)刻模型運(yùn)算。具體地說(shuō),為了預(yù)測(cè)下一周期,即t+1 時(shí)刻的動(dòng)車組故障率,除了考慮t-n,…,t時(shí)刻的實(shí)際故障率數(shù)據(jù)外,還需RNN 模型前n個(gè)時(shí)刻隱含層運(yùn)算的結(jié)果。而從結(jié)構(gòu)上說(shuō),F(xiàn)FNN 經(jīng)過(guò)訓(xùn)練,只需前幾個(gè)時(shí)段的故障率作為運(yùn)算輸入預(yù)測(cè)t+1時(shí)刻數(shù)據(jù)。需要注意的是,RNN 結(jié)構(gòu)圖不代表神經(jīng)元的個(gè)數(shù)與具體位置關(guān)系,如h(t)為t時(shí)刻隱含層全部神經(jīng)元運(yùn)算的狀態(tài)。
在預(yù)測(cè)層中,節(jié)點(diǎn)o(t+p)代表向后預(yù)測(cè)P周期的可能性。向后預(yù)測(cè)的能力除取決于模型訓(xùn)練的效果,也要依據(jù)運(yùn)用需求而定,為反映時(shí)間跨度的新車造修與運(yùn)營(yíng)維護(hù)水平,以及某幾個(gè)系統(tǒng)故障率對(duì)預(yù)測(cè)整體故障率產(chǎn)生的影響。該需求確定P=1,以期利用預(yù)測(cè)結(jié)果給該年份源頭質(zhì)量整治、修程修制優(yōu)化等工作提供方向性建議。
激活函數(shù)在圖1 中被描述為從RNN 隱含層到輸出之間的節(jié)點(diǎn),實(shí)際連接上一層各隱含層神經(jīng)元的輸出,激活過(guò)程也稱點(diǎn)火,符合人腦神經(jīng)飽和的規(guī)律。激活函數(shù)的非線性單調(diào)性特征是為了更好處理復(fù)雜的非線性問題,當(dāng)上一層神經(jīng)元輸入趨近正無(wú)窮時(shí),激活結(jié)果趨近于1,防止單一神經(jīng)元權(quán)重過(guò)度影響整體結(jié)果。
激活函數(shù)主要包括Sigmoid、Tanh、ReLU共3 種。3種激活函數(shù)曲線見圖2。
圖2 3種激活函數(shù)曲線
(1)作為神經(jīng)網(wǎng)絡(luò)中最常見的激活函數(shù)Sigmoid在輸入處于[-1,1]時(shí),函數(shù)值變化敏感,一旦接近或超出區(qū)間就失去敏感性,處于飽和狀態(tài)。Sigmoid函數(shù)數(shù)學(xué)表達(dá)式如下:
(2)雙曲正切函數(shù)Tanh,比Sigmoid函數(shù)延遲了飽和期,以影響神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)的精度值。Tanh 的輸出和輸入能夠保持非線性單調(diào)上升和下降關(guān)系。Tanh 函數(shù)數(shù)學(xué)表達(dá)式如下:
(3)ReLU是1 種較新的激活函數(shù),由于省略了Tanh與Sigmoid中的指數(shù)運(yùn)算,節(jié)約了硬件算力以適應(yīng)更復(fù)雜的模型設(shè)計(jì)。泛化速度較快,大于0 維持原值,可加速梯度下降的收斂速度。但需保證較小的學(xué)習(xí)速率α,否則容易出現(xiàn)神經(jīng)元不起效果的情況[12]。ReLU函數(shù)數(shù)學(xué)表達(dá)式如下:
該循環(huán)神經(jīng)網(wǎng)絡(luò)采用反饋方式實(shí)現(xiàn)監(jiān)督學(xué)習(xí),其訓(xùn)練過(guò)程在圖1中用右側(cè)點(diǎn)狀虛線描述。監(jiān)督學(xué)習(xí)的核心思想是將模型預(yù)測(cè)值(以o(t+1)為例)與實(shí)際該時(shí)刻的真實(shí)故障率(以x(t+1)為例)對(duì)比,將差異反向傳遞給隱含層神經(jīng)元。這些神經(jīng)元通過(guò)不斷權(quán)重調(diào)整,以獲得更小的整體誤差,即損失函數(shù)中的Eloss,其函數(shù)數(shù)學(xué)表達(dá)式如下:
梯度下降的概念即利用上述Sigmoid與Tanh等激活函數(shù)的可導(dǎo)性,求導(dǎo)趨于0 代表該神經(jīng)元的局部最優(yōu)。每次訓(xùn)練的隱含層向量權(quán)重更新稱為迭代:
式中:ΔWh為隱含層整體權(quán)重狀態(tài)。式(5)的含義是,每次更新迭代的各節(jié)點(diǎn)權(quán)重如何沿梯度方向隨損失函數(shù)Eloss的偏導(dǎo)方向改變。而需注意訓(xùn)練數(shù)據(jù)集與驗(yàn)證數(shù)據(jù)集誤差的概念:模型通過(guò)一系列訓(xùn)練(權(quán)重調(diào)整),過(guò)度適應(yīng)訓(xùn)練可能針對(duì)某些訓(xùn)練數(shù)據(jù)集結(jié)果優(yōu)異,但對(duì)驗(yàn)證數(shù)據(jù)擬合誤差過(guò)大,泛化能力較差。過(guò)擬合的情況有:(1)驗(yàn)證數(shù)據(jù)集明顯劣于訓(xùn)練集;(2)訓(xùn)練周期過(guò)多;(3)幾次迭代之間Eloss波動(dòng)較大,即訓(xùn)練不穩(wěn)定;(4)訓(xùn)練陷入局部極小值而限制整體權(quán)重更新。反之,存在以下問題時(shí),RNN會(huì)出現(xiàn)欠擬合情況:(1)迭代次數(shù)不足,損失函數(shù)還存在進(jìn)一步改進(jìn)的趨勢(shì);(2)模型隱含層神經(jīng)元數(shù)量不足,設(shè)計(jì)過(guò)于簡(jiǎn)單,不適用于非線性度較高的故障率時(shí)間序列,訓(xùn)練集中表現(xiàn)較好但趨于飽和。學(xué)習(xí)率η決定了模型訓(xùn)練泛化的速度,如果η過(guò)大,訓(xùn)練數(shù)據(jù)集可能出現(xiàn)過(guò)擬合問題,反之則泛化過(guò)程過(guò)慢,學(xué)習(xí)效率低。
傳統(tǒng)循環(huán)神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型中,由于網(wǎng)絡(luò)各隱含層的權(quán)重在傳遞過(guò)程中影響逐漸減弱,對(duì)多隱含層后節(jié)點(diǎn)影響過(guò)小,導(dǎo)致后層節(jié)點(diǎn)無(wú)法接受較遠(yuǎn)層傳遞的信息,進(jìn)而影響整個(gè)網(wǎng)絡(luò)的預(yù)測(cè)性能。使用LSTM神經(jīng)網(wǎng)絡(luò)處理各系統(tǒng)故障率在不同時(shí)長(zhǎng)對(duì)整體故障率的影響關(guān)系。另外,解決非線性度高的RNN 往往參數(shù)體量巨大,LSTM 更合理的結(jié)構(gòu)優(yōu)化了運(yùn)算過(guò)程,也能一定程度上避免過(guò)度訓(xùn)練問題[15-17]。
為解決傳統(tǒng)RNN 模型中梯度消失問題,即反向傳播更新權(quán)重時(shí),前幾個(gè)狀態(tài)的隱含層向量作用逐漸降低,訓(xùn)練效果不顯著[15-16]。而分析動(dòng)車組故障率數(shù)據(jù)時(shí),輸入數(shù)據(jù)中某些系統(tǒng)級(jí)故障率的作用差異,可能會(huì)對(duì)n>1 時(shí)長(zhǎng)即1 年后的整車及故障率作用較大,這意味著前述RNN 中輸入層的動(dòng)車組各系統(tǒng)故障率數(shù)據(jù)隨時(shí)間的抽象級(jí)別較高。LSTM 神經(jīng)網(wǎng)絡(luò)能利用若干個(gè)神經(jīng)元疊加得到的長(zhǎng)短時(shí)記憶儲(chǔ)存器處理這類復(fù)雜序列問題[15]。LSTM數(shù)據(jù)流及結(jié)構(gòu)見圖3。
圖3 LSTM數(shù)據(jù)流及結(jié)構(gòu)
將圖3 中的LSTM 與圖2 的RNN 做結(jié)構(gòu)對(duì)比,在傳統(tǒng)RNN 的前饋過(guò)程中,只有1 個(gè)激活層連接隱含層與輸出層,而在LSTM儲(chǔ)存器中有多個(gè)激活函數(shù)交叉的節(jié)點(diǎn)。同時(shí),LSTM 網(wǎng)絡(luò)增加細(xì)胞狀態(tài)信息c以影響整個(gè)序列神經(jīng)元狀態(tài)h(n):上一時(shí)刻隱含層狀態(tài)h(t- 1)、細(xì)胞狀態(tài)c(t- 1)及該時(shí)刻x(t)各系統(tǒng)故障率實(shí)際輸入層數(shù)據(jù),通過(guò)非線性激活函數(shù)Sigmoid及Tanh進(jìn)行一系列耦合得到的結(jié)果。該結(jié)果除包含對(duì)上一時(shí)刻細(xì)胞狀態(tài)的保留程度,還疊加了激活后的上一時(shí)刻隱含層與該時(shí)刻實(shí)際輸入。因此能實(shí)現(xiàn)非線性度與復(fù)雜程度更高的故障率序列預(yù)測(cè)。LSTM 模型采用Tensorflow 1.13.1版本構(gòu)建,Python語(yǔ)言環(huán)境為3.6。模型輸入端包含t時(shí)刻歸一化動(dòng)車組6個(gè)關(guān)鍵子系統(tǒng)故障率,同時(shí)考慮輸入層數(shù)量及年份樣本數(shù)量,將隱含層神經(jīng)元個(gè)數(shù)定為20。該LSTM模型的損失函數(shù)取用式(4)中的Eloss進(jìn)行訓(xùn)練泛化,利用均方根相對(duì)誤差(MSE)作為訓(xùn)練與測(cè)試評(píng)價(jià)指標(biāo)。
模型訓(xùn)練過(guò)程中采用4種優(yōu)化策略:
(1)隨機(jī)梯度下降法(Stochastic Gradient Descent,SGD)。從訓(xùn)練樣本中隨機(jī)抽出1 組,訓(xùn)練后按梯度更新1 次,然后再抽取1 組,再更新1 次,可能不用訓(xùn)練完所有樣本就可獲得Eloss在可接受范圍內(nèi)的模型。雖易收斂到局部最優(yōu),但容易被困在鞍點(diǎn)。
(2)慣性(Momentum)算法。借用物理動(dòng)量概念,模擬物體運(yùn)動(dòng)時(shí)的慣性,即更新時(shí)在一定程度上保留之前更新的方向??稍谝欢ǔ潭壬显黾臃€(wěn)定性并有一定擺脫局部最優(yōu)的能力。
(3)RMSprop 算法。增加1 個(gè)衰減系數(shù)控制歷史信息的獲取程度。
(4)Adam(Adaptive Moment Estimation)。是另一種自適應(yīng)學(xué)習(xí)率的方法,利用梯度的一階與二階矩陣估計(jì)動(dòng)態(tài)調(diào)整每個(gè)參數(shù)的學(xué)習(xí)率。Adam 的優(yōu)點(diǎn)主要在于經(jīng)過(guò)偏置校正后更新學(xué)習(xí)率,使得訓(xùn)練更穩(wěn)定[12]。
研究針對(duì)車型數(shù)據(jù)特征,分別用4種優(yōu)化過(guò)程進(jìn)行訓(xùn)練,迭代次數(shù)(epoch)為500,保證各算法得到充分訓(xùn)練,以損失函數(shù)作為檢驗(yàn)標(biāo)準(zhǔn)。發(fā)現(xiàn)RMSprop 算法最先達(dá)到飽和狀態(tài),Adam與其接近,均在50次迭代后使LSTM 模型得到泛化。但二者相比,Adam 算法的訓(xùn)練更穩(wěn)定,相鄰2次的波動(dòng)最小,綜合泛化最好。慣性算法相對(duì)最長(zhǎng)時(shí)間達(dá)到訓(xùn)練飽和,泛化效果與兩者相差不大。而隨機(jī)SGD 算法則耗時(shí)最長(zhǎng),同時(shí)很難達(dá)到飽和狀態(tài)。
綜上考慮各因素,最終選取Adam 作為優(yōu)化策略。學(xué)習(xí)率α取值過(guò)大可能導(dǎo)致收斂速度過(guò)快,造成更新的ΔWh振蕩較大。因此針對(duì)不同車型類別,調(diào)整整體學(xué)習(xí)率,針對(duì)各參數(shù)優(yōu)化后α=0.90~0.95。
出于保密性考慮,將某些車型(分類為車型一、車型二)的百萬(wàn)公里故障率數(shù)據(jù)進(jìn)行歸一化處理,形成無(wú)量綱等時(shí)距數(shù)據(jù)樣本(見圖4、圖5 中黑色目標(biāo)曲線)。將2010—2017年的各系統(tǒng)級(jí)故障率輸入泛化后的LSTM 模型,測(cè)試其t+1 年份的故障率曲線,即2011—2018 年故障率數(shù)據(jù)(見圖4、圖5 中藍(lán)色預(yù)測(cè)曲線)。將最近1年的預(yù)測(cè)結(jié)果與實(shí)際得到的整車故障率進(jìn)行比對(duì),以驗(yàn)證模型準(zhǔn)確性并進(jìn)一步優(yōu)化調(diào)整模型參數(shù),調(diào)整上述優(yōu)化過(guò)程的迭代次數(shù)以防止過(guò)擬合問題的發(fā)生。
圖4 車型一動(dòng)車組故障率預(yù)測(cè)結(jié)果
圖5 車型二動(dòng)車組故障率預(yù)測(cè)結(jié)果
從圖4、圖5 可以看出,單純以此數(shù)據(jù)驅(qū)動(dòng)的方式,對(duì)于某些車型某些年份的大幅度波動(dòng)預(yù)測(cè)存在一定難度;但LSTM模型輸出的預(yù)測(cè)曲線可在一定程度上把握數(shù)據(jù)的主成分趨勢(shì),并且時(shí)間序列能夠考慮輸入變量對(duì)時(shí)間序列的依賴性,具有復(fù)雜趨勢(shì)的學(xué)習(xí)能力。
以整車及關(guān)鍵系統(tǒng)的故障規(guī)律為對(duì)象,以車輛責(zé)任故障條目為分析源,匹配EMIS 中的動(dòng)車組履歷信息,建立數(shù)據(jù)庫(kù)并進(jìn)行清洗。利用時(shí)序分析方法(同時(shí)考慮確定性和隨機(jī)性因素),建立對(duì)應(yīng)動(dòng)車組服役性能演變規(guī)律的機(jī)器學(xué)習(xí)模型,以揭示不同高級(jí)修周期內(nèi)動(dòng)車組整車及關(guān)鍵系統(tǒng)的服役性能演變。利用高鐵開通10 年來(lái)的歷史事故及故障數(shù)據(jù)驅(qū)動(dòng),通過(guò)模型優(yōu)化、參數(shù)調(diào)整及訓(xùn)練結(jié)果泛化等機(jī)器學(xué)習(xí)技術(shù),實(shí)現(xiàn)對(duì)下一時(shí)間段故障率的預(yù)測(cè)。RNN 接受序列數(shù)據(jù)為輸入,在序列的演進(jìn)方向進(jìn)行遞歸,所有節(jié)點(diǎn)按鏈?zhǔn)竭B接的遞歸神經(jīng)網(wǎng)絡(luò),其中通過(guò)LSTM結(jié)構(gòu)中對(duì)前數(shù)個(gè)周期神經(jīng)元狀態(tài)的遺忘與保留,對(duì)非線性度較高的故障率序列訓(xùn)練效果較好,并測(cè)試其具備以時(shí)間為維度系統(tǒng)故障率的模型基礎(chǔ)。
考慮故障數(shù)據(jù)樣本特點(diǎn),解決了目前機(jī)器學(xué)習(xí)領(lǐng)域的小樣本學(xué)習(xí)問題,優(yōu)化神經(jīng)元函數(shù)與訓(xùn)練泛化能力提升等大數(shù)據(jù)機(jī)器學(xué)習(xí)領(lǐng)域研究問題。該故障率分析預(yù)測(cè)模型的建立—訓(xùn)練—驗(yàn)證提供了掌握整車安全態(tài)勢(shì)的新視角:以數(shù)據(jù)驅(qū)動(dòng)的方式建立了各系統(tǒng)級(jí)故障率到整車故障率之間的映射。