張曉海,操新文,張 敏
(1.國(guó)防大學(xué)聯(lián)合作戰(zhàn)學(xué)院,河北 石家莊 050084;2.國(guó)防大學(xué)聯(lián)合勤務(wù)學(xué)院,北京 100858)
命名實(shí)體識(shí)別是從非結(jié)構(gòu)化文本中抽取實(shí)體信息的方法,一般包括人名、地名、機(jī)構(gòu)名、專有名詞等。它是信息抽取、機(jī)器翻譯等自然語(yǔ)言處理中眾多應(yīng)用領(lǐng)域的重要基礎(chǔ)。近年來,深度學(xué)習(xí)取得了飛速發(fā)展,命名實(shí)體識(shí)別研究也取得了很多成果。Hammerton等[1]采用了長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)來替代人工設(shè)計(jì)特征的工作,使用神經(jīng)網(wǎng)絡(luò)自動(dòng)提取特征;Mccallum等人[2]的工作是采用條件隨機(jī)場(chǎng)(Conditional Random Field,CRF)作為解碼層對(duì)命名實(shí)體進(jìn)行識(shí)別,能夠更好地提升識(shí)別率;Chiu等人[3]在前人工作基礎(chǔ)上,采用雙向LSTM進(jìn)行編碼,能提取到更豐富的上下文特征。
隨著大數(shù)據(jù)、人工智能的快速發(fā)展,作戰(zhàn)指揮模式正在由傳統(tǒng)的語(yǔ)言形式向數(shù)據(jù)化形式轉(zhuǎn)變。指揮信息的數(shù)據(jù)化作為指揮信息系統(tǒng)的重要組成部分,成為適應(yīng)未來信息化戰(zhàn)爭(zhēng)的重要研究方向。軍事命名實(shí)體識(shí)別作為一種智能化信息抽取方法,能夠更加快速、準(zhǔn)確地從指揮文本中提取軍事命名實(shí)體等數(shù)據(jù)元素,是指揮信息數(shù)據(jù)化研究發(fā)展的關(guān)鍵基礎(chǔ)。本文在BLSTM-CRF模型的基礎(chǔ)上,引入自注意力來豐富文本的內(nèi)部特征,在軍事命名實(shí)體識(shí)別任務(wù)中取得了不錯(cuò)的效果。
在信息化條件下,軍事文本作為一種重要的指揮信息載體,是指揮信息在指揮信息系統(tǒng)中流轉(zhuǎn)的主要表現(xiàn)形式。軍事命名實(shí)體主要包括機(jī)構(gòu)名、作戰(zhàn)編成、軍事地名、武器裝備名、軍職軍銜等幾大類實(shí)體。軍事文本相對(duì)于通用領(lǐng)域文本,雖然具有格式統(tǒng)一、語(yǔ)句規(guī)范等特點(diǎn),但同樣存在其特殊性。其中最為明顯的特點(diǎn)是組合嵌套復(fù)雜,比如,“第XX集團(tuán)軍XX合成旅XX營(yíng)XX連XX排XX班”中,涉及6個(gè)實(shí)體的組合情況,較大的長(zhǎng)度和可能的組合關(guān)系增加了實(shí)體識(shí)別的難度,這類部隊(duì)編制名稱、作戰(zhàn)編成等實(shí)體中存在的組合嵌套現(xiàn)象,在通用領(lǐng)域中較少出現(xiàn);同時(shí),由于專業(yè)特點(diǎn)導(dǎo)致不同軍兵種的軍事文書表述不一,陸軍的作戰(zhàn)編成一般使用部隊(duì)編制實(shí)體的組合進(jìn)行表述,如“XX營(yíng)XX連(欠XX排)”等,而海軍和空軍則常使用“編制+武器裝備+艦名/數(shù)量”的形式進(jìn)行表述,如“XX隊(duì)XX型驅(qū)逐(護(hù)衛(wèi))艦XX號(hào)”和“XX隊(duì)‘殲十’飛機(jī)XX架”,這就需要模型能同時(shí)識(shí)別不同組合類型的數(shù)據(jù)元素,對(duì)模型的泛化能力提出了更高要求。此外,有監(jiān)督學(xué)習(xí)需要大規(guī)模的標(biāo)注語(yǔ)料作為支撐,以此學(xué)到更準(zhǔn)確的特征分布,而人工標(biāo)注成本高、耗時(shí)長(zhǎng),因此,在研究過程中更多通過自行標(biāo)注的小規(guī)模樣本集進(jìn)行機(jī)器學(xué)習(xí)模型的訓(xùn)練,這也從另一個(gè)方面限制了模型的識(shí)別效果??梢?軍事文本的大量命名實(shí)體識(shí)別任務(wù)存在著特殊性,這些特殊性為軍事命名實(shí)體識(shí)別造成了困難。
本文參照大部分命名實(shí)體識(shí)別方法,將軍事命名實(shí)體識(shí)別任務(wù)作為序列標(biāo)注問題進(jìn)行研究。圖1所示為基于自注意力機(jī)制的軍事命名實(shí)體識(shí)別模型。整體分為4個(gè)部分:1)利用卷積神經(jīng)網(wǎng)絡(luò)提取字符級(jí)特征;2)采用雙向長(zhǎng)短期記憶網(wǎng)絡(luò)提取上下文特征;3)加入自注意力機(jī)制豐富文本內(nèi)部特征;4)使用條件隨機(jī)場(chǎng)線性層進(jìn)行解碼。
圖1 基于自注意力機(jī)制的軍事命名實(shí)體識(shí)別模型
標(biāo)注方法選擇中[4],為了更好地表達(dá)實(shí)體邊界信息,本文采用“BIOES”策略進(jìn)行手工標(biāo)注。其中,B表示實(shí)體的開始,I表示實(shí)體內(nèi)部,E表示實(shí)體結(jié)尾,O表示非實(shí)體部分,S表示該詞可獨(dú)立成為一個(gè)實(shí)體。本文將位置、部隊(duì)、人員、物品、數(shù)量五大類細(xì)分為13個(gè)小類進(jìn)行標(biāo)注,具體方法如表1所示。
表1 實(shí)體類別及標(biāo)注方法
注:非實(shí)體類用“O”標(biāo)注。
為了更好地表達(dá)文本內(nèi)部特征,發(fā)揮注意力機(jī)制的作用,本文以字向量和詞向量進(jìn)行拼接作為輸入。圖2為字符級(jí)向量模型。首先,將詞中的每個(gè)字進(jìn)行字符向量轉(zhuǎn)換,由于詞的長(zhǎng)度不同導(dǎo)致字符級(jí)矩陣大小不一,以語(yǔ)料中最長(zhǎng)的詞為基準(zhǔn),在單詞的左右兩端分別補(bǔ)充占位符,從而得到大小一致的字符級(jí)矩陣。最終,將該矩陣送入卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)通過反向傳播進(jìn)行更新,經(jīng)過卷積層和池化層得到字符級(jí)的特征向量。
圖2 字符級(jí)CNN模型
中文分詞采用中科院的ICTCLAS工具進(jìn)行處理,詞向量和字符向量則使用Google開源的Word2vec工具進(jìn)行訓(xùn)練得到。在訓(xùn)練向量的過程中,本文選用Word2vec工具中的Skip-gram模型,詞一級(jí)窗口設(shè)置為3,字符級(jí)設(shè)置為5,向量維度均為200。在嵌入時(shí),輸入向量由該字符向量與所在詞向量拼接得到,若出現(xiàn)向量表中不存在的字或詞,則賦予一個(gè)隨機(jī)向量。
長(zhǎng)短期記憶模型(LSTM)[5]是一種改進(jìn)的遞歸神經(jīng)網(wǎng)絡(luò)(RNN)模型[6],通過輸入、輸出和遺忘三個(gè)門來控制上下文信息的選擇,克服了傳統(tǒng)RNN的梯度消失和梯度爆炸的問題。公式(1)為L(zhǎng)STM網(wǎng)絡(luò)的形式化表示。
ht=ot?tanh(ct)
(1)
圖3 BLSTM模型結(jié)構(gòu)
注意力機(jī)制模仿人的認(rèn)知方式,可將有限的信息處理能力進(jìn)行選擇分配。直觀來看,就是通過一定的選擇機(jī)制將注意力集中在關(guān)鍵的信息上。通過融入注意力機(jī)制,可以更好地關(guān)注到對(duì)模型訓(xùn)練有效的關(guān)鍵信息上,并忽略同一時(shí)刻得到的非重要信息,從而有效地提升軍事命名實(shí)體識(shí)別的準(zhǔn)確率。
自注意力(Self-Attention)機(jī)制[7]是在注意力機(jī)制基礎(chǔ)上的改進(jìn)模型,主要包括查詢(Query)、鍵(Key)和值(Value)三個(gè)要素,其可理解為從Query到一系列Key-Value對(duì)的映射。如果{X1,X2,X3}為輸入序列,那么自注意力機(jī)制就是尋找序列內(nèi)部的聯(lián)系,即attention(X1,X2,X3)。
本文使用點(diǎn)乘注意力(Scaled Dot-product Attention)函數(shù),先通過Query和Key中每個(gè)詞向量的點(diǎn)乘運(yùn)算來得到每?jī)蓚€(gè)詞之間的相關(guān)性,再利用softmax進(jìn)行歸一化處理,最后對(duì)Value進(jìn)行加權(quán)求和。
(2)
考慮到自建的軍事文本語(yǔ)料規(guī)模較小,使用單個(gè)注意力機(jī)制效果弱,本文使用多頭注意力(Multi-head Attention)機(jī)制從多角度、多層次進(jìn)行文本特征提取,以使得文本特征的表達(dá)更加豐富[8-11]。
多頭注意力機(jī)制是將Q、K、V分別通過參數(shù)矩陣進(jìn)行映射后,再進(jìn)行點(diǎn)乘注意力的計(jì)算,將該過程重復(fù)h次后進(jìn)行拼接,得到最終的特征信息,其計(jì)算公式如下:
headi=attention(Q′,K′,V′)
(3)
(4)
mulhead=concat(head1,…,headh)
(5)
條件隨機(jī)場(chǎng)(CRF)可以在給定輸入觀測(cè)序列的前提下,輸出最大概率的預(yù)測(cè)序列,使用CRF線性層可以有效解決Self-Attention層輸出時(shí)的錯(cuò)誤標(biāo)注情況。
若矩陣P表示Self-Attention層輸出,其中n為序列長(zhǎng)度,k表示不同的標(biāo)簽個(gè)數(shù),那么,Pi,j即表示矩陣中第i行第j列的概率,對(duì)于給定序列X和預(yù)測(cè)標(biāo)注序列Y,該模型可定義為
(6)
其中,A是轉(zhuǎn)移矩陣,若Aij表示由標(biāo)簽i到j(luò)的概率,則y0,yn即為句子開始和結(jié)束的標(biāo)記。而后通過一個(gè)softmax層得到標(biāo)簽序列Y的概率
(7)
訓(xùn)練的最終目的是使正確標(biāo)注的序列概率最大,因此,將概率最大的一組序列作為預(yù)測(cè)序列作為輸出
(8)
本文收集作戰(zhàn)文書、方案計(jì)劃、新浪網(wǎng)軍事新聞等共300余篇軍事文本,手工標(biāo)注構(gòu)建了小規(guī)模樣本集,共計(jì)1121句、73523字;選擇其中900句作為訓(xùn)練集,其余221句作為測(cè)試集,進(jìn)行開放測(cè)試。實(shí)驗(yàn)通過召回率R、精確率P和F值三個(gè)指標(biāo)進(jìn)行評(píng)測(cè),計(jì)算方法如下:
(9)
(10)
(11)
本文采用Tensorflow-1.7.0框架,使用Python實(shí)現(xiàn)模型的構(gòu)建和訓(xùn)練,模型參數(shù)的具體設(shè)置如表2所示。
表2 超參數(shù)初始化
在上述實(shí)驗(yàn)樣本集和參數(shù)設(shè)置基礎(chǔ)上,設(shè)置4個(gè)模型進(jìn)行對(duì)比實(shí)驗(yàn),表3所示為不同模型的對(duì)比實(shí)驗(yàn)結(jié)果。
表3 各模型對(duì)比實(shí)驗(yàn)結(jié)果
為了驗(yàn)證BLSTM模型的有效性,首先進(jìn)行了LSTM-CRF與BLSTM-CRF的對(duì)比實(shí)驗(yàn),結(jié)果表明,在軍事命名實(shí)體識(shí)別任務(wù)中,BLSTM模型的精確率、召回率和F值分別為89.01%、87.24%和88.12%,對(duì)比LSTM模型分別高出了2.62%、1.59%、2.1%??梢?BLSTM由于能夠更好地利用上下文信息,效果要優(yōu)于單向LSTM網(wǎng)絡(luò)。
為了展現(xiàn)使用CNN提取字符級(jí)特征的有效性,以及CRF線性層的效果,設(shè)置了CNN-BLSTM-CRF 模型,其精確率、召回率、F值,相比BLSTM模型分別提高了2.1%、2.39%和2.24%。這是由于CRF模塊能夠通過聯(lián)合概率的計(jì)算,對(duì)相鄰標(biāo)簽的特征更加敏感,并且能夠減少不符合規(guī)則的標(biāo)注錯(cuò)誤。比如,部隊(duì)機(jī)構(gòu)中的編制實(shí)體往往因長(zhǎng)度較大且組合嵌套,對(duì)實(shí)體類型的識(shí)別造成影響。增加CNN和CRF模塊后的模型能夠提高對(duì)該類實(shí)體的識(shí)別正確率。同時(shí),為了使詞向量能夠包含更多的特征,本文在使用CNN提取字符級(jí)向量同時(shí),還加入了詞性向量作為外部特征。
本文在模型4中加入了自注意力機(jī)制,即表3中的CNN-BLSTM-ATT-CRF模型,其精確率、召回率、F值分別達(dá)到了92.64%、91.97%和92.30%。相較實(shí)驗(yàn)3中未包含Self-Attention層的模型分別提高了1.53%、2.34%和2.06%。可以看到,自注意力機(jī)制的引入提升了模型性能,表明了多頭注意力機(jī)制能在多個(gè)不同子空間捕獲上下文信息,從而獲取更豐富的文本內(nèi)部特征信息。
為了研究自注意力機(jī)制對(duì)長(zhǎng)期依賴學(xué)習(xí)的貢獻(xiàn),本文根據(jù)不同長(zhǎng)度句子對(duì)識(shí)別率的影響進(jìn)行了統(tǒng)計(jì),進(jìn)一步對(duì)未引入Self-Attention的模型3和引入Self-Attention的模型4進(jìn)行對(duì)比分析。表4為CNN-BLSTM-CRF與CNN-BLSTM-ATT-CRF的對(duì)比結(jié)果。由表4可見,隨著句子長(zhǎng)度的增加,模型3和模型4的F值均有不同程度的下滑,這說明了對(duì)長(zhǎng)期依賴關(guān)系的學(xué)習(xí)始終是一個(gè)巨大的挑戰(zhàn)。
表4 模型3和模型4在不同句長(zhǎng)區(qū)間的F值
通過實(shí)驗(yàn)對(duì)比不難發(fā)現(xiàn),模型4在實(shí)驗(yàn)中的表現(xiàn)更為出色,隨著句長(zhǎng)增加,F值下降較為緩慢,這是由于自注意力機(jī)制能夠在句子內(nèi)部的任意標(biāo)記之間建立聯(lián)系,從而減小了長(zhǎng)句子對(duì)序列標(biāo)注的影響。
本文針對(duì)軍事命名實(shí)體識(shí)別任務(wù)的特點(diǎn),提出了一種基于自注意力機(jī)制的軍事命名實(shí)體識(shí)別方法,以LSTM為基線模型,分別對(duì)雙向LSTM模型、CRF線性層、CNN提取字符級(jí)特征和自注意力機(jī)制4種不同模型,在自建數(shù)據(jù)集上進(jìn)行了對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明了引入自注意力機(jī)制的有效性,特別是學(xué)習(xí)長(zhǎng)距離依賴關(guān)系的表現(xiàn)更好,最終系統(tǒng)識(shí)別軍事命名實(shí)體的精確率、召回率和F值分別達(dá)到92.64%、91.97%和92.30%。