于海英, 張昊洋, 劉興麗
(黑龍江科技大學 計算機與信息工程學院, 哈爾濱 150022)
事件是現實世界信息表示的一種重要形式。獲取事件的關鍵信息,對分析事件源起、發(fā)展、演化和衍生,快速制定響應和防范預案具有重要的意義。在NLP領域,事件一般以句子為單位,是發(fā)生在特定時間點或時間段、某個特定地域范圍內,由一個或多個角色參與的一個或多個行動組成的事情或者狀態(tài)的改變[1]。事件由觸發(fā)詞和事件要素構成。事件抽取就是從數據源中識別并提取事件的觸發(fā)詞、事件要素和事件關系等,并以結構化形式呈現出來。
事件抽取主要基于模式匹配方法和機器學習方法。前者核心是建立事件模板[2-3],在規(guī)則模板的指導下抽取事件[4-5]。該方法在特定領域非常有效,但是嚴重依賴于人工設計模板,領域差異性導致模板無法遷移?;谔卣鞴こ痰臋C器學習方法將任務建模分類或者序列標注問題[6]。模型適應性及效率顯著提升,但是涉及人工構建復雜的特征工程以及誤差傳遞問題,提高了方法實際應用的難度。目前,深度學習是事件抽取的主流方法。羅萍等[7]基于數據增強和混合文本對抗訓練機制,解決弱監(jiān)督學習場景下中文事件檢測數據稀疏及噪聲的問題。曹渝昆等[8]采用注意力機制融合詞和句子特征,通過分組GLSTM網絡和CRF完成中文事件信息抽取。郭恒睿等[9]針對小規(guī)模標注數據,采用半監(jiān)督聚類模型和LSTM提取事件特征,結合線性模型來計算文本相似度,采用增量聚類的方法提高聚類的準確度。胡慧君[10]基于BiLSTM-CRF的序列標注抽取方法,對突發(fā)熱點事件研判證據實現細粒度的識別。隨著預訓練模型的出現,研究人員利用預訓練模型遷移學習,將預訓練模型應用到領域事件抽取任務。Liu等[11]對英文篇章級事件抽取任務采用了BERT和問答模板生成模型。Shin 等[12]基于提示學習和梯度搜索進行關系抽取。
以上研究工作主要基于開放域中英文數據集以及金融等領域大規(guī)模的公開數據集,而在特定領域中標注樣本不足,真實場景下的訓練數據十分有限,而且由于中文語言特性,領域知識在詞語切分、詞義、語用等方面易產生歧義,專業(yè)術語表達規(guī)范不一,給深度學習模型提取領域文本的深層語義知識和模型訓練帶來諸多難點。事件自動抽取既要考慮小樣本過擬合問題,還需考慮避免模型陷入局部最優(yōu),平衡時間和計算資源效率的問題,而預訓練模型在解決上述問題存在明顯優(yōu)勢,因此筆者采用融合預訓練模型RoBERTa和BiLSTM-CRF的方法進行領域事件抽取,并通過多種模型對比實驗驗證其有效性。
近年來,在NLP領域中預訓練模型逐漸成了主流方法和模型。文中采用聯合抽取策略,事件識別及事件要素抽取均利用RoBERTa-BiLSTM-CRF模型。首先對輸入文本通過RoBERTa進行訓練,生成含有語義表示的動態(tài)詞向量,再由BiLSTM進行上下文特征提取,輸出預定義類的預測標簽,最后經過CRF學習標簽轉移特征和約束規(guī)則來確定最優(yōu)序列。
RoBERTa[13]是BERT[14]的一種改進型模型。通過改進掩碼技術、刪減NSP(Next sentence prediction)任務以及采用更大的批次、預訓練步數、數據量和BPE詞表等預訓練方法實現精細調參。其網絡的基本模型是多頭注意力機制的Transformer雙向編碼器,如圖1所示。輸入端由詞向量、塊向量和位置向量共同構成了輸入語義向量。語義獲取由多層Transformer模型的Encoder連接而成,每個Encoder中有兩次殘差連接,以保證模型效果。自注意力機制使Encoder能夠充分獲取文本中每個詞之間的語義關聯,并從多個維度來刻畫這種關聯程度,使序列編碼體現語義的整體性,傳給下游任務。
圖1 RoBERTa模型結構
采用全詞掩碼策略(Whole word masking,WWM)的12層Transformer構成的RoBERTa-WWM模塊。初始輸入是文本語句W={w1,w2,…,wn},然后由其詞信息、塊信息、位置信息共同形成模型輸入向量E={E1,E2,…,En},中間層的Transformer進行特征提取后,形成的輸出向量T={T1,T2,…,Tn}。該輸出中含有RoBERTa-WWM在預訓練階段獲得的先驗語義知識,解決領域語料不足造成的過擬合問題。文中模型訓練參數在訓練時會根據訓練集進行微調,使模型更加適配于下游任務數據的語義知識。
在事件抽取的特征層使用BiLSTM(Bi-directional long short-term memory)雙向長短期記憶網絡模型,用于學習經RoBERTa語義嵌入表示后的上下文特征。LSTM通過門控結構來解決RNN時間維度上的梯度消失和梯度爆炸問題。LSTM 由輸入門、輸出門和遺忘門以及記憶單元組成,其單元結構如圖2所示。依靠門控機制決定在模型訓練期間要保留或遺忘的信息,其中,輸入門用來控制當前信息,輸出門用來確定下一個隱藏層狀態(tài),遺忘門用來控制歷史信息,記憶單元用來保存歷史信息,文中采用該模型處理領域的長序文本。
圖2 LSTM單元結構
在t時刻,LSTM 的計算公式為
ft=σ(Wf·[ht-1,xt]+bf),
(1)
it=σ(Wi·[ht-1,xt]+bi),
(2)
ot=σ(Wo·[ht-1,xt]+bo),
(3)
式中:ht-1——前一時刻的隱藏層狀態(tài);
xt——當前時刻輸入的詞嵌入表示信息;
ft——遺忘門信息;
it——輸入門信息;
ot——輸出門狀態(tài);
σ——Sigmoid激活函數;
tanh——tanh激活函數;
W——權重矩陣;
b——偏置項。
W和b是神經網絡的可訓練參數。由上述計算可以得到
(4)
(5)
ht=ot·tanhCt,
(6)
Ct——當前節(jié)點狀態(tài)信息,即本單元的長時信息;
ht——當前隱藏層信息,即本單元的短時信息。
經過上述計算后,對長短時信息進行存儲和輸入下一單元。BiLSTM學習雙向上下文特征,解決了長文本信息依賴丟失的問題。
條件隨機場(Conditional random field, CRF)模型如圖3所示。CRF計算標簽的全局概率信息對序列進行解碼,得到標簽序列,也就是利用轉移特征函數考慮到標簽之間的順序性,再通過動態(tài)規(guī)劃算法計算出得分最高的標簽序列,剔除無效輸出序列,從而獲得全局最優(yōu)的輸出序列。
圖3 條件隨機場模型
設X=(X1,X2,…,Xn)和Y=(Y1,Y2,…,Yn)分別為句子序列和預測標簽序列,選用指數勢函數,引入特征函數計算全局概率,Y的條件概率P(Y/X)構成條件隨機場。
當X取值為x時,
(7)
式中:λk——轉移特征函數的權值;
μl——狀態(tài)特征函數的權值;
tk——轉移特征函數;
sl——狀態(tài)特征函數。
轉移特征用于表示相鄰標記之間的相關關系,以及觀測序列對它們的影響,狀態(tài)特征則表示觀測序列對標記變量的影響,在i為1和n時僅考慮單向。Z(x)為歸一化因子,其形式為
(8)
采用CRF預測最終的序列在考慮上下文關聯的基礎上,可以添加約束來保證結果的有效性。
RoBERTa-BiLSTM-CRF模型整體結構和事件抽取實例,如圖4所示。
圖4 RoBERTa-BiLSTM-CRF模型
在標簽體系方面,由于BIO(B-begin,I-inside,O-outside)可以達到文中要求,具有較好的精度和訓練復雜度的平衡,因此文中采用了該體系進行序列標注。其中:B-X表示元素為該類型開頭位置;I-X表示該類型中間位置;O表示不屬于該類型。根據本體層的定義,將標簽分為“Time”、“Country”、 “Region”、“Trigger”、“Equipment”、“Operation”、“Disaster”、“State”。模型中將RoBERTa模型得到的語義特征詞向量T={T1,T2,…,Tn}輸入BiLSTM模型,利用BiLSTM模型學習語義關系,獲取融合全局的上下文特征,最后根據CRF的轉移特征運算,以及學習約束規(guī)則得到最優(yōu)標注序列,經過程序數據處理后得到圖中事件抽取結果。
本文語料集來自百度百科、維基百科中獲取的領域事件生語料,經數據清洗和預處理后形成原始數據集。首先使用Doccano語料標注平臺對語料中的事件句標注事件分類和事件要素,經訓練后獲得初步的小樣本事件分類、事件元素實體和觸發(fā)詞抽取模型,再利用模型進行自動標注獲得擴大的數據集,然后由人工審核模型自動預測的標注數據,提高準確性。通過迭代標注的方法獲得事件分類數據集7 889句,事件要素抽取數據集8 450句,事件要素實體58 505個。
為了評估模型在中文領域事件抽取任務上的性能,使用精確率P、召回率R和F1分別為
式中:TP——正確預測的正樣本個數;
FP——預測錯誤的負樣本個數;
FN——預測錯誤的正樣本個數。
實驗模型基于Tensorflow1.15.0框架構建,所使用GPU為顯存容量11G的Tesla K80,Batch_size為128,維度設置Seg_dim為20,Char_dim是100,LSTM_dim為200,學習率為1×10-3,為了防止小樣本數據集過擬合,提高模型的泛化能力,設置Dropout為0.5,最大序列長度為128,最大Epoch為100,采用Adam優(yōu)化器。數據集按照8∶1∶1劃分訓練集、驗證集和測試集進行交叉驗證。
為驗證該模型性能的有效性,實驗采用事件抽取任務中常用網格結構的LSTM模型(Lattice LSTM)[15]和BiLSTM-CNN-CRF模型[16]以及RoBERTa-BiGRU-CRF作為對比模型,對比實驗模型均采用最優(yōu)解配置,選取三次實驗平均值作為結果,如表1所示。
表1 事件抽取任務對比實驗
實驗設置目的是在領域小樣本場景下對比模型及中文事件長序文本的抽取性能。模型1、2和3分別在語義向量表示、特征提取、序列預測的層級模型部分與文中模型具有不同結構,目的是針對領域小樣本語料和分詞歧義問題,考察不同層級模型對整體抽取性能影響。其中,模型1的主干部分是基于字的LSTM-CRF,同時利用詞典中匹配的潛在詞的加權計算與字信息融合,基于字詞組合信息降低分詞誤差。模型2引入CNN層進行卷積和最大池化來更準確獲得當前詞的局部特征。模型3的GRU使用重置門與更新門替換LSTM的三種門控機制,多次預測中共享一組參數,提高計算效率。
文中對比實驗研究了四種模型在事件元素實體抽取和事件觸發(fā)詞抽取兩個任務上的表現。由實驗結果可見,文中所使用的RoBERTa-BiLSTM-CRF模型在領域事件數據集上取得了最佳的結果,P、R和F1值在事件元素實體抽取和事件觸發(fā)詞抽取任務上分別達到86.7%、89.8%、87.3%和79.9%、87.4%和83.9%,均高于其他三種模型。在中文事件長文本信息的抽取任務中,文中模型在處理“Inside”詞和未登錄詞特征處理方面優(yōu)于Lattice LSTM;語義編碼層的RoBERTa-wwm對深層語義、上下文信息及潛在的詞特征具有更好地表示能力,可以有效解決中文詞義歧義問題,并且預訓練階段經過海量數據訓練,使其具有低資源依賴特性更加適合小樣本語料抽取;特征提取層BiLSTM在獲取雙向長期依賴和全局特征方面優(yōu)于CNN和BiGRU,因而具有更高的準確率。CRF轉移矩陣和約束規(guī)則的引入可以對發(fā)射分數進行矯正,可以給出更為準確的序列標注結果。
(1)文中對領域語料進行預處理后形成事件抽取數據集,通過融合預訓練模型RoBERTa和BiLSTM-CRF的聯合抽取模型,抽取事件觸發(fā)詞及事件要素。語義表示層采用基于全詞掩碼策略的RoBERTa模型,訓練過程中將恢復整個詞作為目標,得到領域中文事件詞級別的語義向量化表示。通過BiLSTM模型在序列建模特征提取任務上,捕捉雙向長短期的上下文語義依賴,采用CRF模型計算預測的聯合概率,以優(yōu)化整個序列,二者優(yōu)勢結合,可以達到獲取最優(yōu)序列的目標。
(2 )模型在事件元素實體抽取及觸發(fā)詞抽取任務上的值分別達到了88.3%和84.0%,相比于其他幾種對比實驗模型,均有較大幅度地提升。后續(xù)工作包括研究數據增強策略擴展領域數據集規(guī)模,考察事件類別數據分布不均衡問題對模型性能的影響,此外還將研究模型在事件關系抽取任務上的應用問題。