連堯,馮俊池,丁皓
(軍事科學院系統工程研究院后勤科學與技術研究所,北京 100071)
隨著軍事科技的迅速發展和軍事科技文本數據的不斷積累,實現軍事科技領域信息的自動抽取,有助于獲取高價值知識與情報以及掌握國內外軍事科學技術發展態勢,更好為我國國防建設服務。命名實體識別用于識別出文本大數據中的技術、實體及其發展、應用等信息,是軍事科技領域信息抽取任務的關鍵和基礎。通用領域命名實體識別對象主要為人名、地名和組織機構名稱等,且現有語料庫大多面向通用領域。針對軍事科技領域技術實體的特點,該文構建了軍事科技領域語料庫,通過預訓練掩碼語言模型和對抗遷移學習進行領域適配和任務適配,并采用自注意力機制和虛擬對抗訓練提高模型的魯棒性,提升了軍事科技領域數據命名實體識別效果。
國防大數據是指保衛國家主權、領土完整和安全而開展的軍事活動所生成的數據資源以及與軍事有關的政治、經濟、科技、外交、教育等方面的活動所生成的數據資源,是大數據技術及其支撐下的應用系統的總稱[1]。國防大數據中產生的軍事科技相關文本數據中,技術與實體及其相關信息所包含的內容與通用領域實體不同,其特點是通常比較長,可能同時包含多種詞性的義原,經常還存在多詞一義、一詞多義以及實體嵌套等問題,如“民兵-3”型洲際彈道導彈、“布拉莫斯”超音速巡航導彈、彈頭再入技術、有效載荷等。
隨著機器學習在自然語言處理(Natural Language Process,NLP)領域逐漸嶄露頭角,條件隨機場模型(Conditional Random Field,CRF)[2]被用來進行序列標注,并且取得了較好的效果。當前預訓練模型在常見的NLP 基礎任務中較傳統模型取得了顯著的進步,如BERT[3]、XLNET[4]等。預訓練模型通過海量數據進行無監督學習,并在具體的任務中進行微調,以獲得一個更加符合上下文語義的表征。
遷移學習是指利用舊知識來學習新知識,主要目標是將已經學會的知識快速地遷移到一個新的領域中[5]。近年來,深度遷移學習模型已經成為解決小樣本問題的重要方法。2014 年由Goodfellow 等人首次提出的生成對抗網絡模型(Generative Adversarial Network,GAN)啟發的對抗技術在多個小樣本學習數據集上取得了較好結果[6]。Ganin 等人提出了領域對抗神經網絡[7],Tzeng 等人提出了對抗領域自適應的通用框架[8],Zhang 等人提出了對抗網絡的領域自適應方法[9],Liu 等人將對抗遷移學習應用于中文分詞任務[10]。以上方法將對抗技術應用于深度遷移學習模型,利用判別模型和對抗損失,解決領域之間負遷移的問題。該文在雙向長短期記憶網絡結合條件隨機場BiLSTM-CRF(Bidirectional Long Short-Term Memory Network and Conditional Random Field)模型中加入對抗自適應,分別實現從中文分詞和通用命名實體識別任務到軍事科技命名實體識別任務的任務適配優化。
現在有很多利用預訓練的語言表征來完成下游自然語言處理任務的研究,其代表BERT模型在11個獨立的下游自然語言處理任務中刷新了最好成績[3],效果顯著。BERT采用新的預訓練目標函數,其中MLM方法是隨機遮蔽(Mask)輸入中的一些Tokens,然后在預訓練中對其進行預測,使學習到的表征能夠融合兩個方向上的文本信息。另外,為了使模型更適用于句子級別的任務,BERT 中還采用了一種稱之為“下一句預測”的目標函數,來使模型能更好地捕捉句子信息。BERT 較之前的Word2Vec[11]和Glove 等詞向量模型,對一詞多義等情形的表達更加準確,能充分描述字符級、詞級、句子級關系特征。因此,該文在設計模型時,均將BERT 作為模型的最底層進行字嵌入(Embedding)。
軍事科技領域的實體識別任務中,由于許多詞匯是軍事科技領域內的專有詞匯,因此需要對領域內語料進行定制訓練。通用領域的語料庫對提高實體識別的準確率有很好的幫助。軍事科技領域可能包含多個學科的細分領域,各個細分領域有自身特殊的實體命名規則。另外,實體識別注釋標準比較模糊,使同一實體在不同領域數據集上的標注結果也存在分歧,盡管這些異構的語料數據集可以互相幫助,但整個數據集仍然不夠大,還存在稀疏和不平衡的問題,無法提供足夠的語言知識。
針對軍事科技領域數據的上述特點,該文模型基于BERT設計,采用BiLSTM+CRF模型結構。將BERT層獲得的字向量表示通過BiLSTM 層提取訓練特征,再通過CRF層預測輸出標簽,標簽集為{B,M,E,O,S}。
第一層:BERT Embedding 層,使用的是基于預訓練模型BERT 字向量表示,進行句子特征的提取。實體識別任務本質屬于序列標注任務,由于BERT 訓練的過程中采用掩碼語言模型,所以BERT框架本身就非常適合用于序列標注任務。
第二層:雙向LSTM 特征提取層,將BERT 的字向量表示結果通過雙向LSTM 層提取特征。
t時刻BiLSTM 的輸出為:

