薛亮 周游
(中國人民解放軍91977部隊 北京100000)
在軍事活動中,全面、準確掌握信息,并對信息進行準確快速的分析非常重要。本文基于艦船知識圖譜,采用知識圖譜技術實現艦船信息分析識別。知識圖譜技術作為新興的信息識別分析技術,有助于用戶快速準確獲得知識。
根據面向的知識領域不同,基于知識圖譜的信息分析識別系統分為面向開放領域的信息分析識別系統[1~3]和面向特定領域的信息分析識別系統。面向特定領域的信息分析識別系統擁有更加深入和準確的領域知識,適用于特定領域的問題,相較于普適性的面向開放領域的信息分析識別系統更具有研究意義和實用性。本文將艦船領域作為所研究的特定領域,基于艦船知識圖譜,對信息分析識別技術[4]進行研究,實現自動化軍事信息系統,幫助艦員快速獲取艦船相關信息。信息識別分析常用的方法有基于語義解析的方法(Semantic Pars?ing-based methods)[5~9]和基于信息檢索的方法(In?formation retrieve-based methods)[10~14],當前主流的處理方法是將過程分為命名實體識別、屬性映射和答案選擇三個步驟。命名實體識別找出自然語句中的命名實體,屬性映射找到問句詢問的屬性,答案選擇結合前兩步的結果查詢知識圖譜獲得問句答案。命名實體識別和屬性映射的結果決定了答案選擇的結果,故提高命名實體識別和屬性映射準確率是知識庫問答的主要研究點。
命名實體識別問題的經典模型為CRF模型,屬性映射問題可以轉化為相似度計算問題,經典模型為Siamese網絡,本文為這兩個經典模型分別引入BERT[15]+Bi-LSTM[16]機制,以期對兩個模型的正確率有所提高,進而提升信息識別分析系統的效果。
本文主要對信息識別分析系統的命名實體識別和屬性映射模型進行研究,以下對這兩個模型進行介紹。
信息識別分析的命名實體識別任務是指將自然語言問句中的主要命名實體識別出來,以作為在知識庫中進行搜索的實體。實體識別任務往往被轉化為序列標注任務。中文自然語言處理的基本單位一般是經過分詞后的中文詞語或者漢字字符。為了避免分詞結果對后續結果產生影響,本文不對問句進行分詞處理,直接將漢字字符作為輸入。
命名實體識別任務是指對于中文句子X={x1,x2,…,xt},訓練一個模型,由該模型判斷X中每個中文字符對應的標簽,得到標簽序列Y={y1,y2,…,yt}。
命名實體識別任務的經典模型是CRF模型,本文在經典模型的基礎上引入BERT+Bi-LSTM機制,對其進行改進。具體模型如圖1所示,由BERT特征表示層、Bi-LSTM層和CRF層組成。

圖1 命名實體識別模型
特征表示層使用BERT模型在大規模語料上進行預訓練,得到漢字在多維空間的映射。Bi-LSTM層利用本身的優勢,捕獲語句的上下文信息,為字向量加入更多信息。CRF層對序列進行標注,利用相鄰標簽之間的影響,在句子程度上最優化句子中每個字的標簽。
對于預測的標簽序列y={ y1,y2,…,yt},CRF模型對其進行評分。評分依據是Bi-LSTM層的輸出和標簽間的狀態轉移概率。評分函數為

其中,矩陣P取決于Bi-LSTM層的輸出,矩陣A是由標簽間的狀態轉移概率組成的矩陣,Ai,j代表標簽i轉移到標簽j的概率。
輸入為x時的正確標簽序列y的條件概率用softmax函數計算:

其中,yx是對應輸入x的所有可能的標簽序列組合。
模型訓練時,優化函數采用最大化似然函數:

模型在預測最優標簽序列采用Viterbi算法:

信息識別分析的屬性映射任務是指從候選屬性集中選取出與不包含命名實體的問句匹配度最高的屬性。屬性映射任務最主要的問題是自然語言與屬性之間的語義鴻溝。如何找到與自然語言最匹配的屬性是該任務的關鍵。目前的主流解決方法是計算問句和屬性之間的相似度。這種解決方法使屬性映射任務最核心的研究內容轉變成問句和屬性的向量表征和向量之間的相似度計算。
向量相似度計算問題較為有效的模型是Sia?mese網絡。本文在此模型上添加BERT、Bi-LSTM,以期使問句和屬性的向量表征更加準確,包含更多語義信息。具體模型如圖2所示,由BERT特征表示層、Bi-LSTM層和CRF層組成。

