陳柱輝,劉 新,張明鍵,張達為
1(湘潭大學 計算機學院·網絡空間安全學院,湘潭 411105)
2(湖南警察學院 信息技術系,長沙 410138)
簡要案情是指警務人員在接到被害人或者目擊者報案時,使用警務信息系統(tǒng)生成的簡短并蘊含重要信息的文本序列,并便于警務人員管理和存儲的警務記錄.簡要案情中的案發(fā)地點、涉案人員、涉案財產和涉案事件關鍵詞等實體是整個案件的核心信息,通過這幾類實體,警務人員可以迅速判斷出案件的嚴重程度以及犯罪的類型.因此,對簡要案情文本的深度挖掘是掌握案件始末和分析案情的有效手段之一.結合自然語言處理相關技術,圍繞簡要案情等警務文本的相關研究,可為智慧警務、案情問答等場景提供有效的支持與應用.
命名實體識別(named entity recognition,NER)是信息抽取和信息檢索中一項重要的任務,其目的是識別出文本中表示命名實體的成分,并對其進行分類,也是信息提取過程中的關鍵技術,旨在從非結構化文本中抽取各類所需實體,為語料庫的建設和知識圖譜的搭建提供了技術支持[1,2].通識領域憑借其大量標注數據集,吸引眾多研究人員爭相投入其中,通識領域的命名實體識別技術因此迎來迅速的發(fā)展,然而,受限于警務領域的簡要案情文本的開放,在簡要案情命名實體識別上的研究呈一片空白.因此,本文先對小規(guī)模簡要案情文本進行合理標注,提取的實體包括案發(fā)地點、涉案人員、涉案財產和涉案事件關鍵詞4 個類別,為了提高簡要案情文本中復雜的專業(yè)名詞的識別率,本文對字符向量生成的方法進行了改進,提出RCBiLSTM-CRF 神經網絡模型,通過Roberta 預訓練模型增強訓練語料的語義表示并根據上下文特征動態(tài)生成字向量,通過設計合理的卷積神經網絡對字向量的局部重要特征進行提煉,解決了通過預訓練模型帶來的字符向量冗長的問題,通過減少模型的參數量進而增加了模型整體參數收斂的速度,在一定程度上彌補了標注數據集稀缺的缺陷.本文在湖南省省公安機關提供的簡要案情數據集上做了大量的對比實驗,本文提出的網絡框架取得了比較理想的實體識別效果.
本文組織結構:第2 節(jié)介紹相關工作,包括對通識領域命名實體識別和特定領域命名實體識別的詳細闡述;第3 節(jié)主要介紹本文設計的卷積神經網絡,還對Roberta 預訓練模型,BiLSTM 層和CRF 層進行詳細的介紹;第4 節(jié)對實驗數據集、模型參數設置、模型評估標準和實驗結果與分析進行介紹;第5 節(jié)為結束語.
近年來,深度學習技術在命名實體識別上的應用成為新的浪潮.深度學習方法為科研理論的驗證提供了一種新的解決思路,最典型的深度學習模型為循環(huán)神經網絡(RNN),卷積神經網絡(CNN)的系列架構[3,4],本文將對通識領域命名實體識別跟特定領域命名實體識別的研究成果進行介紹.
Huang 等人[5]提出了BiLSTM-CRF 模型,憑借巧妙設計的雙向LSTM 結構,BiLSTM-CRF 模型可以有效地使用過去和未來的輸入特性,該模型通過CRF 層可以使用句子級標記信息.BiLSTM-CRF 模型可以在POS、分塊和NER 數據集上產生最先進(或接近)的準確性,并且具有較強的魯棒性,對詞嵌入的依賴性更小,可以實現準確的標注精度,而不需要借助于word的嵌入.
Zhang 等人[6]提出了Lattice LSTM 模型,該模型對輸入字符序列以及所有與詞典匹配的潛在單詞進行編碼,與基于字符的方法相比,Lattice LSTM 明確地利用了單詞和單詞序列信息,與基于詞的方法相比,Lattice LSTM 不存在切分錯誤.Lattice LSTM 模型使用門控循環(huán)單元從一個句子中選擇最相關的字符和單詞,以獲得更好的實體識別結果.Lattice 方法完全獨立于分詞,但由于可以在上下文中自由選擇詞典單詞來消除歧義,因此在使用單詞信息方面更加有效,在MSRA數據集中取得了93.18%的F1 值.
Gui 等人[7]提出了LR-CNN 模型,采取CNN 對字符特征進行編碼,感受野大小為2 提取bi-gram 特征,堆疊多層獲得multi-gram 信息,同時采取注意力機制融入詞匯信息(word embed)以解決Lattice LSTM 模型[6]存在不能充分利用GPU 進行并行化的問題,LR-CNN最終相比于Lattice LSTM 快3.21 倍;LR-CNN 采取rethinking 機制增加feedback layer 來調整詞匯信息的權值以解決Lattice LSTM 模型存在無法有效處理詞匯信息沖突的問題.
Li 等人[8]提出了FLAT 模型,該模型將其lattice 結構轉換成由跨度(spans)組成的平面結構,每個span 相當于一個字或者一個詞在其原始lattice中的位置,得益于Transformer和position encoding,FLAT 可以充分利用lattice 信息,具有出色的并行化能力.FLAT 解決了在中文NER中,lattice 模型因為其復雜度和動態(tài)性問題,導致其無法很好的利用GPU,限制了其運行速度的問題.在數據集(OntoNotes、MSRA、Resume和Weibo)上,FLAT 在性能和效率方面均取得了很理想的效果.
在社交領域,李源等人[9]為解決基于詞粒度信息或者外部知識的中文命名實體識別方法存在中文分詞(CWS)和溢出詞(OOV)的問題,提出一種基于字符的使用位置編碼和多種注意力的對抗學習模型,聯(lián)合使用位置編碼和多頭注意力能夠更好地捕獲字序間的依賴關系,而使用空間注意力的判別器則能改善對外部知識的提取效果,該模型分別在Weibo2015 數據集和Weibo2017 數據集上進行了實驗,實驗結果中的F1 值分別為56.79%和60.62%.
在軍事領域,李健龍等人[10]為了減少傳統(tǒng)的命名實體識別需要人工制定特征的大量工作,通過無監(jiān)督訓練獲得軍事領域語料的分布式向量表示,采用雙向LSTM 模型解決軍事領域命名實體的識別問題,并且通過添加字詞結合的輸入向量和注意力機制對雙向LSTM 網絡模型進行擴展和改進,進而提高軍事領域命名實體識別,提出的方法在軍事領域數據集上的F1 值達到了87.38%.
在軍用軟件測試領域,韓鑫鑫等人[11]針對字詞聯(lián)合實體識別方法準確率不高的問題,進行字符級特征提取方法的改進,提出了CWA-BiLSTM-CRF 識別框架,該框架包含兩部分:第一部分構建預訓練的字詞融合字典,將字詞一起輸入給雙向長短期記憶網絡進行訓練,并加入注意力機制衡量詞內各字對特征的語義貢獻,提取出字符級特征;第二部分將字符級特征與詞向量等特征進行拼接,輸入給雙向長短期記憶網絡進行訓練,再通過條件隨機場解決標簽結果序列不合理的問題,識別出文中的實體,所提出的框架在軍用軟件測試數據集上的F1 值達到了88.93%.
在醫(yī)療領域,寧尚明等人[12]針對電子病歷實體的高密度分布以及實體間關系的交叉互聯(lián)問題,提出一種基于多通道自注意力機制的“recurrent+transformer”神經網絡架構,提升對電子病歷專有文本特點的學習能力,同時顯著降低模型整體復雜度,并且在該網絡架構下提出帶權學習的交叉熵損失函數以及基于權重的位置嵌入的輔助訓練方法,該框架相繼在2010 i2b2/VA及SemEval 2013 DDI 醫(yī)學語料中進行驗證,相較于傳統(tǒng)自注意力機制,多通道自注意力機制的引入在模型整體F1 指標中最高實現10.67%的性能提升,在細粒度單項對比實驗中,引入類別權重的損失函數在小類別樣本中的F1 值最高提升近23.55%.
本文針對簡要案情文本存在實體稠密分布、實體間相互嵌套以及實體簡稱的問題,對字符向量的生成方法進行了改進,提出了RC-BiLSTM-CRF 網絡框架.RC-BiLSTM-CRF 整體算法框架如圖1所示,主要分為輸入模塊、字符向量生成模塊和輸出模塊,先對待標注文本進行數據清洗,用正則方法將待標注的文本的噪聲信息過濾掉,有利于本文所提模型提取出重要特征信息;將清洗后的數據輸入到字符向量生成模塊,字符向量生成模塊中首先通過Roberta 預訓練模型將文本生成字符向量,經過本文合理設計的卷積層能夠提取字符向量中的局部關鍵特征,并能將冗長的字符向量進行濃縮,緊隨的激活層能夠有效提高卷積層的特征學習能力和提升網絡的性能;經過字符向量生成模塊后,將字符向量輸入到BiLSTM 層,BiLSTM 層對字符序列進行上下文特征以及字符間依賴性學習,通過Dropout 層隨機刪掉網絡中一定比例的隱藏神經元,可以有效緩解模型過擬合情況,TimeDistributed 層將所有字符的向量維度進行約束,使得字符向量的維度等于實體標簽數,最后通過CRF 層得到輸入文本的標注序列.
圖1 本文提出的整體算法框架
本文提出的RC-BiLSTM-CRF 模型的整體結構如圖2所示,網絡結構包括一個Roberta 預訓練層,一個CNN 層和BiLSTM-CRF 模型.下面將對RC-BiLSTMCRF 網絡結構的各個部分進行詳細闡述.
圖2 模型整體結構
預訓練模型本質上運用了遷移學習[13]的思想,利用大規(guī)模訓練語料為預訓練模型的參數進行訓練,然后將訓練好的模型應用到下游任務,避免了深度學習模型重新訓練參數和減少了對標注數據的需求,縮短了字、詞向量訓練的耗時.Roberta 預訓練模型是BERT (bidirectional encoder representations from transformers)預訓練模型的改進模型,Liu 等人對BERT 預訓練模型進行精細調參和調整訓練集,訓練得到的Roberta 模型在性能上相較于BERT 模型提升顯著[14–16].Roberta 預訓練模型充分考慮字符級、詞語級、句字級和句間的關系特征,增強了字向量的語義表示,把這些學習到的語義知識通過遷移學習應用到數據規(guī)模和
標注量較少的簡要案情的命名實體識別具體任務上,能使模型更好的挖掘簡要案情文本的特征信息.
將字符序列chars=(char1,char2,…,charn),輸入到Roberta 預訓練模型中,Roberta 預訓練模型通過在其他大規(guī)模語料上訓練好的參數將chars中所有的字符生成向量,即char=(embedding1,embedding2,…,embedingm).相較于構建word2id 詞典,通過id 匹配id2vec 詞典的方法,預訓練模型可以縮短字符向量的維度,有效解決文本特征稀疏問題,學習上下文信息來表征字詞的多義性.
卷積神經網絡在本文所提出的字符向量生成方法中起著關鍵性作用,卷積神經網絡層可以為Roberta 預訓練模型生成的字符向量進一步提煉,去除冗長字向量中的噪聲,提取出簡短并蘊含局部重要特征信息的字符向量.卷積操作的計算公式如下所示:
其中,* 表示卷積計算,Xlj表示第l層的第j個字符特征向量,Xlj-1表示第l-1 層的第j個字符特征向量,Kilj表示用來連接第l層的第i個字符特征向量和第j個字符特征向量的卷積核,Blj表示第l層的第j個字符特征向量的偏置量[17].
由于從Roberta 預訓練模型中生成的字符向量是一維向量,于是本文使用一維卷積層對字符向量進行細粒度特征捕捉操作.為了合理選擇卷積層的濾波器的數量,本文選取了10–40 個濾波器進行實驗,實驗參數中epochs 均為50,batch_size 均為16,卷積核大小均為3,實驗結果如圖3所示.
如圖3所示,使用28 個濾波器的卷積層在本模型中的效果是最好的,所以本文針對簡要案情命名實體識別設計了包含28 個濾波器,卷積核大小為3的卷積層.由于池化層是一個下采樣的過程,在減小特征向量長度的同時,會使得部分案情實體特征信息丟失,從而降低下一步BiLSTM 進行上下文特征提取的性能,收斂速度變得緩慢,從而影響模型最終的實體標注的準確率,因此在本文的網絡結構中取消了池化層的使用.經Roberta 預訓練模型處理得到每個字符向量的維度為3072 維,通過綜合考慮設計的包含28 個濾波器,卷積核大小為3的卷積層,對字符向量的特征進行提取,使得字符向量序列從100×3072 降維到100×28 維,解決了預訓練模型帶來的字符向量冗長的問題,框架參數量的減少促使模型整體參數收斂的速率提高了9.46%,同時F1 值提高了1.73%.
圖3 濾波器實驗對比
BiLSTM-CRF 模型拉開了命名實體識別深度學習時代的序幕,使得命名實體識別模型更加簡潔高效,魯棒性更強.本文針對簡要案情本文構建基于BiLSTMCRF的實體識別模型,模型分為2 部分,接下來進行詳細介紹.
3.3.1 BiLSTM 層
將已標注訓練文本輸入到上文提及的字符向量生成方法中,生成字符向量.將字符向量輸入到BiLSTM層中.BiLSTM 包含了前向和后向的長短期記憶(LSTM),通過BiLSTM 可以更好地學習上下文信息以及捕捉雙向的語義依賴,彌補了LSTM 不能向前編碼信息的能力.在LSTM中,有兩個狀態(tài)向量C和h,其中C作為LSTM的內部狀態(tài)向量,可以理解為LSTM的內存狀態(tài)向量Memory,而h表示LSTM的輸出向量.相對于基礎的RNN 來說,LSTM 把內部Memory和輸出分開為兩個變量,同時利用3 個門控:輸入門(imput gate)、遺忘門(forget gate)和輸出門(output gate)來控制內部信息的流動,公式如式(2)–式(7)所示:
其中,W、b分別表示LSTM的隱藏層權重矩陣和偏置向量,ft,it,ot分別表示時間戳t的遺忘門、輸入門和輸出門,σ是Sigmoid 激活函數,t anh是tanh 激活函數,ht和Ct分 別表示時間戳t的輸出和細胞單元狀態(tài).正向LSTM的輸出值為反向LSTM的輸出值為BiLSTM 則是將正向LSTM跟反向LSTM 所得的向量進行拼接,即
3.3.2 CRF 輸出層
CRF 在整個模型中起著至關重要的作用,因為經過BiLSTM 層處理,得到的字符向量是字符對應的所有標簽的概率,最終輸出的結果是每個字符對應的最大概率值的標簽,這樣會導致輸出的標簽序列可能不符合命名實體識別規(guī)范.CRF的維特比算法在解碼時候擁有較高的效率,通過CRF 層的約束,讓輸出標簽序列符合實體規(guī)則.標簽序列的最終標注由Emission-Score (發(fā)射狀態(tài)矩陣)跟TransitionScore (轉移分數)決定.當輸入序列,標注序列,公式如式(8)和式(9)所示:
x=(x1,x2,···,xn)y=(y1,y2,···,yn)
其中,EmissionS core表示BiLSTM 輸出標簽的分數,TransitionS core表示標簽之間轉移的分數,eSi表示當前標簽序列分數,是所有標簽序列的分數的總計,最大P(y|x) 值對應的y為序列x的正確標注序列.
本文所使用的數據集來自湖南省省公安機關的簡要案情數據集(JW_data),數據的格式為tsv,本文先用正則方法將待清洗的數據集的噪聲信息過濾掉,有利于本文模型提取出重要特征信息,清洗后的數據集中訓練集占60%,測試集占20%,驗證集占20%.數據統(tǒng)計信息如表1所示.
表1 數據實體統(tǒng)計
清洗后的簡要案情數據集在標注平臺doccano 進行人工標注,將案發(fā)地點、涉案人員、涉案財產和涉案事件關鍵詞4 類實體作為本實驗的標注實體,對簡要案情數據集采用BIO 標注方式,B (Begin)對應字符序列中實體的起始位置,I (Intermediate)對應字符序列中實體的中間位置或者結束位置,O (Other)對應字符序列中非實體的字符,案發(fā)地點的標簽包括(B-LOC,ILOC),涉案人員的標簽包括(B-PER,I-PER),涉案財產的標簽包括(B-Property,I-Property),涉案事件關鍵詞的標簽包括(B-Event,I-Event),非實體字符的標簽為(O).實體統(tǒng)計如表2所示.
表2 數據實體標簽統(tǒng)計
本文選擇Roberta 預訓練模型生成簡要案情數據集的字符向量,字符序列長度設置為100,所生成的字符向量維度設定為3072,所以輸出字符向量序列的維度為100×3072.本文實驗使用的Batch_size 設定為16,epochs 設定為50,學習率為0.001.卷積神經網絡中卷積層的過濾器數量為28,kernel_size為3,padding為“same”,激活函數為ReLU 函數,卷積層的權重初始化方法為“glorot_uniform”,偏移初始化方法為“zeros”,輸出的字符序列維度為100×28;雙向長短期記憶的units 設定為128,故輸出的字符序列維度為100×256,dropout為0.4.
本文采用準確率(precision),召回率(recall),F1 值作為模型的評價標準,對簡要案情數據的實體識別結果進行全方面的評價.精確度、召回率和F1 值的公式如式(10)和式(12)所示:
其中,T p表示實際為正被預測為正的實體數量,Fp表示實際為負但被預測為正的實體數量,Fn表示實際為正但被預測為負的實體的數量.
本文采用BiGRU、BiBRU-CRF、BiLSTM、BiLSTMCRF 及CNN-LSTM 作為基線模型與本文所提的模型進行對比,各模型的基本信息如下:
(1)BiGRU:采用BiGRU 提取特征并通過全連接層直接對字符向量序列進行標注的模型.
(2)BiBRU-CRF:采用BiGRU 提取特征并結合CRF 對輸入字符向量序列進行標注的模型.
(3)BiLSTM:采用BiLSTM 提取上下文特征并通過全連接層直接對字符向量序列進行標注的模型.
(4)BiLSTM-CRF:采用BiLSTM 提取上下文特征并結合CRF 對輸入字符向量序列進行標注的模型.
(5)CNN-LSTM:采用本文設計的卷積神經網絡對字符
向量的局部特征進行捕捉,再通過LSTM 層對字符向量序列的正向特征進行學習,最后通過全連接層直接對字符向量序列進行標注的模型.
為驗證本文所提模型加入Roberta 預訓練模型的必要性,本文對所提出的模型和基線模型進行了驗證,性能對比如表3所示.
從表3的結果可以看出以上6 種模型通過加入Roberta 預訓練模型訓練數據集的字符向量,準確率、召回率和F1 值都能大幅度提升,Roberta 預訓練模型通過在大規(guī)模訓練語料訓練模型參數,一定程度上減少了對本文實驗標注數據的依賴性,避免了本文實驗數據較少導致模型效果不理想的情況.以上6 種模型,相較于未加入Roberta 預訓練模型的框架,準確率提高了5.94%~10.75%,召回率提高了5.56%~9.36%,F1 值提高了5.78%~10.12%,由此可見在本文所提的模型中加入Roberta 預訓練模型是必要的.
表3 對比實驗結果(%)
通過表3,可知基于本文的簡要案情數據,加入Roberta 預訓練模型可以全方面提升模型的性能,于是本文將R-BiGRU、R-BiBRU-CRF、R-BiLSTM、RBiLSTM-CRF和R-CNN-LSTM 這5 種模型相互之間進行性能對比,模型性能對比如表4所示.
表4 模型性能對比(%)
由表4所示,在加入Roberta 預訓練模型后,以上5 種模型在簡要案情文本上的準確率、召回率和F1值上都表現出了不錯的性能,其中R-BiLSTM-CRF 模型的precision 值為85.38%和F1 值為86.29%,相對于其它4 種模型來說有較大的領先優(yōu)勢.
為了驗證本文設計的卷積神經網絡能大幅度提升模型的效率跟模型的性能,將CNN-BiLSTM-CRF 模型與BiLSTM-CRF 進行實驗對比,RC-BiLSTM-CRF 與加入Roberta 預訓練模型的BiLSTM-CRF 模型(RBiLSTM-CRF 模型)進行實驗對比,多方面的實驗對比結果如表5所示.
由表5可知,CNN-BiLSTM-CRF 模型相較于BiLSTM-CRF 模型,準確率提高了1.39%,F1 值提高了0.42%,以及耗時減少了7.10%.RC-BiLSTM-CRF模型相較于R-BiLSTM-CRF 模型,準確率提高了1.85%,召回率提高了1.58%,F1 值提高了1.73%,以及耗時減少了9.46%.由此可見,本文所提出的卷積神經網絡能大幅度提升模型的效率跟模型的性能.
表5 多方面對比實驗
綜合表3–表5所述,本文針對簡要案情的實體識別方法,與基線模型的對比之下,在準確率、召回率和F1值均表現出了突出的性能優(yōu)勢.得益于本文合理設計的卷積神經網絡,使得本文所提出的RC-BiLSTMCRF 模型相較于R-BiLSTM-CRF 模型,在大幅度提高模型識別性能的同時,還降低了訓練模型所耗費的時間.
本文主要研究了面向簡要案情的命名實體識別任務,考慮到目前尚無針對該領域命名實體識別的研究,本文首次嘗試對該方向進行了學習和探討,構建了用于命名實體識別的簡要案情文本的標注數據集,并在前人研究的基礎之上提出了一種改進的識別框架(RCBiLSTM-CRF),通過改進的字符向量生成方法對簡要案情數據的字符進行了有效的表示,生成字符向量,通過該方法中合理設計的卷積神經網絡層對字符向量的局部細粒度特征進行提取,降低了字符向量維度,解決了預訓練模型帶來的字符向量冗長的問題,框架參數量的減少促使模型整體參數收斂的速率大幅度提高,為彌補一維卷積層在字符序列上下文特征和依賴關系提取的缺陷,在模型中引入BiLSTM 層,最后利用CRF 層對文本序列標簽進行約束輸出.本文提出的RC-BiLSTM-CRF 網絡框架,相對于未加入本文設計的卷積神經網絡的網絡框架,在準確度、召回率和F1 值上分別提高了1.85%、1.58%和1.73%,總耗時減少了9.46%,與其它4 種模型相比較,在準確率、召回率和F1 值3 個評價標準上均取得了最好的效果.由于本實驗是在標注量少的簡要案情數據集上進行的,在接下來的工作中,可拓展簡要案情的數據規(guī)模,使得模型的魯棒性更好.