其中,ht為BiLSTM 的輸出。
第三層:條件隨機場CRF 層,預測輸出序列的標簽,完成實體識別序列標注任務。
BiLSTM 的輸出通過全連接層獲得字級別的標簽概率預測,再接入CRF 層,利用預測標簽的轉移概率,進行句子級別的標簽預測,使得序列標注過程不再是對各個字單元獨立分類。在CRF 層中,標簽序列的概率形式化公式為:

這里y∈{B,M,E,S,O}作為標簽,是訓練參數,s(X,t)=為評分函數。
由于BERT 預訓練語言模型是在海量通用語料上預訓練得到的,所以針對領域內的實體識別任務,需要實現從通用向領域內的領域適配,即需要在領域語料數據上預訓練。對領域適配預訓練的算法采用MLM 掩碼語言模型,訓練語料是通過業務中的積累和專業網站上爬取兩種手段獲得的大量未標注領域的語料數據。
為了訓練深度雙向表征,BERT 采用一種直接方法,隨機遮蔽掉文本中的某些字詞,然后用模型預測被遮蔽的字詞,如圖1 所示。在這個過程中,對應于遮蔽詞塊的最終隱藏向量被反饋到輸出交叉熵(softmax)函數中,預測詞匯表中所有詞匯的概率。

圖1 掩碼語言模型
其中,被遮蔽掉的部分可以是直接隨機選擇的字Token,也可以是隨機選擇連續的能組成一個詞匯的全部字Token,后者稱為全詞遮蔽(Whole Word Masking,WWM)[12]。
由于在后續任務微調期間,模型從未看到被遮蔽的[M]詞塊,會產生創建預訓練和微調任務之間不適配的情況,因此從輸入中選取15%的單詞采取如下處理措施:
1)80%的幾率替換為[M](mask);
2)10%的幾率替換為一個隨機單詞;
3)10%的幾率保持不變。
通過這樣的設計,BERT 的Transformer 編碼器(Encoder)層被動保持了每個輸入詞塊的分布特征與語境表征。并且由于替換為隨機單詞的詞匯只有1.5%,所以不會損害BERT 的語言理解能力。
領域適配預訓練實驗中,采用全詞遮蔽方式,訓練數據是50 萬條未標注軍事科技領域的各類語料數據,在NVIDIA Tesla V100 32GB 8 顯卡GPU 服務器上,訓練10 輪,用時近70 h。
軍事科技領域的命名實體識別任務,較通用實體識別更為復雜困難,這主要表現為:1)漢語文本中沒有表示詞語邊界的分割符號,命名實體識別效果與文本分詞效果相互影響,而通用的分詞方法在軍事科技領域文本數據中效果會受領域知識的影響;2)通用實體識別任務的目的是識別文本中的事物名稱,如人名、地名、機構名。該文研究的是軍事科技領域文本數據,包括軍事科技領域科研項目文獻、各國軍事科技情報文獻、軍事科技專利技術文獻、軍事論文期刊類文獻、軍事科技實驗類文獻等。該文針對其中的武器裝備、組織機構、科學技術、性能指標、技術背景、專家學者及軍事術語七大類進行識別標注。
基于領域對抗自適應的遷移學習模型如圖2 所示。基于軍事科技領域命名實體識別任務的特點,分別為源任務域和目標任務域提供特定域的特征提取器BiLSTM,并建立一個共享特征提取器來學習獲取域無關特征,將共享特征提取器(共享BiLSTM)的輸出送入資源對抗鑒別器,通過對抗學習,減少負遷移。并且在訓練中使獲取源任務域數據與目標任務域數據的概率都等于50%,避免出現數據規模不均的問題。對抗鑒別器的作用是在源任務的特征中選擇有利于目標任務性能提高的特征,同時防止負遷移,即減少對目標任務沒有幫助的特征信息進入共享特征空間。訓練完成之后,對抗鑒別器趨于無法區分共享特征提取器中的特征表示是來自源任務域還是目標任務域,可認為共享特征都是能對目標任務提供幫助的特征。

