李新琴,史天運,李 平,代明睿,張曉棟
(1.中國鐵道科學研究院集團有限公司 電子計算技術(shù)研究所, 北京 100081;2. 中國鐵道科學研究院集團有限公司, 北京 100081)
高速鐵路信號設備是鐵路安全運營的基礎保障設備[1-2]。隨著中國高速鐵路的飛速發(fā)展,高速鐵路信號設備也不斷升級改造?;诟咚勹F路運營里程的積累,產(chǎn)生了大量的信號設備故障數(shù)據(jù),這些數(shù)據(jù)以文本的形式記載了故障的詳細信息,蘊含著豐富的故障診斷與處理經(jīng)驗知識。但由于其以非結(jié)構(gòu)化文本的形式存儲,不利于計算機處理和理解,長期由人員查閱分析,存在著嚴重的故障知識無法高效復用的問題。因此,在鐵路大數(shù)據(jù)與智能鐵路的建設下,有必要基于鐵路數(shù)據(jù)與人工智能服務平臺,研究機器學習算法,實現(xiàn)故障知識的自動抽取,為高速鐵路故障診斷及智能鐵路建設應用中的智能問題、智能推薦等智能服務的落地提供知識庫。
知識抽取主要包括命名實體識別和實體關(guān)系抽取兩個方面。命名實體通常指人名、地名、機構(gòu)名等以名稱為標識的實體[3]。命名實體識別主要是將故障文本數(shù)據(jù)中的關(guān)注信息作為命名實體抽取出來。實體關(guān)系抽取是將抽取出來的命名實體進行關(guān)聯(lián),形成〈實體,關(guān)系,實體〉三元組數(shù)據(jù),并通過知識融合和知識加工方法,將三元組數(shù)據(jù)組織成知識。命名實體識別與實體關(guān)系抽取,可以作為兩個獨立的任務進行,也可以基于一個模型同時抽取。相互獨立抽取時,命名實體識別[4]目前主流的方法包括:長短時記憶網(wǎng)絡(Bidirection Long Short Term Memory,BiLSTM)與條件隨機場(Conditional Random Fields,CRF)結(jié)合的命名實體識別模型[5-6],以及卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)與BiLSTM+CRF結(jié)合的模型,以實現(xiàn)中文命名實體識別[4]。高速鐵路信號設備故障關(guān)系抽取是一個文本分類問題。文本分類機器學習模型包括:單分類器,例如決策樹(Decision Tree,DT)、支持向量機(Support Vector Machine,SVM)、樸素貝葉斯 (Naive Bayes Classifier,NBC)等,以及集成學習分類器[7],深度學習模型[8-11]。同時抽取是將命名實體與實體關(guān)系在一個模型中學習,最后直接輸出實體與關(guān)系的三元組數(shù)據(jù)。命名實體與實體關(guān)系聯(lián)合抽取模型主要包括:BiLSTM與編碼-解碼過程(Encoder-Decoder,ED)、CNN相結(jié)合的混合神經(jīng)網(wǎng)絡實現(xiàn)的實體與關(guān)系聯(lián)合抽取模型[12],以及BERT(Bidirectional Encoder Representations from Transformers)與注意力機制相結(jié)合的聯(lián)合抽取模型[13]。
在鐵路文本數(shù)據(jù)分析領域,許多學者開展了研究。在命名實體識別方面,楊連報[5]采用Word2Vec對鐵路事故故障進行特征表示,并采用BiLSTM+CRF實現(xiàn)鐵路電務的事故故障命名實體識別。在文本分類方面,文獻[14]采用TF-IDF特征提取與基于遺傳算法改進的Bagging集成分類器,實現(xiàn)鐵路安全隱患文本數(shù)據(jù)智能分類;張磊等[15]采用卡方檢驗和樸素貝葉斯方法對安全管理文本進行降維和分類;上官偉等[16]通過改進文檔主題生成模型(Latent Dirichlet Allocation,Labeled-LDA),采用基于粒子群優(yōu)化的支持向量機算法對車載日志進行分類。
高速鐵路信號設備故障知識抽取方法,借鑒學者們對命名實體與實體關(guān)系抽取的研究方法,針對信號設備故障數(shù)據(jù)特點,提出命名實體與實體關(guān)系的抽取模型,實現(xiàn)信號設備故障知識的抽取。根據(jù)故障數(shù)據(jù)的信息價值,定義故障命名實體與實體關(guān)系類型,構(gòu)建故障知識結(jié)構(gòu);統(tǒng)一標注命名實體與實體關(guān)系抽取樣本數(shù)據(jù),提出多維字符特征表示的命名實體特征表示方法和多維分詞特征表示的實體關(guān)系特征表示方法,采用BiLSTM+CRF實現(xiàn)命名實體抽?。换诙嗑S分詞實體關(guān)系特征表示,設計基于Transformer[17-18]網(wǎng)絡,實現(xiàn)實體關(guān)系的抽取。為驗證模型的有效性與正確性,應用高速鐵路2009—2018年信號轉(zhuǎn)轍機設備故障數(shù)據(jù)進行實驗分析。
高速鐵路信號設備故障數(shù)據(jù),來源于鐵路電務相關(guān)系統(tǒng)以及人員整理的故障信息,并以Excel形式存儲,較為全面地記載了電務信號設備故障發(fā)生的詳細信息。其中,故障原因分析數(shù)據(jù),以非結(jié)構(gòu)化文本的形式描述了故障設備的型號、故障發(fā)生的原因、整改措施等有價值的信息。
高速鐵路信號設備故障知識抽取模型總體框架見圖1。該模型自底向上分為三層:最底層為文本預處理層,實現(xiàn)對原始文本數(shù)據(jù)去除設備型號、停頓詞等預處理操作;中間層為故障知識抽取模型層,通過對故障知識的定義,統(tǒng)一標注文本數(shù)據(jù),并對標注文本進行特征表示,將文本數(shù)據(jù)轉(zhuǎn)換為向量,通過命名實體識別模型與實體關(guān)系抽取模型,先后實現(xiàn)實體抽取與關(guān)系抽取,形成三元組的知識數(shù)據(jù);最上層為故障知識層,采用圖數(shù)據(jù)庫對知識進行存儲,為基于知識圖譜的各類應用提供數(shù)據(jù)支撐。
圖1 高速鐵路信號設備故障知識抽取模型總體框架
故障知識的寶貴價值在于能夠有效輔助現(xiàn)場人員分析故障致因,并能夠給出故障處理意見。高速鐵路信號設備故障知識以抽取故障致因和處理方法為目的,根據(jù)對故障原因分析文本數(shù)據(jù)的特征總結(jié),定義故障知識結(jié)構(gòu)。高速鐵路信號設備故障知識結(jié)構(gòu)見圖2。從圖2中可以看出,通過設備現(xiàn)象引起設備現(xiàn)象這種閉環(huán)結(jié)構(gòu),能夠有效抽取引起事故的致因鏈,其余知識結(jié)構(gòu)能夠有效表達故障的處理措施。
圖2 高速鐵路信號設備故障知識結(jié)構(gòu)
根據(jù)故障知識結(jié)構(gòu),共定義5類命名實體和7類關(guān)系類型。命名實體和實體關(guān)系定義見表1。
表1 命名實體和實體關(guān)系定義
高速鐵路信號設備故障知識抽取方法,基于有監(jiān)督學習的深度學習方法實現(xiàn),需要大量標注樣本數(shù)據(jù)進行訓練。信號故障知識標注方法將命名實體學習與實體關(guān)系學習樣本統(tǒng)一標注。每一條信號設備故障文本標注為原文序列、索引序列、命名實體序列、關(guān)系序列、關(guān)系索引序列,組成一個序列集合,分別對應圖3中的{seq0,seq1,seq2,seq3,seq4}。高速鐵路信號設備故障文本標注序列集合見圖3。
圖3 高速鐵路信號設備故障文本標注序列集合
命名實體識別序列標注采用BIOE表示,其中B(Begin)表示實體的起始位置,I(Internal)表示實體的中間部分,E(End)表示實體的末尾字符,O(Other)表示非實體字符,用“-”與表1中定義的實體標注類型連接。實體關(guān)系在每個實體末尾字符用關(guān)系標注類型表示,并在關(guān)系索引序列中標記與之有關(guān)系的實體,如對圖1最底層原文部分數(shù)據(jù)的標注如圖3所示。
經(jīng)過標注的信號設備故障數(shù)據(jù)需要表示為計算機能夠識別和處理的數(shù)據(jù)類型,并能夠保留數(shù)據(jù)本身的特點。信號設備故障知識特征表示方法將標注數(shù)據(jù)轉(zhuǎn)換為多維字符特征與多維分詞特征,并輸入到信號設備故障知識抽取模型中。
命名實體特征表示不僅要表示樣本數(shù)據(jù)中標注的命名實體特征,也要表示文本上下文內(nèi)部相關(guān)信息,所以多維字符特征表示方法包含了樣本中每一個字符特征、標注樣本的命名實體特征、能夠表達樣本內(nèi)容的分詞特征等三維特征。
(1)字符特征:即表示所有標注樣本的seq0的漢字的特征。將樣本去重后的所有字符按順序編碼得到字符編碼集合Dc。
(2)命名實體特征:即將樣本的seq2信息完整表示出來。獲取seq2所有的不重復的命名實體標記,并將所有標記按順序編碼,映射為命名實體字典集合Tc。
(3)分詞特征:樣本的seq0通過加載專業(yè)語料的jieba分詞工具進行分詞。得到的樣本分詞集合不僅能夠表達字符在詞語中的位置,而且可以判斷詞語的字符數(shù)量。設一個文本的總長度為L,包含n個分詞{w1,w2,w3,…,wn},則每個分詞的表示子集合為
f(wi)={l-(l-1),…,l-1,l}
(1)
以上編碼完成后,設有n個樣本數(shù)據(jù)集,輸入一個樣本i的seq0及seq2標注數(shù)據(jù),得到相應的編碼向量Dci、Sci、Tci,并且具有相同的維度,長度為樣本字符的長度,每個樣本采用三維不同的特征向量組成向量VNERi(i=1,2,…,n),所有樣本向量表示為VNER,并且在最后加一維向量Ln用于表示每個樣本的長度。
實體關(guān)系特征表示應用知識標注全部序列seq0~seq4,表達實體以及實體之間的關(guān)系。設seq3中有n個實體關(guān)系,將標注數(shù)據(jù)分解為n個實體關(guān)系學習樣本,每個樣本采用基于多維分詞的實體關(guān)系特征方法表示。
實體關(guān)系主要包括:分詞特征,首部命名實體特征,尾部命名實體特征,掩碼特征。其中首部和尾部命名實體基于實體位置特征表示方法表示。
(1)分詞特征表示:實體關(guān)系分詞將樣本中的命名實體作為語料加載到jieba分詞工具進行分詞,這樣能夠?qū)⒚麑嶓w作為一個分詞整體進行處理。輸入seq0實現(xiàn)樣本數(shù)據(jù)的分詞,并將所有標注樣本的分詞集合去重后按順序編碼形成分詞集合Sc。
(2)首部和尾部命名實體特征表示:x表示輸入的當前命名實體的位置索引;y表示命名實體的字符長度;z表示整個樣本的索引長度;δ表示索引值大小的上限。首部和尾部命名實體的特征集合為
f(x,y,z)={{-x,0}+{0}·y+
{1,z-y-x+1}}+δ
(2)
(3)掩碼特征表示:表示首部實體和尾部實體以及其他非實體的位置信息。x表示首部索引的起始位置,y表示尾部實體的索引位置,z表示整個樣本的索引長度,過公式(3)計算掩碼特征集合,并且f(x,y,z)與g(x,y,z)的輸出集合大小相等。
g(x,y,z)={1}·(x+1)+{2}·
(y-x-1)+{3}·(z-y)
(3)
根據(jù)以上3種實體關(guān)系特征表示計算方法,輸入第i個樣本數(shù)據(jù)集seq0~seq4,通過Sc的分詞編碼映射,得到分詞特征向量Sci,通過f(x,y,z)分別得到樣本的首部命名實體特征向量Hi和尾部特征向量Ti,通過g(x,y,z)得到樣本的掩碼特征向量Mi,最終得出該樣本的多維特征向量VREAi(i=1,2,…,n),以及所有樣本的向量表示。
信號設備故障知識抽取模型將知識特征表示的多維字符向量與多維分詞向量,分別輸入到BiLSTM+CRF命名實體識別模型和Transformer關(guān)系抽取模型中,BiLSTM+CRF與Transformer兩個深度學習網(wǎng)絡模型,對輸入的特征數(shù)據(jù)經(jīng)過網(wǎng)絡嵌入層轉(zhuǎn)換后進行特征學習,經(jīng)過訓練的網(wǎng)絡模型能夠自動識別輸入樣本的實體,以及實體之間的關(guān)系,最終輸出三元組的知識數(shù)據(jù)。命名實體與實體關(guān)系抽取模型見圖4。
命名實體識別是自然語言中典型的序列標注問題,輸入一個線性序列x={x1,x2,x3,…,xn},輸出給線性序列中的每一個元素打上標簽集合中的某個標簽的序列y={y1,y2,y3,…,yn}。BiLSTM與CRF結(jié)合是一種能夠有效學習自然語言的上下文關(guān)系并能夠保證輸出序列前后依賴關(guān)系的模型,圖4中左半部分即為BiLSTM+CRF-NER部分。
BiLSTM由前向LSTM和后向LSTM組合而成。LSTM是一種特殊的循環(huán)神經(jīng)網(wǎng)絡,其神經(jīng)元有3個門結(jié)構(gòu),分別是遺忘門、輸入門和輸出門,各門的輸入輸出計算公式為
(4)
CRF通過對BiLSTM的輸出進行學習,能夠保證輸出序列的條件概率滿足馬爾科夫性,例如B-P后面的輸出字符應該是I-P,而不是其他,這樣可以增強輸出序列的正確性。當輸入序列x時,輸出序列取值為y的條件概率為
(5)
式中:Z(x)為歸一化因子;tk為轉(zhuǎn)移特征函數(shù);λk為轉(zhuǎn)移特征的權(quán)值系數(shù);sl為結(jié)構(gòu)特征函數(shù);μl為結(jié)構(gòu)特征的權(quán)值。
Transformer是一種基于注意力機制(Attention)建立全局輸入(Encoder)和輸出(Decoder)依賴關(guān)系的神經(jīng)網(wǎng)絡,相比其他神經(jīng)網(wǎng)絡具有較強的并行性,主要包括編碼過程和生成式的解碼過程。信號設備故障實體關(guān)系抽取是一個分類問題,基于Transformer Encoder編碼過程實現(xiàn)。圖4中右半部分即為Transformer-RE部分,其為應用Transformer思想設計的信號設備故障實體關(guān)系抽取網(wǎng)絡結(jié)構(gòu)。
基于Transformer的關(guān)系抽取網(wǎng)絡結(jié)構(gòu)中,將多維分詞表示的特征向量經(jīng)過Embedding層的轉(zhuǎn)化后,輸入到Encoder網(wǎng)絡單元中。Encoder網(wǎng)絡單元由多頭注意力機制和基于位置的全連接前饋網(wǎng)絡2個子層組成,每一層的輸出都經(jīng)過一個歸一化計算。
多頭注意力機制由多個注意力機制單元組成。注意力機制將輸入向量轉(zhuǎn)換為query(Q)和一組key-value(K,V)向量,并根據(jù)注意力機制單元個數(shù)h進行h次線性變換,將每個注意力機制單元的計算結(jié)果進行拼接,然后再將每個注意力機制單元對輸入的Q,K,V進行Attention函數(shù)計算,計算公式為
(6)
式中:headi=Attention(QWiQ,KWiK,VWiV);WiQ∈Rdl×dq,Wik∈Rdl×dk,Wiv∈Rdl×dv,WiO∈Rhdv×dl,都是模型學習的映射參數(shù)。
全連接前饋網(wǎng)絡層主要包括兩層全連接前饋神經(jīng)網(wǎng)絡,以及中間的一次ReLu函數(shù)激活和Dropout防止過擬合計算。對于不同的注意力機制單元使用相同的參數(shù)。其中W和b表示網(wǎng)絡連接權(quán)重和偏置。最后對多頭注意力機制層與全連接前饋網(wǎng)絡層的輸出結(jié)果求和并進行歸一化輸出。
FFN(x)=max(0,xW1+b1)W2+b2
(7)
以高速鐵路信號設備2009—2018年產(chǎn)生的故障數(shù)據(jù)驗證知識抽取模型,其中,70%作為訓練集樣本,20%作為驗證集樣本,10%作為測試集樣本。采用準確度Precision和召回率Recall作為算法評價和對比的指標,F(xiàn)1值為綜合評價模型。
(8)
式中:C為所有樣本的總數(shù);c為所有類別總數(shù);TPi為被正確分到此類的樣本個數(shù);TNi為被正確識別不在此類的樣本個數(shù);FPi為被誤分到此類的樣本個數(shù);FNi為屬于此類但被誤分到其他類的樣本個數(shù)。
高速鐵路信號轉(zhuǎn)轍機設備10年的故障數(shù)據(jù)中共包含1 362個不同漢字和21個實體標簽類型,BiLSTM為1層神經(jīng)網(wǎng)絡結(jié)構(gòu),LSTM神經(jīng)網(wǎng)絡神經(jīng)元個數(shù)為100,最大字符長度為100,Embedding字符特征維度為100,分詞特征維度為20,批處理大小為20,Dropout損失率為0.5。經(jīng)過50輪訓練得到的訓練結(jié)果見表2。
表2 基于多維字符特征的BiLSTM+CRF命名實體識別訓練結(jié)果
從訓練結(jié)果可以看出,故障維修條件、維修測試、維修結(jié)果、故障現(xiàn)象都有較高的評價指標,只有維修采取的措施評價指標較低,分析原因是由于各樣本中故障維修措施多樣化,并且相似的維修措施描述方式和標注邊界不同造成的。
高速鐵路信號設備故障樣本數(shù)據(jù)中共有6 260個實體關(guān)系學習樣本。基于多維分詞表示的Transformer網(wǎng)絡關(guān)系抽取模型采用3層網(wǎng)絡結(jié)構(gòu),每層中的多頭注意力機制包含4個注意力機制單元,分詞維度為50,Embedding層中位置向量大小為2×50+2=102,位置維度為5,線性轉(zhuǎn)換特征維度為60,隱藏層維度為100,Dropout損失率為0.3,網(wǎng)絡輸出為一維向量,大小為關(guān)系類別個數(shù)。
Transformer實體關(guān)系網(wǎng)絡經(jīng)過40輪的訓練,每輪將訓練樣本分為8次批處理訓練,訓練過程中,第10輪、20輪、30輪、40輪的損失函數(shù)loss函數(shù)值見圖5。
從圖5中可以看出,隨著訓練輪數(shù)及每輪訓練樣本的增加,loss值不斷下降,最后趨于穩(wěn)定并接近于0,說明以上參數(shù)值使得Transformer網(wǎng)絡訓練達到最佳狀態(tài)。最終模型訓練結(jié)果見表3。
由表3可以看出:基于多維分詞特征表示的Transformer實體關(guān)系抽取模型,在高速鐵路信號設備故障實體關(guān)系分類中具有較好的表現(xiàn),各關(guān)系類別評價指標都在90%以上;由于MEP(采取維修措施發(fā)現(xiàn)設備故障現(xiàn)象)類實體關(guān)系在樣本中極少,所以其評價指標較低。
為了進一步說明本文研究方法的有效性,針對已標注的高速鐵路信號轉(zhuǎn)轍機設備10年的故障數(shù)據(jù),采用不同的特征表示方法,以及不同的命名實體抽取模型和實體關(guān)系抽取模型進行實驗。其中命名實體識別分別采用Word2Vec和多維字符特征進行特征表示,采用預訓練模型ALBERT_base和BiLSTM+CRF模型實現(xiàn)設備故障命名實體識別;實體關(guān)系抽取分別采用字符+位置特征以及多維分詞特征進行特征表示,采用Transformer、RNN和CNN作為實體關(guān)系抽取模型實現(xiàn)設備故障實體關(guān)系抽取。多種實體和實體關(guān)系抽取模型實驗結(jié)果見表4。
從表4可以看出,多維字符特征+BiLSTM+CRF在設備故障命名實體識別中各項評價指標最高,而目前主流的預訓練模型Word2Vec和ALBERT_base由于設備故障樣本數(shù)量不足,未體現(xiàn)出較高的性能;在設備故障實體關(guān)系抽取中,多維分詞特征+Transformer模型各評價指標最高,字符+位置特征與Transformer模型,以及多維分詞特征與RNN和CNN的組合模型,實體分類性能都不及多維分詞特征+Transformer模型,說明多維分詞特征+Transformer是最佳的設備故障實體關(guān)系抽取模型。
表4 多種實體和實體關(guān)系抽取模型實驗結(jié)果
根據(jù)以上實驗結(jié)果可以得到,針對高速鐵路信號設備故障文本數(shù)據(jù),采用統(tǒng)一標注,命名實體識別與實體關(guān)系識別任務相互獨立訓練的方式具有優(yōu)勢,并且基于多維字符表示的BiLSTM+CRF命名實體識別模型與基于多維分詞表示設計的Tramsformer關(guān)系識別模型,在高速鐵路信號設備故障命名識別與關(guān)系分類中具有較好的表現(xiàn)。實驗證明,高速鐵路信號設備故障實體與關(guān)系抽取模型在故障知識抽取問題中具有應用價值。
“十四五”鐵路網(wǎng)絡安全和信息化規(guī)劃中明確提出建設鐵路數(shù)據(jù)服務和人工智能平臺?;谥R圖譜的自然語言處理人工智能服務是平臺的重要組成部分。高速鐵路信號設備故障命名實體與實體關(guān)系管道式抽取模型,將文本的故障原因分析數(shù)據(jù)轉(zhuǎn)化為可以為故障診斷服務的知識。該模型也可以應用到鐵路其他專業(yè),如果統(tǒng)一存儲知識,隨著應用的深入,將形成龐大而豐富的鐵路知識庫,該知識庫能夠解決鐵路諸多方面智能化服務無法實現(xiàn)的瓶頸。高速鐵路信號設備故障知識抽取之后,如何應用機器學習算法去除冗余知識以及基于已有知識挖掘未知知識都是下一步的研究方向。