韓 廣,卜 桐,王明明,鄭海青,孫曉云,金 龍
(1.石家莊鐵道大學 電氣與電子工程學院,河北 石家莊 050000;2.國家鐵路局 裝備技術中心, 北京 100844)
鐵路作為國家重要的基礎設施和關鍵性民生工程,有力地促進了社會和經濟的發展。為確保鐵路運輸安全,鐵路行業積累了大量鐵路行車安全主題的業務信息,這些信息數據多采用文本、語音、圖像等非結構化數據儲存[1]。其中,文本是鐵路事故分類的主要手段,為后續進行適當的處理提供依據。但是,目前鐵路事故主要由人工進行定級,受主觀因素影響較大,其等級分類的準確性有待提高。
近年來,學者們針對鐵路事故文本展開了分析和研究。楊蘭[2]通過設計事故樹對黑龍江“1.28”道口事故進行原因分析,提出了預防道口事故的措施;上官偉等[3]采用基于粒子群優化的支持向量機算法對列控車載設備的故障進行分類;鐘志旺等[4]提出了基于主題模型和支持向量機的道岔設備故障特征提取與診斷方法。基于上述研究,鐵路事故文本分類存在兩個挑戰亟待解決:①由于事故類型、描述人員的差異,使得文本的長度、敘述有較大的差異性;②鐵路事故文本中含有大量專業詞語,如軌道電路紅光帶、受電弓等,直接影響分詞效率和分類準確率。
采用智能方法解決文本分類問題是目前的研究熱點。Bengio等[5]創建了三層神經網絡的機器學習模型,并率先應用到自然語言處理的任務中。循環型神經網絡(Recurrent Neural Network,RNN)[6-7]越來越多地應用到文本分類中。其中,因為在緩解梯度爆炸問題上表現出色,長短時記憶(Long Short Term Memory,LSTM)網絡在文本分類問題中得到了較為廣泛的應用[8]。
針對文本問題的特征提取,目前最常見的方法是將詞語轉化為向量。Tai等[9]將LSTM模型應用于樹狀語句拓撲結構,提高了分類精度。杜修明等[10]分析了電網故障案例文本,使用雙向LSTM(Bidirectional LSTM,BiLSTM)網絡取得了良好的分類結果。研究表明,在詞向量特征提取方法中采用多通道的形式,是提升文本特征提取效率的有效手段之一??笛愕萚11]采用雙通道詞向量訓練方式,實驗結果表明雙通道策略優于單通道策略。Du等[12]采用多通道KNN文本分類,保證了文本較高的準確性。
文本以詞向量形式輸入網絡時的長度是固定的,而由于文本本身長短不一的特性,使得在處理長文本時,一部分詞向量將被舍去;在處理短文本時,則需要擴充零向量,相當于添加了無用信息和網絡負擔。因此,對于長度差異性大的鐵路行車事故文本,擴充和舍去詞向量都會影響文本分類的準確性。句子同樣可以作為一個整體進行特征提取,構成句向量。王亞珅等[13]提出概念化句嵌入模型,Guo等[14]基于詞向量信息生成句向量,均在文本分類中取得了良好結果。李心蕾等[15]研究表明,針對新浪微博這一類短文本分類問題,句向量的特征提取效果要劣于詞向量。而針對長文本問題,李云紅等[16]使用單一句向量提取特征,取得良好結果。鐵路事故文本具有敘述長短不一的特點,上述研究為本文結合詞向量和句向量兩種方法進行特征提取,提供了研究依據。
鐵路事故文本分類中關鍵詞對于等級的劃分有重要影響,引入注意力機制,將有效提升文本識別效率。注意力機制是受到人類在觀察和思考過程中目光隨著感興趣區域發生移動的思想啟發,目前在三維動作識別[17]、家庭活動識別[18]、社區問答文本識別[19]、視頻-腦電交互協同情感識別[20]、機器翻譯[21]等領域得到廣泛應用。相對于傳統機器學習模型,注意力機制可改善計算量以及精度,因此在自然語言處理領域應用廣泛。
綜上,雙向長短時記憶網絡因其結構優勢,可以兼顧前后兩個方向的特征,適合于文本的上下文關系提取;詞向量和句向量雙通道可以有效解決文本長短不一、差異性大的問題,提高樣本的利用程度和分類準確率。所以本文設計了雙通道雙向長短時記憶網絡進行鐵路行車事故文本分類。首先,針對鐵路事故文本專有詞匯,基于鐵路專用設備產品數據庫,構建“鐵路行車事故詞庫”,提高分詞和特征的提取效率。然后,針對鐵路事故文本長短不一、文本長度差異性大的特點,設計同時使用詞向量和句向量的雙通道雙向LSTM網絡模型。
從成都、廣州等7個鐵路局提供的文本信息,獲取了鐵路行車事故情況。從中可知,因違反規章制度、勞動紀律,技術設備不良及其他原因,在鐵路行車中造成人員傷亡、設備損害、經濟損失、影響正常行車或危及行車安全的,均構成鐵路行車事故。本文針對日常發生較多的鐵路行車一般事故類別展開研究。根據《鐵路行車事故處理規則》[22],鐵路行車中一般事故分類依據見表1。