圖2 基于領域對抗自適應的遷移學習模型
該文設計在BiLSTM 層后加入自注意力機制,捕獲兩個字符之間的長距離依賴關系并學習句子的內部結構信息。
1)共享與獨有特征提取BiLSTM
共享特征提取器:輸入為目標任務域和源任務域,提取任務共享的邊界信息,對于共享BiLSTM 的輸出與目標BiLSTM 的輸出,有:

2)自注意力層Self-attention
該文應用了多頭自注意力(Multi-head Selfattention)機制[13],獲取句子內部詞匯間的結構與關聯關系。
Self-attention 層的輸入是特征提取器BiLSTM 的輸出H=(h1,h2,h3…hn)。Q(Query)、K(Key)、V(Value)三個矩陣均來自H。首先計算得分,為Q與K的點乘:score=Q·K。為使梯度穩定,歸一化score,除以其中dk為一個Query 和Key 向量的維度。再通過交叉熵激活函數將其結果歸一化為概率分布并與V點乘,得到權重求和的表示。最終的輸出結果矩陣為:

利用自注意力機制的特性,在BiLSTM 抽取句子文本特征的基礎上,進一步獲取詞與詞之間的依賴關系與結構信息。
3)對抗任務域鑒別器
與生成對抗網絡類似,共享BiLSTM 屬于生成器,其后加入一個資源判別器,用于判斷生成器所生成的特征來自哪個任務域。通過讓資源判別器分辨不出特征出自哪個任務域,使共享BiLSTM 所抽取到的特征是任務之間的共有特征,減少了負遷移的影響。
通過最大池化(Max Pooling)層和交叉熵層識別特征來自哪個領域,可以表示為:

其中,S表示共享自注意力輸出的最大池化結果,θd表示任務鑒別器的參數,Wd和bd是可訓練參數。
通過引入對抗損失函數Ladv,如式(7)所示,防止源任務的特定信息進入共享空間。

其中,θs表示共享特征提取器可訓練參數,K是任務數,Es表示共享特征提取器,Tk是任務k訓練實例的數量,是任務k的第i個實例。
通過在領域鑒別器softmax 層與共享特征提取器(共享BiLSTM)之間,添加一個梯度反轉層(Gradient Reversal Layer,GRL),完成極小化極大算法優化。GRL 層在前向傳播過程中實現恒等變換;在反向傳播過程中,使域分類損失的梯度反向傳播到共享特征提取器的參數之前自動取反,進而實現了類似GAN 的對抗損失。使共享特征提取器產生的共享特征在訓練過程中趨向誤導領域鑒別器。相關數學表示如式(8)所示:

4)虛擬對抗訓練
虛擬對抗訓練(Virtual Adversarial Training,VAT)[14]是針對具有給定條件的標簽分布p(y|x)的數據,度量此分布局部光滑性的一種方法。將條件標簽概率約束成光滑的,進行正則化,在輸入x變化很小的情況下,輸出p(y|x)也很小。滿足光滑,表示對抗樣本相比于原樣本變化很小,標簽也不會有太大變化。VAT 通過迭代求解,迭代過程中其損失函數如下:

其中,輸入x、y為預測的輸出標簽并不是實際標簽,p(y|x,θ)是輸出分布,θ是模型參數,迭代過程中是上一步的p(y|x,θ),D是非負度量函數交叉熵,用于量化分布之間的距離。rqadv是對抗的擾動,也就是VAT 一方面需要找出對模型影響最大的擾動量,另一方面要盡量減小這個擾動量對模型的影響。VAT 通過迭代近似計算,執行梯度下降,更新模型參數。
VAT 在對抗訓練時不需要標簽信息,所以可以應用于無監督學習,文中應用VAT 提高模型的魯棒性。
目標任務的CRF 損失函數為:

源任務域的CRF 損失函數為:

模型最終的損失函數為:

其中,Dtarget代表目標任務域,Dsource代表源任務域,x是模型的輸入,λ是超參。
為了解決資源數據不平衡的問題,在訓練的過程中,以同樣概率從源任務域與目標任務域中獲取訓練數據。最后利用Adam優化算法來進行損失函數的優化。
為了評估模型在軍事科技領域命名實體識別任務的效果,在表1 所示的4 個數據集上進行了實驗,包括1 839 條有6 種標注類別的軍事科技領域內命名實體識別數據集(DomainNER)作為目標任務數據,以8∶1∶1 的比例建立訓練集、驗證集、測試集;SIGHAN2006NER 數據集(SighanNER,Levow,2006)作為源任務數據;MSR 數據集(from SIGHAN2005)[15]作為對比實驗用的源中文分詞(CWS)任務數據;業務中積累的無標注數據以及國防科技信息網(www.dsti.net)與簡氏防務中文網爬取的領域無標注數據共50 余萬條,作為領域適配語料。

