高 凡,李 樊,張 銘,王志飛,趙俊華
(1.中國鐵道科學研究院 研究生部,北京 100081;2.中國鐵道科學研究院集團有限公司,北京 100081; 3.北京經(jīng)緯信息技術(shù)有限公司,北京 100081)
高速鐵路信號設備是保障高速鐵路行車安全的重要基礎(chǔ)設施[1],隨著高速鐵路運營里程的積累,產(chǎn)生了海量的信號設備故障數(shù)據(jù),這些故障數(shù)據(jù)大多以非結(jié)構(gòu)化文本的形式存儲,該數(shù)據(jù)蘊含了高速鐵路安全的重要信息,長期由業(yè)務人員根據(jù)經(jīng)驗對數(shù)據(jù)進行故障設備診斷與分類,由于高速鐵路中存在眾多不同類型的信號設備,設備故障類型多,且設備與故障原因的隸屬關(guān)系嚴謹,為深入開展高速鐵路故障數(shù)據(jù)分析工作,需要對故障數(shù)據(jù)進行多級分類,而人工進行多級分類工作容易造成分類的不準確性,在智慧鐵路和鐵路大數(shù)據(jù)的建設下,亟需研究基于文本挖掘的機器學習算法,實現(xiàn)高速鐵路信號故障設備的多級分類。
多級別分類方法包括自上而下分類、全局分類和收縮分類方法[2-3],高速鐵路信號設備故障多級分類,采用自上而下分類方法中分而治之的策略,將設備故障多級分類問題分解為單層分類問題,通過設計單級分類模型得出每一級別的分類結(jié)果,最后通過多任務協(xié)作決策樹投票策略,將各級的分類結(jié)果進行匯集與隸屬關(guān)系矯正,實現(xiàn)信號設備故障的多級分類。
采用鐵路安全文本特征提取和單層分類模型的研究方法,設計高速鐵路信號設備故障多級分類模型[4]。首先針對高速鐵路信號設備故障數(shù)據(jù)特點,提出基于詞頻-逆向文件頻率(term frequency-inverse document frequency,TF-IDF)改良的特征提取方法[5]。針對故障類別樣例數(shù)量差異較大,為避免防止單一分類器造成過擬合的問題,采用K折交叉驗證+ Stacking分類模型實現(xiàn)單層分類模型[6],Stacking模型中提出將相似網(wǎng)路結(jié)構(gòu)的變體雙向門控循環(huán)單元(bidirection gated recurrent unit,BiGRU)與雙向長短時記憶網(wǎng)絡(bidirection long short term memory,BiLSTM)初級學習器[7],設計整體與類別權(quán)重相結(jié)合的權(quán)重分配機制作為次學習器,提升單層分類模型的分類性能。通過Staking模型對各級別任務進行分類[8],設計多任務協(xié)作投票決策樹,實現(xiàn)多個級別分類結(jié)果的隸屬關(guān)系矯正,同時提升整個多級分類模型的分類性能。最后應用高速鐵路2009年到2018年信號設備故障數(shù)據(jù)進行實驗,驗證多級分類模型的有效性與正確性。
高速鐵路信號設備故障數(shù)據(jù)來源于鐵路牽引供電管理信息系統(tǒng)(EMIS),故障數(shù)據(jù)以結(jié)構(gòu)化的形式記載了故障的詳細信息,如表1所示,記錄故障發(fā)生的原因信息以自然語言文本的形式存儲。本文基于高速鐵路故障原因分析文本數(shù)據(jù),對故障的信息進行故障原因和部位二級分類。
表1 高鐵信號道岔故障部分樣例數(shù)據(jù)
高速鐵路信號設備故障原因分析文本數(shù)據(jù)中包含道岔、紅光帶、密貼器等具有特征的關(guān)鍵詞,采用TF-IDF對故障文本數(shù)據(jù)進行特征提取[9],TF-IDF方法的原理是若某個詞在樣本中出現(xiàn)的頻率越高,而有該詞的樣本在全文檔中越少,說明該詞對這個樣本有著越高的辨識度,具有很好的區(qū)分能力。由于高速鐵路信號設備故障文檔數(shù)量較大,但是每個故障文檔都是短文本,直接采用TF-IDF方法抽取特征,易造成特征向量冗余性和稀疏性,缺失了數(shù)據(jù)的特異性,所以本文針對高速鐵路信號設備故障數(shù)據(jù)特征提取方法在TF-IDF方法基礎(chǔ)上進行了改良。
改良的TF-IDF高速鐵路信號設備故障文本數(shù)據(jù)特征抽取方法:首先要將中文文本內(nèi)容進行分詞,本文采用基于專業(yè)語料庫和常用語料庫的Jieba分詞工具對信號故障文本分詞[10],并對助詞如“的”,“了”等不能表示文檔特征的詞語進行清理,然后將分詞后的詞匯集合進行TF-IDF權(quán)重計算形成詞匯權(quán)重矩陣,以及對每個詞匯的數(shù)量統(tǒng)計形成詞匯字典。TF-IDF權(quán)重矩陣中m為文檔數(shù),n為所有文檔的詞匯,所以n的維度很大,TF-IDF權(quán)重矩陣具有嚴重的稀疏性。根據(jù)TF-IDF值為每個樣本中的詞進行排序,允許詞匯重復,選取前100個最具有樣本特征的詞語,降低特征向量維度,并將詞頻替換為對應的詞匯ID,形成特征字典矩陣,將文本特征向量以及經(jīng)過one-hot編碼后的各級別的標簽輸入到文本分類模型中。
高速鐵路信號設備故障文本特征數(shù)據(jù)集分為訓練集、驗證集以及測試集輸入到Stacking單層分類模型中?;赟tacking的高速鐵路信號設備故障單層文本分類,通過將循環(huán)神經(jīng)網(wǎng)絡BiGRU與BiLSTM作為Stacking的初次學習器,將兩個神經(jīng)網(wǎng)絡預測的結(jié)果作為特征來訓練組合加權(quán)次級學習器,通過次級學習器整合初級學習器的預測結(jié)果。為了避免訓練集訓練出來的模型反過來預測訓練集造成過擬合問題,以及訓練多個單層分類模型,達到相同測試集產(chǎn)生多個預測結(jié)果的目的,采用了K折交叉驗證方法,如圖1所示。
圖1 Stacking信號設備故障文本分類模型
循環(huán)神經(jīng)網(wǎng)絡(RNN)是一種處理序列信息的神經(jīng)網(wǎng)絡,由于在結(jié)構(gòu)上存在前后依賴關(guān)系,在自然語言應用上得到了廣泛的應用。RNN特殊性在于其在t時刻的輸出st,不僅取決于輸入層的xt,而且還取決于上一節(jié)點的輸出st-1,其學習過程是一個預測下一個詞的過程,例如,xt-1,xt,xt+1是一個輸入“道岔定位無”,那么ot-1和ot對應的是“定位”和“無“這兩項”,預測下一個次最有可能是什么,通過信號故障語料訓練,ot+1最有可能的是“表示”。ht表示t時刻隱藏層的狀態(tài),xt表示t時刻的輸入,ot表示t時刻的輸出,st表示t時刻的記憶單元,U,W模型的線性參數(shù)矩陣。雙向RNN同時考慮預測詞的上文信息和下文信息,由前向后、由后向前均保留該詞的重要信息,能夠更加有效的進行預測。
(1)
(2)
st=f(U*xt+W*st-1)
(3)
ot=softmax(Vst)
(4)
(5)
RNN的變體神經(jīng)網(wǎng)絡LSTM和GRU是通過設計門的結(jié)構(gòu)來選擇通過神經(jīng)元的信息,由于sigmoid的輸出是在0到1之間的取值,有助于信息的選擇與忘記,0表示全部舍棄,1表示全部保留,通常選擇sigmoid函數(shù)作為激活函數(shù),tanh函數(shù)作為輸出函數(shù)。
ft=σ(Wf·[ht-1,xt]+bf)
(6)
it=σ(Wi·[ht-1,xt]+bi)
(7)
(8)
(9)
ot=σ(Wo·[ht-1,xt]+bo)
(10)
ht=ot*tanh(Ct)
(11)
GRU是將LSTM的遺忘門、輸入門和輸出門變?yōu)楦麻Tzt與重置門rt,并將單元狀態(tài)與輸出合并為一個狀態(tài)ht。
zt=σ(Wz·[ht-1,xt])
(12)
rt=σ(Wr·[ht-1,xt])
(13)
(14)
(15)
組合加權(quán)次級學習器不僅考慮神經(jīng)網(wǎng)絡的整體學習能力,同時也考慮神經(jīng)網(wǎng)絡在不同類別上的表現(xiàn)。根據(jù)單個神經(jīng)網(wǎng)絡對相同輸入的學習結(jié)果,給單個神經(jīng)網(wǎng)絡分配權(quán)重,準確度越高的神經(jīng)網(wǎng)絡權(quán)重越大,這種方法可以有效抑制神經(jīng)網(wǎng)絡學習過程中少數(shù)值,極端值的影響。神經(jīng)網(wǎng)絡在各類別上的權(quán)重根據(jù)公式(16)、(17)計算,通過計算分類神經(jīng)網(wǎng)絡在某個類別上的錯誤比例對數(shù)計算在該類別上的權(quán)重,表現(xiàn)好的,錯誤比例小的權(quán)重越大,當錯誤比例超過0.5時,權(quán)重計為0。最后按公式(18)將神經(jīng)網(wǎng)絡的整體權(quán)重與類別權(quán)重相加,重新計算模型對標簽的預測值。
(16)
(17)
(18)
Stacking模型采用兩個神經(jīng)網(wǎng)絡作為初級學習器,在數(shù)據(jù)預處理層將字符特征向量進行降維,轉(zhuǎn)換為神經(jīng)網(wǎng)絡嵌入層(Embedding),分別輸入到兩個雙向神經(jīng)網(wǎng)絡BiGRU和BiLSTM中,兩個神經(jīng)網(wǎng)絡經(jīng)過學習后分別在Softmax層輸出對各分類標簽的預測概率,經(jīng)過組合權(quán)重分類器對兩個初級學習器的預測結(jié)果整合計算,最后輸出Stacking模型對輸入數(shù)據(jù)的分類情況,如圖2所示。
本文以高速鐵路信號基礎(chǔ)設備中的道岔轉(zhuǎn)轍設備2009~2018年10年數(shù)據(jù)進行驗證,其中,70%作為訓練集樣本,20%作為驗證集樣本,10%作為測試集樣本。數(shù)據(jù)包括7類一級分類標簽,64類二級分類標簽,采用準確度(Precision)和召回率(Recall)構(gòu)建F1值綜合評價模型。
其中,Precision計算公式為:
(19)
Recall計算公式為:
(20)
圖2 Stacking單層分類模型網(wǎng)絡結(jié)構(gòu)
F-score計算公式為:
(21)
C為所有樣本的總數(shù),c為所有類別總數(shù),TPi為被正確分到此類的樣本個數(shù),TNi為被正確識別不在此類的樣本個數(shù),F(xiàn)Pi表示被誤分到此類的樣本個數(shù),F(xiàn)Ni表示屬于此類但被誤分到其它類的樣本個數(shù)。
BiGRU和BiLSTM整體權(quán)重大小根據(jù)單個神經(jīng)網(wǎng)絡對相同特征向量的學習結(jié)果。本文設計BiGRU和BiLSTM具有相同的網(wǎng)絡參數(shù),設定K折交叉驗證K=5,神經(jīng)網(wǎng)絡的迭代輪數(shù)為50,網(wǎng)絡輸入批處理大小為256,嵌入層維度為100,隱藏層維度為512。BiGRU和BiLSTM一級和二級訓練過程的loss函數(shù)值如圖3所示,從圖中可以看出,迭代輪數(shù)為30~50之間,損失函數(shù)loss值接近最小,并且基本穩(wěn)定,BiGRU相比于BiLSTM損失函數(shù)小,分類性能較優(yōu),二級分類較一級分類loss函數(shù)變化幅度較小,隨著K值的增加,每一次迭代過程中,loss值逐漸變小且趨于平穩(wěn)。
圖3 BiGRU和BiLSTM網(wǎng)絡K交叉loss函數(shù)
經(jīng)過K=5次訓練,將每次的訓練結(jié)果求和平均,得到兩個神經(jīng)網(wǎng)絡各自的訓練結(jié)果,如表2所示。
表2 BiGRU和BiLSTM神經(jīng)網(wǎng)絡訓練結(jié)果
由表2可以看出,兩個神經(jīng)網(wǎng)絡在相同參數(shù)下,BiGRU較BiLSTM各評價指標都較高,經(jīng)實驗,給BiGRU分配權(quán)重為0.7,BiLSTM權(quán)重為0.3。
高速鐵路信號設備故障一級類別中各類別數(shù)量以及類別權(quán)重如表3所示,由于二級類別數(shù)量較大,考慮文章篇幅的原因,只列出一級類別的類別權(quán)重分析結(jié)果。從表3中可以看出密貼檢查器、外鎖閉及安裝裝置和轉(zhuǎn)轍機的故障數(shù)據(jù)較少,在數(shù)據(jù)量基數(shù)小,錯誤數(shù)量稍大時類別權(quán)重就小,相反,在配套器材和原因不明故障數(shù)量基礎(chǔ)較大時,網(wǎng)絡學習效果好,類別權(quán)重也較大。
通過組合加權(quán)對兩個網(wǎng)絡的輸出重新計算,得出共同的分類預測結(jié)果,最終分類結(jié)果如表4所示,可以看出,各分類評價指標值都有所提升,實驗證明,Stacking單層分類模型是一種能夠有效提升高速鐵路信號設備故障文本分類指標的模型。
表3 信號故障一級分類類別權(quán)重計算結(jié)果
表4 Satcking模型單層文本分類結(jié)果
根據(jù)以上實驗分析,各模型的分類指標按各級相應評價指標的平均值計算,BiGRU模型、BiLSTM模型、Stacking模型,以及最后通過多任務協(xié)作投票的多級分類模型,各模型的分類性能如圖4所示。
圖4 各模型分類性能對比
轉(zhuǎn)轍機、外鎖閉及安裝裝置、密貼檢查器、道岔控制電路器材、工務設備等設備的一級、二級故障按相應評價指標的平均值計算精準度,BiGRU模型為81%、BiLSTM模型為75%、BiGRU+BiLSTM并聯(lián)模型為82.3%,Stacking模型為85.5%,從圖4中可以看出,針對高速鐵路信號設備故障文本數(shù)據(jù)進行信號設備故障多級分類,本文設計的Stacking模型有效提高了各級別的分類指標,基于多任務協(xié)作投票的機制有效解決分類結(jié)果的從屬關(guān)系,并提升了Stacking模型的整體分類性能,實驗證明,本文提出的基于文本挖掘技術(shù)的Stacking模型在解決高速信號設備多級分類問題具有優(yōu)勢。
高速鐵路設備故障文本數(shù)據(jù)是挖掘高速鐵路運營安全狀況與安全規(guī)律的重要數(shù)據(jù),基于文本挖掘技術(shù)實現(xiàn)高速鐵路設備故障多級分類是深入分析高速鐵路設備故障數(shù)據(jù)的必要手段。本文就高速鐵路信號設備故障文本數(shù)據(jù)設計多級分類模型,解決各級分類之間的隸屬關(guān)系,并有效提升了分類評價指標。本文基于Stacking思想設計的K折交叉驗證單層分類模型,保證了初級學習器的算法差異和多樣性,有效降低分類過擬合的風險,并且分類指標相比單神經(jīng)網(wǎng)絡分類器有所提升,多任務協(xié)作投票機制保證了分類結(jié)果的隸屬關(guān)系。本文中的Stacking單層分類模型和多級分類模型在鐵路文本分類中都具有借鑒價值。本系統(tǒng)在試點工程中根據(jù)實際設備及用戶的關(guān)注度需要進一步調(diào)整模型參數(shù),使系統(tǒng)達到最優(yōu)效果。