表1 鐵路行車中一般事故分類依據
在常規詞庫下,專有詞“軌道電路紅光帶”會被分為“軌道電路紅光帶”,不僅造成專有詞匯拆分,也增加了詞向量維度;“×時×分銷記”會被誤分為“×時×分銷記”,錯誤分詞“分銷記”與正確分詞“分銷記”所表達的意思完全不同。因此,要有效提升鐵路專業詞匯的分詞準確性,有必要構建鐵路行車事故詞庫。本文結合GB/T 8568—2013《鐵路行車組織詞匯》[23]和項目研究中收集到的文本,構建了“鐵路行車事故詞庫”。
首先,考慮到文本中客運線名稱和鐵路工作機構均為固定名詞,且存在廣泛,設計了鐵路客運線名詞庫和鐵路用語詞庫,豐富常用詞典。這兩部分內容在詞庫中占有很大比例。其次,電氣化鐵路詞庫由供電段負責的電氣化鐵路牽引供電、鐵路運輸信號供電、電力設備等方面詞語構成;鐵路信號詞庫由電務段或工務段負責的信號設備、轉轍機及道岔等詞語構成。最后,建立鐵路詞匯詞庫,結合鐵路行車事故文本發現的稀有專用詞語,實現整體詞庫的補充。
“鐵路行車事故詞庫”見表2,由電氣化鐵路詞庫、鐵路信號詞庫、鐵路客運線名詞庫、鐵路用語詞庫、鐵路詞匯詞庫等二級詞庫組成,有效提高了鐵路事故文本在中文分詞階段的準確性。

表2 鐵路行車事故詞庫
兩段典型事故詞語標注見圖1。

圖1 兩段典型事故詞語標注
鐵路行車事故文本分類總體模型見圖2。

圖2 鐵路行車事故文本分類總體模型
由于中文文本沒有間斷,所以需要對文本進行分詞處理。本文使用Jieba分詞的精確模式,將句子依靠詞典精確地切開,使用構建的“鐵路行車事故詞庫”提高分詞準確率;再使用停用詞處理來降低維度和去噪;之后使用Google開源代碼詞語轉向量(Word to Vector,Word2vec)和句子轉向量(Sentence to Vector,Sent2vec)來獲得文本的詞向量表達和句向量表達。

