張 祺,李成軍,劉敬蜀
(中國人民解放軍91977部隊,北京100036)
命名實體識別(NER)是一種可以從一段自然語言文本中,提取出命名實體、位置等三大類、七小類信息的方法[1],三大類是指時間類、實體類和數字類,七小類是指時間、地點、人名、機構名、百分比、日期和貨幣。命名實體識別的研究,有助于計算機更好地處理自然語言文本數據[2]。目前命名實體識別技術已廣泛應用于知識圖譜構建[3]、問答系統[4]等多種自然語言處理任務中。
目前命名實體識別的常用方法有:基于規則和詞典的方法、基于統計的方法以及統計與規則相結合的方法。基于規則和詞典的方法需要經常完善詞典內容,費時費力,且無法發現新實體,在識別率和召回率上很難再有新的突破[5]。基于統計的命名實體識別方法主要依托于機器學習,解決了無法發現新實體的問題。Morwal[6]使用隱馬爾可夫模型(HMM)算法解決序列標注問題,實驗結果證明此模型具有一定的適用性,但由于輸出獨立性假設的局限性,使得文本中的上下文特征不能很好地發揮作用。MeCallum等[7]提出了最大熵隱馬模型(MEMM),通過使用局部最優值方法解決了隱馬爾科夫模型的問題,但卻帶來了標記偏見的問題。2001年,Laffrt等[8]提出了條件隨機場(CRF),該方法對最大熵模型和隱馬爾可夫模型進行了一定的融合,通過監督學習的方式,使實體識別任務更加高效,還可以對新實體進行預測,但識別率較低。基于統計的方法通常缺少語料庫的輔助,識別率難以提高。混合方法則融合了基于規則、詞典的方法和基于統計的方法的優點,使最終的識別率得到了一定的提升。Google于2018年提出了一種基于雙向Transformer的大規模預訓練語言模型(Bert)[9],該模型在解決命名實體識別領域的問題上取得了較好的效果。Strubell等[10]提出了一種Iterated Dilated CNN+CRF模型,該模型在命名實體識別領域取得了較好的效果,但存在召回率不夠理想的問題。Huang等[11]提出了Bi LSTM-CRF模型,該模型充分利用了文本中上下文的特征,識別率和召回率都有了一定的提升。趙耀全[12]等針對醫療領域提出了一種基于N-grams新詞發現的Lattice-LSTM的多粒度命名實體識別模型,構建了一個醫療領域的詞典,適合醫療領域的命名實體識別問題,但不適合其他領域。同樣,周曉進[13]提出的面向中文電子病歷的多粒度模型也僅僅適用于醫療領域的中文電子病歷的識別。2020年,楊春明等[14]提出了一種基于BERT-Bi LSTM-CRF的命名實體識別模型,該模型主要針對政務領域的實體,政務領域實體具有長度較長、實體并列、別稱等特點,該模型能較好的解決政務領域的問題,但同樣不適用于其他領域。
上述模型或因方法問題,導致實體識別率和召回率不高,或因模型單一,領域性較強。本文提出了一種基于BERT-IDCNN-CRF的命名實體識別方法,融合BERT、IDCNN、CRF模型的優點。通過BERT預訓練語言模型得到字的上下文表示,再結合IDCNNCRF模型,在保持BERT模型優點的同時,減少相應的訓練參數,取得了較好效果。
近年來,在預訓練神經網絡作為語言模型的基礎上,使用微調的方式處理垂直任務取得了一定的效果。在典型的語言模型中,通過預訓練模型可以獲得固定的詞向量,但固定的詞向量無法表示詞的多義性,BERT模型的提出解決了一詞多義的問題[15]。BERT模型可以表征句子結構以及詞的多義性,并且可以獲得詞的上下文相關表示。BERT模型如圖1所示。

圖1 BERT預訓練語言模型
為每個詞的表示都能夠融合詞的上下文信息,BERT模型的編碼器采用了雙向Transformer。雙向transformer編碼結構也是BERT模型最重要的部分,其基于自注意力機制,替代了RNN循環式網絡結構,對文本進行建模。雙向Transformer編碼單元如圖2所示。

圖2 Transformer編碼單元
自注意力(Self-Attention)機制是編碼單元的核心機制,如公式(1)所示。

式中輸入詞向量矩陣Q、K、V分別表示Query、Key、Value向量,dk為輸入向量維度。
自注意力機制的核心思想認為,一段話中不同詞之間的聯系以及詞在一段話中的重要程度可以由詞與詞之間的關系所體現。因此Q KT表示計算詞向量之間的關系,并通過dk縮小后,使用softmax函數歸一化,得到每個詞的權重。這種新的表達方式不僅可以表達詞本身,也可以表達詞在所在句子中的上下文關系,這種表達方式相比傳統詞向量更能體現全局性。
為使模型在不同位置上都具備良好的表達能力,Transformer采用了“多頭(Multi Head)”模式,擴大注意力單元表示子空間,如公式(2)和(3)所示:

與其他預訓練模型相比,BERT模型可以充分地利用詞的上下文信息,因此擁有較好的詞分布式表示。
膨脹卷積(dilated convolution)也叫空洞卷積,其主要目的是在不增加模型參數和保持模型速度前提下,增大模型的感受野[16]。
在典型的卷積神經網絡中,卷積核在連續的區域內滑動計算特征,而膨脹卷積在經典的卷積神經網絡中加入了膨脹寬度,在卷積核進行特征計算時會跳過膨脹寬度間的數據,以此保證在卷積核的大小不變的前提下,可以得到更廣的輸入矩陣,增大卷積核的感受野。圖3為普通CNN與膨脹CNN結構的對比。針對窗口大小為3的三層卷積神經網絡,在膨脹卷積神經網絡第二層卷積時,跳過了中心相鄰節點,出現了2個空洞,直接捕獲了與中心相鄰的節點,膨脹率為2。因此,普通卷積神經網絡的第三層中每個節點僅能捕捉到第二層前后三個節點的信息,但是膨脹卷積神經網絡中在保持參數與模型速度不變的前提下,第三層的節點可以捕捉到第二層中前后九個節點的信息,此時膨脹率為4,出現了6個空洞。膨脹卷積最大程度上提高了模型的有效性和準確性。

圖3 普通CNN與膨脹CNN結構對比
膨脹卷積神經網絡可以抽取語句特征,并使用softmax分類器對標簽進行預測,但是softmax分類器沒有考慮標簽間的依賴關系,因此,特征序列的聯合概率表示需要使CRF對數線性模型[17]。
若句子長度為n,句子序列為x=(x1,x2,x3,...,x n)且對應預測標簽為y=(y1,y2,y3,...,y n),則預測列總份數如公式(4)所示,其中轉換矩陣W,經過線性映射得到的標簽分數P。

因為預測序列存在多重可能性,且僅有一種是正確的,因此需要對所有可能序列進行處理,使其全局歸一化,如公式(5)所示:

BERT_IDCNN_CRF模型圖如圖4所示,以“美國空軍在華盛頓完成實驗”作為輸入語句為例,語句首先通過BERT預訓練模型將語句轉化為向量表示,然后通過IDCNN提取詞句特征,最終通過CRF獲得預測結果。
環己烷主要用于制備環己酮、環己醇,在涂料工業中廣泛用作溶劑[1]。異丙醇也是重要的有機化學原料,用于化工、制藥工業、汽車和航空燃料中[2,3]。在生產過程中,它們會混合在一起,大量存在工業廢水中。因此,需對混合物分離和回收。常壓下,異丙醇-環己烷形成最低共沸物,共沸溫度:68.6℃,共沸組成:0.33(異丙醇質量分數)[4]。因此,該體系不能用普通精餾分離,需要用特殊精餾方法。

圖4 BERT-IDCNN-CRF模型圖
本文參數設置見表1。

表1 參數設置
由于本文的目標是識別軍事命名實體,所以采集了一些軍事網站的相關報道作為標注語料庫的原始語料,即生語料,然后對準備好的生語料進行標注。本實驗以字為單位進行標注,采用BIO標注模式進行標注,將每個元素標注為B-X、I-X和O。其中,B-X表示此字所在的詞語屬于X類型并且此字在此詞語的開頭,I-X表示此字所在的詞語屬于X類型并且此字在此詞語的非開始位置,O表示此字不屬于任何類型。本實驗的軍事命名實體標注見表2。

表2 軍事命名實體標注
標注完成后,生語料就標注成了熟語料,數據分布情況見表3。

表3 數據集劃分
對于本文的命名實體識別而言,依照慣例引入P,R,F1評測指標來評價試驗結果如下:

對于部隊、軍事地名、武器裝備和人名4類軍事命名實體基于BERT_IDCNN_CRF的軍事命名實體識別效果見表4。

表4 基于BERT_IDCNN_CRF的各類軍事命名實體識別效果
為驗證BERT_IDCNN_CRF模型的有效性,本文對比了Bi LSTM_CRF,IDCNN_CRF,Lattice_LSTM_CRF等命名實體識別方法,實驗結果見表5。

表5 命名實體識別的對比結果
基于BERT_IDCNN_CRF的軍事命名實體識別模型效果明顯優于Bi LSTM_CRF、IDCNN_CRF、Lattice_LSTM_CRF,且F1值分別提升了4.84%、5.86%、1.63%,相比于傳統的詞向量表示方法,BERT效果更好。
相較于其他的命名實體識別模型,基于BERT_IDCNN_CRF的軍事命名實體識別模型使用基于BERT的字向量生成模塊集合了文本的字特征、位置特征和句子特征,使用BERT微調機制進行特征向量的生成,使用IDCNN模型,經過卷積層提取特征,再經過映射層連接到CRF層。
基于CRF的編碼模塊,對序列進行全局最優的標簽預測。使得識別效果超過其他3種模型。
本文通過分析軍事實體的數據特征,結合現有命名實體識別算法特點,設計提出了基于BERT_IDCNN_CRF的軍事目標命名實體識別模型,經過對比,本文提出的模型在F1分數上效果更優。未來工作中,將嘗試提升部隊、軍事實體別名等命名實體的識別效果,以彌補現有模型的缺陷。