圖2 屬性映射模型
候選屬性集由問句中實體相關的所有屬性組成,對應問句中詢問的內容,與命名實體無關,因此在對問句做特征表示時不包含命名實體部分。BERT表征和Bi-LSTM編碼過程與命名實體識別模型類似,不做贅述。相似度計算的輸入為經過BERT和Bi-LSTM處理后得到的問句語義向量和屬性語義向量,對二者進行余弦相似度計算,衡量其相似度。余弦相似度計算公式如下:

實驗選用艦船領域知識圖譜作為知識庫,其中包含219個實體,34個屬性以及4501個三元組。知識庫三元組的形式為<實體,屬性,屬性值>。圖3展示了艦船領域知識圖譜的部分數據。

圖3 局部艦船知識圖譜
將每個三元組改寫成一個問句,其頭實體為問句中的命名實體,屬性為問句的屬性,尾實體為問題的答案。對問題進行BIO實體標注。完成實體標注的問句作為命名實體識別的實驗數據。在實體識別數據集上,將問句中標注為命名實體的部分刪除,即可得到問句的屬性。將去除掉命名實體的問句作為屬性映射的實驗數據。以9∶1的比例將問句分為訓練集和測試集。
本文選取命名實體識別和屬性映射部分得分最高的候選項作為預測結果。對某一個特定問題,預測一個命名實體和一個屬性,進而通過在知識庫中查詢命名實體和屬性得到問題的唯一答案。模型是否有效,取決于模型得到的答案與問題實際答案是否相符。若相符,則模型預測正確,否則預測不正確。因此,對于本文模型的效果評估采用準確率作為指標。命名實體識別、屬性映射和最終答案預測都有各自的準確率。根據這三個準確率可以完成對模型的評估。準確率計算公式為

命名實體識別對比模型如下。
1)CNN+CRF:Collobert等[14]提出的模型,該模型采用CNN獲取語義信息,CRF進行標簽預測。
2)Bi-LSTM+CRF:Lample等[15]提出的模型,該模型基于Bi-LSTM和CRF完成實體識別任務。
3)Bi-LSTM+CNN:Chiu等[16]提出的模型,該將字符級別的特征和詞級別的特征通過CNN結合,然后基于結合后的特征,運用雙向LSTM進行命名實體識別。
4)CNN+CNN+LSTM:Shen等[17]提出的模型,該模型對字符和單詞進行卷積編碼,對編碼后的特征利用LSTM進行標簽解碼。
5)BERT+Bi-LSTM+CRF:本文提出的模型,本模型基于BERT預訓練字向量進行文本向量表征,利用Bi-LSTM和CRF進行命名實體識別。
屬性映射對比模型如下:
1)Word2Vec+Bi-LSTM:使用Word2Vec模型訓練詞向量,使用Bi-LSTM獲取文本高級特征。
2)Siamese+Word2Vec+Bi-LSTM:使用Word2Vec模型訓練詞向量,使用Bi-LSTM獲取文本高級特征,使用Siamese結構獲取特征相似性。
3)BERT+Bi-LSTM:使用BERT訓練字向量,使用Bi-LSTM獲取文本高級特征。
4)Siamese+BERT+Bi-LSTM:本文采用的模型,使用BERT訓練字向量,使用Bi-LSTM獲取文本高級特征,使用Siamese結構獲取特征相似性。
實驗結果如表1、表2所示。

表1 命名實體識別準確率
本文提出的命名實體識別模型在訓練集和測試集上分別取得了91.58%和90.24%的準確率,優于其他對比模型;屬性映射模型在訓練集和測試集上分別取得了89.65%和87.36%的成績,同樣優于其他對比模型。由對比試驗結果可知,對自然語言進行向量表征時引入BERT和Bi-LSTN有利于獲取更多語義信息,更好地構建多維向量。
信息分析識別系統最終在命名實體識別和屬性映射的基礎上進行答案選擇。將命名實體識別的結果作為頭實體,屬性映射的結果作為屬性,查詢知識圖譜得到尾實體,將尾實體作為問句的最終答案。將尾實體與標準答案進行對比,得到正確率為78.93%。最終答案選擇的準確率遠低于命名實體識別和屬性映射各自的準確率,原因是前兩步的結果共同決定了最終答案,需要兩步均得到正確結果的最終結果才是正確的,錯誤累加會使準確率進一步降低。
本文對基于艦船知識圖譜的艦船信息分析識別技術進行了研究,提出了基于BERT+Bi-LSTM+CRF的命名實體識別技術和基于Siamese+BERT+Bi-LSTM的屬性映射技術的信息分析識別模型。在艦船領域知識圖譜上進行的仿真實驗表明,本文提出的模型可以達到較高的準確率。