句向量的兩種訓練方式是PV-DM (Distributed Memory model of Paragraph Vectors)和PV-DBOW (Distributed Bag of words of Paragraph Vector)。Sent2vec在句向量輸入時增添了Paragraph vector,在文本滑動訓練中Paragraph vector是共享的,因此,Paragraph vector所表達的句子思想會更加精確。
句向量模型不需要規定句子長度,能夠解決詞向量面臨的長度選擇問題??墒?,單獨使用句向量,其表示的信息會少于詞向量,導致分類精度降低。因此,針對鐵路事故文本長短差異性大的問題,本文將采用詞向量和句向量相結合的方法。
LSTM是一種特殊的RNN結構,包括門控單元和細胞儲存單元,用來控制數據傳播。其中門控單元由輸入門it、遺忘門ft、輸出門ot和細胞候選gt組成,其方程表達式為
it=σ(WiXt+Riht-1+bi)
(1)
ft=σ(WfXt+Rfht-1+bf)
(2)
ot=σ(WoXt+Roht-1+bo)
(3)
gt=tanh(WgXt+Rght-1+bg)
(4)
式中:Wi、Wf、Wo、Wg為輸入權重矩陣;Ri、Rf、Ro、Rg為循環權重矩陣;bi、bf、bo、bg為偏置權重;Xt為當前詞向量輸入;ht-1為LSTM在t-1時的輸出;σ(·)為sigmoid激活函數;tanh(·)為tanh激活函數。LSTM單細胞結構見圖3。

圖3 LSTM單細胞結構
LSTM第t時刻的細胞狀態cellt和輸出ht為
cellt=ft?cellt-1+it?gt
(5)
ht=ot?tanh(cellt)
(6)
式中:?為逐點乘積。

圖4 LSTM細胞連接和BiLSTM神經網絡結構
BiLSTM有效地融合了上下文信息,但卻無法凸顯文中的關鍵信息。注意力機制利用權重反映特征序列的相關性,可以讓模型更專注于查找出與當前分類更有相關性的輸入信息。本文采用靜態注意力模型,通過計算一次加權α和輸入向量得到整個句子的向量表示。靜態注意力模型見圖5。

圖5 結合靜態注意力機制的LSTM模型
靜態注意力機制(自注意力機制)對LSTM輸出的隱層向量表達進行加權求和計算,其中權重的大小表示每個詞或句子的重要程度,其表達式為
(7)
(8)
(9)

在模型中,詞向量通道的輸出為序列模式,句向量通道的輸出為最后時刻的輸出。詞向量經過靜態注意力機制的特征提取后,將與句向量具有相同維度,進而作為Softmax函數的歸一化輸入,最終計算得到一個n維向量(n為標簽數目),每個維度對應一個標簽的概率,其計算公式為
yi=Softmax(Wcct+bc)
(10)
式中:Wc為歸一化權重向量;bc為歸一化偏置;yi為標簽概率。
在鐵路行車事故文本分類中,采用交叉熵損失函數會在準確性和收斂性上優于最小二乘損失函數。交叉熵函數計算公式為
(11)
式中:E為交叉熵損失值;Ti為真實樣本類別;Yi為預測樣本類別。
本文使用L2正則化梯度防止過擬合和梯度閾值策略防止梯度爆炸。在遇到較大斜率的懸崖結構時,梯度閾值也可以防止梯度改變較大參數值。L2正則化公式為
J=J0+λ‖ω‖22
(12)
式中:λ為正則化系數;J為正則化梯度;J0為正則化初始梯度;ω為原始梯度。
本文使用Adam算法對BiLSTM網絡的輸入權重矩陣、循環權重矩陣和偏置權重矩陣,以及靜態注意力機制的權值和偏置進行梯度更新。Adam算法是RMSProp和矩技術結合的增強,其算法公式為
(13)
(14)
(15)

實驗數據來自2019年1—10月間我國各鐵路局的鐵路行車事故文本。去除不能訓練和樣本數目極少的事故文本,剩余共計432條文本。這些數據分別隸屬于10個等級,其事故描述和相應文本數目見表3。

