連堯,馮俊池,丁皓
(軍事科學(xué)院系統(tǒng)工程研究院后勤科學(xué)與技術(shù)研究所,北京 100071)
隨著軍事科技的迅速發(fā)展和軍事科技文本數(shù)據(jù)的不斷積累,實現(xiàn)軍事科技領(lǐng)域信息的自動抽取,有助于獲取高價值知識與情報以及掌握國內(nèi)外軍事科學(xué)技術(shù)發(fā)展態(tài)勢,更好為我國國防建設(shè)服務(wù)。命名實體識別用于識別出文本大數(shù)據(jù)中的技術(shù)、實體及其發(fā)展、應(yīng)用等信息,是軍事科技領(lǐng)域信息抽取任務(wù)的關(guān)鍵和基礎(chǔ)。通用領(lǐng)域命名實體識別對象主要為人名、地名和組織機構(gòu)名稱等,且現(xiàn)有語料庫大多面向通用領(lǐng)域。針對軍事科技領(lǐng)域技術(shù)實體的特點,該文構(gòu)建了軍事科技領(lǐng)域語料庫,通過預(yù)訓(xùn)練掩碼語言模型和對抗遷移學(xué)習(xí)進行領(lǐng)域適配和任務(wù)適配,并采用自注意力機制和虛擬對抗訓(xùn)練提高模型的魯棒性,提升了軍事科技領(lǐng)域數(shù)據(jù)命名實體識別效果。
國防大數(shù)據(jù)是指保衛(wèi)國家主權(quán)、領(lǐng)土完整和安全而開展的軍事活動所生成的數(shù)據(jù)資源以及與軍事有關(guān)的政治、經(jīng)濟、科技、外交、教育等方面的活動所生成的數(shù)據(jù)資源,是大數(shù)據(jù)技術(shù)及其支撐下的應(yīng)用系統(tǒng)的總稱[1]。國防大數(shù)據(jù)中產(chǎn)生的軍事科技相關(guān)文本數(shù)據(jù)中,技術(shù)與實體及其相關(guān)信息所包含的內(nèi)容與通用領(lǐng)域?qū)嶓w不同,其特點是通常比較長,可能同時包含多種詞性的義原,經(jīng)常還存在多詞一義、一詞多義以及實體嵌套等問題,如“民兵-3”型洲際彈道導(dǎo)彈、“布拉莫斯”超音速巡航導(dǎo)彈、彈頭再入技術(shù)、有效載荷等。
隨著機器學(xué)習(xí)在自然語言處理(Natural Language Process,NLP)領(lǐng)域逐漸嶄露頭角,條件隨機場模型(Conditional Random Field,CRF)[2]被用來進行序列標注,并且取得了較好的效果。當前預(yù)訓(xùn)練模型在常見的NLP 基礎(chǔ)任務(wù)中較傳統(tǒng)模型取得了顯著的進步,如BERT[3]、XLNET[4]等。預(yù)訓(xùn)練模型通過海量數(shù)據(jù)進行無監(jiān)督學(xué)習(xí),并在具體的任務(wù)中進行微調(diào),以獲得一個更加符合上下文語義的表征。
遷移學(xué)習(xí)是指利用舊知識來學(xué)習(xí)新知識,主要目標是將已經(jīng)學(xué)會的知識快速地遷移到一個新的領(lǐng)域中[5]。近年來,深度遷移學(xué)習(xí)模型已經(jīng)成為解決小樣本問題的重要方法。2014 年由Goodfellow 等人首次提出的生成對抗網(wǎng)絡(luò)模型(Generative Adversarial Network,GAN)啟發(fā)的對抗技術(shù)在多個小樣本學(xué)習(xí)數(shù)據(jù)集上取得了較好結(jié)果[6]。Ganin 等人提出了領(lǐng)域?qū)股窠?jīng)網(wǎng)絡(luò)[7],Tzeng 等人提出了對抗領(lǐng)域自適應(yīng)的通用框架[8],Zhang 等人提出了對抗網(wǎng)絡(luò)的領(lǐng)域自適應(yīng)方法[9],Liu 等人將對抗遷移學(xué)習(xí)應(yīng)用于中文分詞任務(wù)[10]。以上方法將對抗技術(shù)應(yīng)用于深度遷移學(xué)習(xí)模型,利用判別模型和對抗損失,解決領(lǐng)域之間負遷移的問題。該文在雙向長短期記憶網(wǎng)絡(luò)結(jié)合條件隨機場BiLSTM-CRF(Bidirectional Long Short-Term Memory Network and Conditional Random Field)模型中加入對抗自適應(yīng),分別實現(xiàn)從中文分詞和通用命名實體識別任務(wù)到軍事科技命名實體識別任務(wù)的任務(wù)適配優(yōu)化。
現(xiàn)在有很多利用預(yù)訓(xùn)練的語言表征來完成下游自然語言處理任務(wù)的研究,其代表BERT模型在11個獨立的下游自然語言處理任務(wù)中刷新了最好成績[3],效果顯著。BERT采用新的預(yù)訓(xùn)練目標函數(shù),其中MLM方法是隨機遮蔽(Mask)輸入中的一些Tokens,然后在預(yù)訓(xùn)練中對其進行預(yù)測,使學(xué)習(xí)到的表征能夠融合兩個方向上的文本信息。另外,為了使模型更適用于句子級別的任務(wù),BERT 中還采用了一種稱之為“下一句預(yù)測”的目標函數(shù),來使模型能更好地捕捉句子信息。BERT 較之前的Word2Vec[11]和Glove 等詞向量模型,對一詞多義等情形的表達更加準確,能充分描述字符級、詞級、句子級關(guān)系特征。因此,該文在設(shè)計模型時,均將BERT 作為模型的最底層進行字嵌入(Embedding)。
軍事科技領(lǐng)域的實體識別任務(wù)中,由于許多詞匯是軍事科技領(lǐng)域內(nèi)的專有詞匯,因此需要對領(lǐng)域內(nèi)語料進行定制訓(xùn)練。通用領(lǐng)域的語料庫對提高實體識別的準確率有很好的幫助。軍事科技領(lǐng)域可能包含多個學(xué)科的細分領(lǐng)域,各個細分領(lǐng)域有自身特殊的實體命名規(guī)則。另外,實體識別注釋標準比較模糊,使同一實體在不同領(lǐng)域數(shù)據(jù)集上的標注結(jié)果也存在分歧,盡管這些異構(gòu)的語料數(shù)據(jù)集可以互相幫助,但整個數(shù)據(jù)集仍然不夠大,還存在稀疏和不平衡的問題,無法提供足夠的語言知識。
針對軍事科技領(lǐng)域數(shù)據(jù)的上述特點,該文模型基于BERT設(shè)計,采用BiLSTM+CRF模型結(jié)構(gòu)。將BERT層獲得的字向量表示通過BiLSTM 層提取訓(xùn)練特征,再通過CRF層預(yù)測輸出標簽,標簽集為{B,M,E,O,S}。
第一層:BERT Embedding 層,使用的是基于預(yù)訓(xùn)練模型BERT 字向量表示,進行句子特征的提取。實體識別任務(wù)本質(zhì)屬于序列標注任務(wù),由于BERT 訓(xùn)練的過程中采用掩碼語言模型,所以BERT框架本身就非常適合用于序列標注任務(wù)。
第二層:雙向LSTM 特征提取層,將BERT 的字向量表示結(jié)果通過雙向LSTM 層提取特征。
t時刻BiLSTM 的輸出為:
其中,ht為BiLSTM 的輸出。
第三層:條件隨機場CRF 層,預(yù)測輸出序列的標簽,完成實體識別序列標注任務(wù)。
BiLSTM 的輸出通過全連接層獲得字級別的標簽概率預(yù)測,再接入CRF 層,利用預(yù)測標簽的轉(zhuǎn)移概率,進行句子級別的標簽預(yù)測,使得序列標注過程不再是對各個字單元獨立分類。在CRF 層中,標簽序列的概率形式化公式為:
這里y∈{B,M,E,S,O}作為標簽,是訓(xùn)練參數(shù),s(X,t)=為評分函數(shù)。
由于BERT 預(yù)訓(xùn)練語言模型是在海量通用語料上預(yù)訓(xùn)練得到的,所以針對領(lǐng)域內(nèi)的實體識別任務(wù),需要實現(xiàn)從通用向領(lǐng)域內(nèi)的領(lǐng)域適配,即需要在領(lǐng)域語料數(shù)據(jù)上預(yù)訓(xùn)練。對領(lǐng)域適配預(yù)訓(xùn)練的算法采用MLM 掩碼語言模型,訓(xùn)練語料是通過業(yè)務(wù)中的積累和專業(yè)網(wǎng)站上爬取兩種手段獲得的大量未標注領(lǐng)域的語料數(shù)據(jù)。
為了訓(xùn)練深度雙向表征,BERT 采用一種直接方法,隨機遮蔽掉文本中的某些字詞,然后用模型預(yù)測被遮蔽的字詞,如圖1 所示。在這個過程中,對應(yīng)于遮蔽詞塊的最終隱藏向量被反饋到輸出交叉熵(softmax)函數(shù)中,預(yù)測詞匯表中所有詞匯的概率。
圖1 掩碼語言模型
其中,被遮蔽掉的部分可以是直接隨機選擇的字Token,也可以是隨機選擇連續(xù)的能組成一個詞匯的全部字Token,后者稱為全詞遮蔽(Whole Word Masking,WWM)[12]。
由于在后續(xù)任務(wù)微調(diào)期間,模型從未看到被遮蔽的[M]詞塊,會產(chǎn)生創(chuàng)建預(yù)訓(xùn)練和微調(diào)任務(wù)之間不適配的情況,因此從輸入中選取15%的單詞采取如下處理措施:
1)80%的幾率替換為[M](mask);
2)10%的幾率替換為一個隨機單詞;
3)10%的幾率保持不變。
通過這樣的設(shè)計,BERT 的Transformer 編碼器(Encoder)層被動保持了每個輸入詞塊的分布特征與語境表征。并且由于替換為隨機單詞的詞匯只有1.5%,所以不會損害BERT 的語言理解能力。
領(lǐng)域適配預(yù)訓(xùn)練實驗中,采用全詞遮蔽方式,訓(xùn)練數(shù)據(jù)是50 萬條未標注軍事科技領(lǐng)域的各類語料數(shù)據(jù),在NVIDIA Tesla V100 32GB 8 顯卡GPU 服務(wù)器上,訓(xùn)練10 輪,用時近70 h。
軍事科技領(lǐng)域的命名實體識別任務(wù),較通用實體識別更為復(fù)雜困難,這主要表現(xiàn)為:1)漢語文本中沒有表示詞語邊界的分割符號,命名實體識別效果與文本分詞效果相互影響,而通用的分詞方法在軍事科技領(lǐng)域文本數(shù)據(jù)中效果會受領(lǐng)域知識的影響;2)通用實體識別任務(wù)的目的是識別文本中的事物名稱,如人名、地名、機構(gòu)名。該文研究的是軍事科技領(lǐng)域文本數(shù)據(jù),包括軍事科技領(lǐng)域科研項目文獻、各國軍事科技情報文獻、軍事科技專利技術(shù)文獻、軍事論文期刊類文獻、軍事科技實驗類文獻等。該文針對其中的武器裝備、組織機構(gòu)、科學(xué)技術(shù)、性能指標、技術(shù)背景、專家學(xué)者及軍事術(shù)語七大類進行識別標注。
基于領(lǐng)域?qū)棺赃m應(yīng)的遷移學(xué)習(xí)模型如圖2 所示?;谲娛驴萍碱I(lǐng)域命名實體識別任務(wù)的特點,分別為源任務(wù)域和目標任務(wù)域提供特定域的特征提取器BiLSTM,并建立一個共享特征提取器來學(xué)習(xí)獲取域無關(guān)特征,將共享特征提取器(共享BiLSTM)的輸出送入資源對抗鑒別器,通過對抗學(xué)習(xí),減少負遷移。并且在訓(xùn)練中使獲取源任務(wù)域數(shù)據(jù)與目標任務(wù)域數(shù)據(jù)的概率都等于50%,避免出現(xiàn)數(shù)據(jù)規(guī)模不均的問題。對抗鑒別器的作用是在源任務(wù)的特征中選擇有利于目標任務(wù)性能提高的特征,同時防止負遷移,即減少對目標任務(wù)沒有幫助的特征信息進入共享特征空間。訓(xùn)練完成之后,對抗鑒別器趨于無法區(qū)分共享特征提取器中的特征表示是來自源任務(wù)域還是目標任務(wù)域,可認為共享特征都是能對目標任務(wù)提供幫助的特征。
圖2 基于領(lǐng)域?qū)棺赃m應(yīng)的遷移學(xué)習(xí)模型
該文設(shè)計在BiLSTM 層后加入自注意力機制,捕獲兩個字符之間的長距離依賴關(guān)系并學(xué)習(xí)句子的內(nèi)部結(jié)構(gòu)信息。
1)共享與獨有特征提取BiLSTM
共享特征提取器:輸入為目標任務(wù)域和源任務(wù)域,提取任務(wù)共享的邊界信息,對于共享BiLSTM 的輸出與目標BiLSTM 的輸出,有:
2)自注意力層Self-attention
該文應(yīng)用了多頭自注意力(Multi-head Selfattention)機制[13],獲取句子內(nèi)部詞匯間的結(jié)構(gòu)與關(guān)聯(lián)關(guān)系。
Self-attention 層的輸入是特征提取器BiLSTM 的輸出H=(h1,h2,h3…h(huán)n)。Q(Query)、K(Key)、V(Value)三個矩陣均來自H。首先計算得分,為Q與K的點乘:score=Q·K。為使梯度穩(wěn)定,歸一化score,除以其中dk為一個Query 和Key 向量的維度。再通過交叉熵激活函數(shù)將其結(jié)果歸一化為概率分布并與V點乘,得到權(quán)重求和的表示。最終的輸出結(jié)果矩陣為:
利用自注意力機制的特性,在BiLSTM 抽取句子文本特征的基礎(chǔ)上,進一步獲取詞與詞之間的依賴關(guān)系與結(jié)構(gòu)信息。
3)對抗任務(wù)域鑒別器
與生成對抗網(wǎng)絡(luò)類似,共享BiLSTM 屬于生成器,其后加入一個資源判別器,用于判斷生成器所生成的特征來自哪個任務(wù)域。通過讓資源判別器分辨不出特征出自哪個任務(wù)域,使共享BiLSTM 所抽取到的特征是任務(wù)之間的共有特征,減少了負遷移的影響。
通過最大池化(Max Pooling)層和交叉熵層識別特征來自哪個領(lǐng)域,可以表示為:
其中,S表示共享自注意力輸出的最大池化結(jié)果,θd表示任務(wù)鑒別器的參數(shù),Wd和bd是可訓(xùn)練參數(shù)。
通過引入對抗損失函數(shù)Ladv,如式(7)所示,防止源任務(wù)的特定信息進入共享空間。
其中,θs表示共享特征提取器可訓(xùn)練參數(shù),K是任務(wù)數(shù),Es表示共享特征提取器,Tk是任務(wù)k訓(xùn)練實例的數(shù)量,是任務(wù)k的第i個實例。
通過在領(lǐng)域鑒別器softmax 層與共享特征提取器(共享BiLSTM)之間,添加一個梯度反轉(zhuǎn)層(Gradient Reversal Layer,GRL),完成極小化極大算法優(yōu)化。GRL 層在前向傳播過程中實現(xiàn)恒等變換;在反向傳播過程中,使域分類損失的梯度反向傳播到共享特征提取器的參數(shù)之前自動取反,進而實現(xiàn)了類似GAN 的對抗損失。使共享特征提取器產(chǎn)生的共享特征在訓(xùn)練過程中趨向誤導(dǎo)領(lǐng)域鑒別器。相關(guān)數(shù)學(xué)表示如式(8)所示:
4)虛擬對抗訓(xùn)練
虛擬對抗訓(xùn)練(Virtual Adversarial Training,VAT)[14]是針對具有給定條件的標簽分布p(y|x)的數(shù)據(jù),度量此分布局部光滑性的一種方法。將條件標簽概率約束成光滑的,進行正則化,在輸入x變化很小的情況下,輸出p(y|x)也很小。滿足光滑,表示對抗樣本相比于原樣本變化很小,標簽也不會有太大變化。VAT 通過迭代求解,迭代過程中其損失函數(shù)如下:
其中,輸入x、y為預(yù)測的輸出標簽并不是實際標簽,p(y|x,θ)是輸出分布,θ是模型參數(shù),迭代過程中是上一步的p(y|x,θ),D是非負度量函數(shù)交叉熵,用于量化分布之間的距離。rqadv是對抗的擾動,也就是VAT 一方面需要找出對模型影響最大的擾動量,另一方面要盡量減小這個擾動量對模型的影響。VAT 通過迭代近似計算,執(zhí)行梯度下降,更新模型參數(shù)。
VAT 在對抗訓(xùn)練時不需要標簽信息,所以可以應(yīng)用于無監(jiān)督學(xué)習(xí),文中應(yīng)用VAT 提高模型的魯棒性。
目標任務(wù)的CRF 損失函數(shù)為:
源任務(wù)域的CRF 損失函數(shù)為:
模型最終的損失函數(shù)為:
其中,Dtarget代表目標任務(wù)域,Dsource代表源任務(wù)域,x是模型的輸入,λ是超參。
為了解決資源數(shù)據(jù)不平衡的問題,在訓(xùn)練的過程中,以同樣概率從源任務(wù)域與目標任務(wù)域中獲取訓(xùn)練數(shù)據(jù)。最后利用Adam優(yōu)化算法來進行損失函數(shù)的優(yōu)化。
為了評估模型在軍事科技領(lǐng)域命名實體識別任務(wù)的效果,在表1 所示的4 個數(shù)據(jù)集上進行了實驗,包括1 839 條有6 種標注類別的軍事科技領(lǐng)域內(nèi)命名實體識別數(shù)據(jù)集(DomainNER)作為目標任務(wù)數(shù)據(jù),以8∶1∶1 的比例建立訓(xùn)練集、驗證集、測試集;SIGHAN2006NER 數(shù)據(jù)集(SighanNER,Levow,2006)作為源任務(wù)數(shù)據(jù);MSR 數(shù)據(jù)集(from SIGHAN2005)[15]作為對比實驗用的源中文分詞(CWS)任務(wù)數(shù)據(jù);業(yè)務(wù)中積累的無標注數(shù)據(jù)以及國防科技信息網(wǎng)(www.dsti.net)與簡氏防務(wù)中文網(wǎng)爬取的領(lǐng)域無標注數(shù)據(jù)共50 余萬條,作為領(lǐng)域適配語料。
表1 數(shù)據(jù)集統(tǒng)計
以DomainNER 的準確率(P)、召回率(R)、F1 值作為實驗對比分析內(nèi)容。
首先使用BMESO 格式預(yù)處理DomainNER 數(shù)據(jù),訓(xùn)練過程中采用五折交叉驗證,分別按照損失(loss)和F1 保存模型,共10 個模型,最大訓(xùn)練輪數(shù)(epoch)為27 輪,訓(xùn)練過程會根據(jù)損失提前停止。(基線模型(Baseline)是將哈工大BERT-wwm-ext[16]不進行微調(diào)獲得的字嵌入輸入到BiLSTM+CRF 模型獲得的結(jié)果)。所有的LSTM 隱藏層神經(jīng)元個數(shù)為128,丟棄法超參數(shù)取0.1。如前文所述,領(lǐng)域適配預(yù)訓(xùn)練實驗中,以哈工大BERT-wwm-ext 預(yù)訓(xùn)練模型為基礎(chǔ),掩碼語言模型MLM 同樣采用WWM 的方式,在NVIDIA Tesla V100 32GB 8顯卡GPU服務(wù)器上,對50余萬條領(lǐng)域適配語料進行訓(xùn)練。訓(xùn)練10 輪,用時近70 h。
表2 和表3 展示了該文介紹的模型和基線模型在目標領(lǐng)域和目標任務(wù)DomainNER(NER1)上的實驗結(jié)果,源任務(wù)分別為通用領(lǐng)域命名實體識別任務(wù)NER2和通用領(lǐng)域中文分詞任務(wù)CWS,每個實驗?zāi)P偷恼f明如下:
表2 實驗結(jié)果(未使用遷移學(xué)習(xí))
表3 實驗結(jié)果(使用遷移學(xué)習(xí))
BiLSTM+CRF:輸入是目標任務(wù)域數(shù)據(jù)通過固定參數(shù)的BERT-wwm-ext Embedding結(jié)果;
MLM+BiLSTM+CRF:使用掩碼語言模型MLM對BERT-wwm-ext 在目標領(lǐng)域數(shù)據(jù)上進行微調(diào),完成領(lǐng)域適配;
MLM+BiLSTM+CRF+task-transfer:在BiLSTM+CRF 模型上,進行從源任務(wù)域NER2到目標任務(wù)域NER1的遷移學(xué)習(xí),沒有計算對抗學(xué)習(xí)損失;
MLM+BiLSTM+CRF+adversarial:與MLM +BiLSTM+CRF+task-transfer模型相比,加入了對抗學(xué)習(xí)部分,優(yōu)化了基于領(lǐng)域?qū)棺赃m應(yīng)的遷移學(xué)習(xí)模型;
MLM+BiLSTM+CRF+adversarial+VAT:在對抗遷移學(xué)習(xí)模型的基礎(chǔ)上,加入了虛擬對抗訓(xùn)練VAT。
從實驗結(jié)果可總結(jié)出以下結(jié)論。
領(lǐng)域適配的效果:使用MLM 對BERT-wwm-ext進行微調(diào)之后,F(xiàn)1 值有了0.23%的提升。BERTwwm-ext 本身是采用WWM 方式進行的預(yù)訓(xùn)練,訓(xùn)練數(shù)據(jù)覆蓋面非常廣,因此提升效果不大;
任務(wù)適配遷移學(xué)習(xí)的效果:MLM+BiLSTM+CRF+task-transfer 模型的F1值從MLM+BiLSTM+CRF 的76.84%提升到了78.92%與79.70%,對不同源任務(wù)數(shù)據(jù)的提升分別是2.08%與2.86%,效果明顯;
對抗訓(xùn)練的效果:對比MLM+BiLSTM+CRF+tasktransfer 模型,加入對抗訓(xùn)練模塊以后,對不同源任務(wù)數(shù)據(jù),F(xiàn)1值的提升分別是0.73%與0.48%。證明了在目標域上,對抗訓(xùn)練可以阻止源任務(wù)的私有特征進入共享BiLSTM中產(chǎn)生噪聲,即對抗訓(xùn)練有效阻止了負遷移;
虛擬對抗訓(xùn)練的效果:虛擬對抗訓(xùn)練由于VAT的加入,使F1 值分別提升了0.40%與0.97%,證明其可以提高模型的魯棒性;
源任務(wù)的影響:通過多輪對比,一般情況下,語義信息更豐富的中文分詞任務(wù)CWS 比僅有三個實體類別的通用命名實體識別任務(wù)NER2對模型預(yù)測結(jié)果的提升更大。
實驗表明,該文介紹的用于領(lǐng)域適配的MLM 模型與用于任務(wù)適配的對抗遷移學(xué)習(xí)框架對軍事科技領(lǐng)域命名實體識別任務(wù)相較基線模型,有明顯的提升,使F1 值從76.61%提升到81.15%。同時,實驗也表明,中文分詞的詞匯邊界信息等特征對于命名實體識別任務(wù)非常重要。
該文針對軍事科技領(lǐng)域文本數(shù)據(jù)的特點,將領(lǐng)域適配與任務(wù)適配的方法應(yīng)用到軍事科技領(lǐng)域的命名實體識別任務(wù)中,提出了基于掩碼語言模型的領(lǐng)域適配方法和基于對抗遷移學(xué)習(xí)的任務(wù)適配方法。應(yīng)用對抗遷移學(xué)習(xí),既可以將源任務(wù)的詞匯邊界信息等特征共享給目標任務(wù),又可以阻止源任務(wù)的負遷移特征產(chǎn)生噪聲。方法中使用自注意力機制獲取句子內(nèi)部詞匯間的結(jié)構(gòu)與關(guān)聯(lián)關(guān)系,使用虛擬對抗訓(xùn)練提高模型的魯棒性。實驗表明,文中方法所生成模型在軍事科技領(lǐng)域命名實體識別任務(wù)上有較明顯的提升效果;使用不同通用領(lǐng)域的源任務(wù)測試其對目標任務(wù)結(jié)果的影響,發(fā)現(xiàn)當語義信息更豐富的分詞任務(wù)作為遷移學(xué)習(xí)的源任務(wù)時,對目標任務(wù)的提升更大。