表1 數據集統計
以DomainNER 的準確率(P)、召回率(R)、F1 值作為實驗對比分析內容。
首先使用BMESO 格式預處理DomainNER 數據,訓練過程中采用五折交叉驗證,分別按照損失(loss)和F1 保存模型,共10 個模型,最大訓練輪數(epoch)為27 輪,訓練過程會根據損失提前停止。(基線模型(Baseline)是將哈工大BERT-wwm-ext[16]不進行微調獲得的字嵌入輸入到BiLSTM+CRF 模型獲得的結果)。所有的LSTM 隱藏層神經元個數為128,丟棄法超參數取0.1。如前文所述,領域適配預訓練實驗中,以哈工大BERT-wwm-ext 預訓練模型為基礎,掩碼語言模型MLM 同樣采用WWM 的方式,在NVIDIA Tesla V100 32GB 8顯卡GPU服務器上,對50余萬條領域適配語料進行訓練。訓練10 輪,用時近70 h。
表2 和表3 展示了該文介紹的模型和基線模型在目標領域和目標任務DomainNER(NER1)上的實驗結果,源任務分別為通用領域命名實體識別任務NER2和通用領域中文分詞任務CWS,每個實驗模型的說明如下:

表2 實驗結果(未使用遷移學習)

表3 實驗結果(使用遷移學習)
BiLSTM+CRF:輸入是目標任務域數據通過固定參數的BERT-wwm-ext Embedding結果;
MLM+BiLSTM+CRF:使用掩碼語言模型MLM對BERT-wwm-ext 在目標領域數據上進行微調,完成領域適配;
MLM+BiLSTM+CRF+task-transfer:在BiLSTM+CRF 模型上,進行從源任務域NER2到目標任務域NER1的遷移學習,沒有計算對抗學習損失;
MLM+BiLSTM+CRF+adversarial:與MLM +BiLSTM+CRF+task-transfer模型相比,加入了對抗學習部分,優化了基于領域對抗自適應的遷移學習模型;
MLM+BiLSTM+CRF+adversarial+VAT:在對抗遷移學習模型的基礎上,加入了虛擬對抗訓練VAT。
從實驗結果可總結出以下結論。
領域適配的效果:使用MLM 對BERT-wwm-ext進行微調之后,F1 值有了0.23%的提升。BERTwwm-ext 本身是采用WWM 方式進行的預訓練,訓練數據覆蓋面非常廣,因此提升效果不大;
任務適配遷移學習的效果:MLM+BiLSTM+CRF+task-transfer 模型的F1值從MLM+BiLSTM+CRF 的76.84%提升到了78.92%與79.70%,對不同源任務數據的提升分別是2.08%與2.86%,效果明顯;
對抗訓練的效果:對比MLM+BiLSTM+CRF+tasktransfer 模型,加入對抗訓練模塊以后,對不同源任務數據,F1值的提升分別是0.73%與0.48%。證明了在目標域上,對抗訓練可以阻止源任務的私有特征進入共享BiLSTM中產生噪聲,即對抗訓練有效阻止了負遷移;
虛擬對抗訓練的效果:虛擬對抗訓練由于VAT的加入,使F1 值分別提升了0.40%與0.97%,證明其可以提高模型的魯棒性;
源任務的影響:通過多輪對比,一般情況下,語義信息更豐富的中文分詞任務CWS 比僅有三個實體類別的通用命名實體識別任務NER2對模型預測結果的提升更大。
實驗表明,該文介紹的用于領域適配的MLM 模型與用于任務適配的對抗遷移學習框架對軍事科技領域命名實體識別任務相較基線模型,有明顯的提升,使F1 值從76.61%提升到81.15%。同時,實驗也表明,中文分詞的詞匯邊界信息等特征對于命名實體識別任務非常重要。
該文針對軍事科技領域文本數據的特點,將領域適配與任務適配的方法應用到軍事科技領域的命名實體識別任務中,提出了基于掩碼語言模型的領域適配方法和基于對抗遷移學習的任務適配方法。應用對抗遷移學習,既可以將源任務的詞匯邊界信息等特征共享給目標任務,又可以阻止源任務的負遷移特征產生噪聲。方法中使用自注意力機制獲取句子內部詞匯間的結構與關聯關系,使用虛擬對抗訓練提高模型的魯棒性。實驗表明,文中方法所生成模型在軍事科技領域命名實體識別任務上有較明顯的提升效果;使用不同通用領域的源任務測試其對目標任務結果的影響,發現當語義信息更豐富的分詞任務作為遷移學習的源任務時,對目標任務的提升更大。