表3 鐵路事故文本類型及描述
從表3中可以看出:D21是事故中最輕的一級,發生次數也最多;C13和D3類別發生次數較少;鐵路設備的不規范操作會對人員造成傷害,因此,B1和B2類別發生次數也較多。不同事故類別的文本詞向量長度分布見圖6,數據分析見表4。

圖6 不同事故類別文本詞向量長度分布
從圖6和表4中可以看出,不同類型的事故,其文本詞向量長度和波動情況存在明顯的差異。
實驗平臺基于Matlab 2019a,中文分詞和詞向量生成使用Pycharm軟件實現。實驗環境設置見表5。

表5 實驗環境
網絡結構和訓練的參數設置見表6。模型的參數是在訓練過程中結合實驗結果進行反復調試得到的。經過預實驗,當詞向量長度選擇為100個時,網絡能夠在各類長度的文本分類中取得綜合最優的結果。

表6 參數設置
為了減少數據量少和樣本數量不平衡兩個問題的影響,一方面在各次實驗中隨機劃分訓練樣本和測試樣本;另一方面,由于樣本維度較大,不適宜采用基于歐氏距離計算的過采樣方法,因此,選擇帶有放回的隨機抽樣過采樣方法進行樣本擴充。為了防止過度采樣導致的過擬合問題,同時保留大類類別的屬性,少數類樣本數量均被擴充至50個左右。
評價指標選擇查準率Precision、查全率Recall和綜合衡量指標F1分數。其中,查準率是指分類器正確分類的樣本數與總樣本數之比,查全率是指被正確判定的正例占總正例的比重,二者相互制約。F1平衡了查準率和查全率之間的關系,為了更直觀地展示分類情況,本文引入MacroF1進行評估。MacroF1分數計算出每一類查準率和查全率的F1,最后將F1平均。各評價指標計算為
(16)
(17)
(18)
(19)
式中:TP為真實標簽為真,且預測標簽也為真的數目;FP為真實標簽為假,且預測標簽中為真的數目;FN為真實標簽為真,且預測標簽為假的數目。
本文設計的對比實驗包括3種傳統方法和5種模型結構。3種傳統方法為:樸素貝葉斯、支持向量機SVM、未使用“鐵路行車事故詞庫”的SVM。5種模型結構為:詞向量BiLSTM網絡(W-BiLSTM)、結合注意力機制的詞向量BiLSTM網絡(WA-BiLSTM)、句向量BiLSTM網絡(S-BiLSTM)、結合注意力機制的詞向量和句向量雙通道BiLSTM網絡(WA-S-BiLSTM)、未使用“鐵路行車事故詞庫”的WA-S-BiLSTM)。各方法實驗結果對比見表7。表7中所有數據均為運行10次的平均值,保留兩位小數表示。
從表7可以看出,結合了詞向量和句向量雙通道的WA-S-BiLSTM神經網絡在識別精度上取得了明顯的提升,說明本文所提出方法在鐵路行車事故分類中的有效性。根據實驗結果,進一步的在以下方面進行分析。

表7 鐵路行車事故分類結果
(1)文本數據特征對傳統識別方法的影響
傳統方法(樸素貝葉斯、SVM)在進行文本分類時,只有D2類取得了優秀的識別精度。結合表3和表4可以看出,D2類事故文本向量平均長度較短(74.41),文本間波動較小(25.54)。特別是,因D2類針對“調車脫軌”這一確定性事件,降低了訓練的難度。
數據的樣本數量對傳統方法的識別精度存在影響。一方面,D21樣本量最大,效果較好;另一方面,C13、D3等事故,因為樣本數量小,傳統方法識別精度波動很大。而對比樣本數量相接近的類別,詞向量平均長度越短,傳統方法識別精度會相應提高。
相對而言,WA-S-BiLSTM從結果上能夠降低數據量少和樣本數量不平衡帶來的影響,在不同數據量的樣本中均取得了滿意的識別精度。
(2)靜態注意力機制的有效性
對比W-BiLSTM和WA-BiLSTM,結合靜態注意力機制后,文本識別精度得到了提升,說明靜態注意力機制有效提升了關鍵詞向量的特征提取效率。值得注意的是,引入靜態注意力機制后,提升最大的是D2和D3兩類的分類結果。結合樣本數據特點,D2、D3的文本平均長度較短,文本長度波動最小,更有利于靜態注意力機制發揮作用。
(3)詞向量與句向量的特征提取效果
因為鐵路行車事故文本的長度總體波動較大,因此在識別精度上,句向量的特征提取效果整體要優于詞向量。而對于如B1、C13、D2、D3這幾類詞向量長度較短、波動也較小的類別,詞向量的特征提取效果相對更優。而詞向量長度波動較大的類別,會對詞向量的特征提取造成很大的影響。
在結合了詞向量、句向量雙通道的特點之后,WA-S-BiLSTM有效地提升了各類別的識別精度。
(4)同類型文本敘述多樣性問題
在所有類別中,D10是WA-S-BiLSTM方法的識別結果中F1指數最小的。從樣本數據特點分析,D10的樣本總數為29,詞向量平均長度76.14,詞向量波動28.25。究其原因,與違反勞動紀律的形式多樣導致D10文本敘述多樣性強有關。在本文分析的10種類型的鐵路行車事故樣本中,D10類型樣本的敘述多樣性是最強的。
例1:“***客專***站始發的***次列車開車時聯系不到機車乘務員,***,影響本列。”
例2:“***線***次列車運行至***處因車務人員擋道停車,***,影響貨車1列?!?/p>
上述兩例說明了D10文本敘述中違反勞動紀律形式的多樣性,這給提取訓練樣本的特征造成了較大的困難,導致了識別精度的降低。
(5)“鐵路行車事故詞庫”的有效性
如前文所述,“鐵路行車事故詞庫”可以實現鐵路專用詞匯的準確分詞。從表7中可以看出,使用“鐵路行車事故詞庫”之后,無論是傳統SVM方法還是本文提出的WA-S-BiLSTM方法,事故類別的分類精度均有明顯提升。
綜上,可以得出以下結論:
(1)針對鐵路行車事故文本存在明顯的文本長度不一,文本長度波動大的特點,結合詞向量在短文本、波動小文本中的提取效果和句向量在長文本、波動大文本中的提取效果,本文提出了WA-S-BiLSTM方法,有效地提升了整體識別精度。
(2)在詞向量通道引入靜態注意力機制,能夠有效提升特征提取效率。特別是針對文本長度較短、文本波動較小的事故文本類別,效果更加明顯。
(3)樣本數據的數量和不平衡會對傳統方法識別精度造成很大影響。這些影響可以通過合理設計實驗來降低。從實驗結果來看,本文提出的WA-S-BiLSTM方法也有助于降低樣本數量對于識別精度的影響。
(4)鐵路行車事故文本中,存在敘述非常多樣化的類型,如何進一步提升這一類文本的識別精度,是未來研究應關注的一個方向。
針對鐵路行車事故文本的分類問題,本文提出了基于LSTM網絡的事故文本分類模型。由于鐵路文本的專業性,在中文分詞階段就會造成大量的分詞誤差,為此本文構建了“鐵路行車事故詞庫”;針對鐵路事故文本長短不一的問題,設計了詞向量和句子向量雙通道的分類模型結構;針對鐵路行車事故文本的詞向量特征提取效果,在詞向量通道中引入了靜態注意力機制,有效提升了鐵路事故文本重點詞語的特征提取效率。實驗結果證明了本文所提出方法的有效性。同時,在實驗中發現,樣本敘述的多樣性,以及文本向量長、波動大的小數量樣本均會對識別精度產生負面影響,這也是未來研究中應進一步解決的問題。