徐洋
(江西理工大學 信息工程學院 江西省贛州市 341000)
作為自然語言處理技術(shù)中的重要任務(wù),信息抽取在知識獲取中扮演著十分重要的角色。Grishman[1]將信息抽取定義為:從自然語言文本中抽取指定類型的實體、關(guān)系、事件等事實信息,并形成結(jié)構(gòu)化數(shù)據(jù)輸出的文本處理技術(shù)。而面向非結(jié)構(gòu)化文本的事件抽取[2-4]是信息抽取領(lǐng)域中的關(guān)鍵任務(wù)和重要研究方向。
目前事件抽取按照研究方法可分為三大類:基于模式匹配的方法和基于機器學習和基于深度學習的統(tǒng)計學習方法。根據(jù)兩個子任務(wù)學習方式的不同,事件抽取模型可以分為兩大類:管道式模型和聯(lián)合學習模型。
研究者們最先將深度學習的方法應用在基于管道式模型的事件抽取任務(wù)中。PLMEE[5]還使用了兩種模型,分別采用觸發(fā)詞抽取和元素抽取。元素抽取器使用觸發(fā)詞抽取的結(jié)果進行推理。通過引入BERT[6],它表現(xiàn)良好。MQAEE[7]將事件抽取視為多輪問答,從而將抽取任務(wù)轉(zhuǎn)換為一系列閱讀理解問題,但錯誤的觸發(fā)詞識別結(jié)果也會影響事件分類。直觀上,如果第一步觸發(fā)詞識別有錯誤,那么元素識別的準確性就會降低。因此,在使用管道式模型抽取事件時,會出現(xiàn)級聯(lián)錯誤和任務(wù)拆分的問題。直至現(xiàn)在,這些依然是研究者們需要解決的問題。
為了解決管道式模型存在的缺陷,聯(lián)合學習模型由此而生。所以,研究者們不斷嘗試利用不同的聯(lián)合學習模型來提高事件抽取的效果。在使用深度學習對事件抽取任務(wù)進行建模之前,聯(lián)合學習模型已經(jīng)在事件抽取中進行了研究。Li 等[8]研究了基于傳統(tǒng)特征提取方法的觸發(fā)詞抽取和元素抽取任務(wù)的聯(lián)合學習,并通過結(jié)構(gòu)化感知器模型獲得最優(yōu)結(jié)果。He and Duan[9]提出基于條件隨機場(conditional random field,CRF)的多任務(wù)學習的事件抽取聯(lián)合模型,他們依據(jù)事件類型分別構(gòu)建了7 個標注任務(wù),從而解決了事件元素角色重疊問題。
綜上所述,盡管目前在事件抽取方面出現(xiàn)了大量的研究工作,但是它們只是聚焦于解決事件抽取的部分問題,鮮有工作能夠同時處理引言中提到的所有問題。因此,本文提出了一種端到端的事件抽取方法,該模型不是利用觸發(fā)詞來識別事件元素,而是采用二進制標注方法,利用BERT 作為編碼器,使用多頭注意力機制,利用事件類型同時識別觸發(fā)詞和事件元素,總的來說,本文的貢獻在于以下三點:
(1)提出了一種端到端的序列標注模型實現(xiàn)觸發(fā)詞分類和事件元素角色分類任務(wù),此模型同時識別觸發(fā)詞和事件元素,避免了觸發(fā)詞識別錯誤對事件元素提取的影響。
(2)解決了事件抽取中存在的觸發(fā)詞重疊問題和元素重疊問題。
(3)在中文金融事件抽取數(shù)據(jù)集FewFC 上進行實驗,實驗結(jié)果驗證了模型的有效性。
為了解決觸發(fā)詞重疊和元素角色重疊問題,本文提出了一個結(jié)合注意力機制的二進制標注網(wǎng)絡(luò)模型BinaryEE,其架構(gòu)如圖1所示。
圖1:BinaryEE 模型框架
BinaryEE 采用共享的BERT 編碼器來捕獲文本特征,并使用兩個模塊進行事件類型檢測、觸發(fā)詞和元素抽取。
BERT 是一種基于Transformer 架構(gòu)的雙向語言表示模型,能夠生成具有豐富語義信息的上下文表示,BERT 編碼由式(1)所示。
其中,X為輸入句子x的序列,Wt和Wp分別為可學習的詞嵌入矩陣和位置嵌入矩陣,N為12,Hi表示輸入句子在第i層BERT 網(wǎng)絡(luò)的輸出。
為了解決觸發(fā)詞重疊問題,本文通過預測句子中存在的事件類型,來抽取對應的事件觸發(fā)詞。本文設(shè)計了一種事件類型檢測模塊,來預測事件類型。
每種類型的事件通常由一組特定的詞觸發(fā),稱為事件觸發(fā)詞。因此,事件觸發(fā)詞是這個任務(wù)的重要線索。然而,這個信息在本文的任務(wù)中是隱藏的。受Liu 等[10]的啟發(fā),本文采用注意力機制來模擬隱藏的觸發(fā)詞,繼而檢測事件類型,為每種可能的類型捕獲最相關(guān)的上下文。
最后,本文通過相似度函數(shù)δ衡量自句子表示sc和類型嵌入c的相關(guān)性來預測事件類型。那么,就得到了句子中出現(xiàn)的每個事件類型的預測概率,由式(3)所示。
其中σ表示sigmoid 激活函數(shù)。本文選擇的事件類型作為結(jié)果,其中是一個標量閾值。句子x中所有預測類型組成事件類型集合Cx。是模塊可學習參數(shù)。
為了識別具有不同事件類型的重疊觸發(fā)詞,本文以特定類型c∈Cx為條件來抽取對應類型的觸發(fā)詞和事件元素。這個模塊包含一個條件融合函數(shù)、一個自注意力層和一對用于觸發(fā)詞和事件元素的二進制標注器。
為了模擬類型檢測和事件抽取之間的條件依賴關(guān)系,本文設(shè)計了一個條件融合函數(shù),將條件信息集成到文本表示中。具體為,本文通過將類型嵌入c并入到詞表示hi中,來獲得條件詞表示,由式(4)所示。
其中,可以通過拼接、加法運算符或門機制來實現(xiàn)。為了在統(tǒng)計方面充分生成條件表示,本文引入了一種有效且通用的機制,條件層歸一化LN[11],以實現(xiàn)。LN主要基于眾所周知的層歸一化,但可以根據(jù)條件信息動態(tài)生成增益γ和偏置β。給定一個條件嵌入c和一個詞表示hi,LN 表示由式(5)所示。
因為注意力機制能一步捕捉到全局的信息,可以更加全面地獲取句子的特征,所以,為了進一步細化用于事件抽取的表示,本文在條件詞表示上引入注意力機制[12],注意力機制的定義由式(6)所示。
為了預測觸發(fā)詞和事件元素,并識別具有不同角色的事件元素,本文設(shè)計了兩組特定角色的二進制標注器。對于每個詞xi,第一組用來預測它是否對應觸發(fā)詞和特定角色事件元素的開始位置;第二組用來預測它是否對應觸發(fā)詞和特定角色事件元素的結(jié)束位置,由式(7)所示。
其中σ表示sigmoid 激活函數(shù)。對于觸發(fā)詞t,本文選擇作為觸發(fā)詞開始位置的詞,作為觸發(fā)詞結(jié)束位置的詞。對于每個角色r,本文選擇作為事件元素開始位置的詞,作為事件元素結(jié)束位置的詞。其中是標量閾值。
為了獲得觸發(fā)詞t,本文枚舉所有的開始位置并搜索句子中最近的結(jié)束位置,開始和結(jié)束位置之間的標記就形成一個完整的觸發(fā)詞。這樣,就可以在不同的階段根據(jù)類型分別抽取重疊的觸發(fā)詞。句子x中預測的所有屬于類型c的觸發(fā)詞t組成集合模塊參數(shù)θte包括條件融合函數(shù)、自注意力層和二進制觸發(fā)詞標記器中的所有參數(shù)。
為了獲得帶有角色r的事件元素,本文枚舉所有開始位置并搜索句子中最近的結(jié)束位置,開始和結(jié)束位置之間的標記就形成一個完整的事件元素。這樣,重疊的事件元素可以根據(jù)不同的角色類型分別抽取出來。句子x中預測的屬于類型c的觸發(fā)詞t的所有事件元素組成集合模塊參數(shù)包括類型嵌入矩陣C、條件融合函數(shù)、自注意力層和二進制事件元素標注器中的所有參數(shù)。
本文在中文金融事件抽取基準數(shù)據(jù)集FewFC[14]上進行了實驗。本文以8:1:1 的比例分割數(shù)據(jù)用于訓練、驗證和測試。表1 顯示了數(shù)據(jù)集的更多細節(jié)。對于評估,本文遵循傳統(tǒng)的評估指標[5],并使用準確率(P)、召回率(R)和 F 度量(F1)進行結(jié)果分析。
表1:FewFC 數(shù)據(jù)集統(tǒng)計
雖然最近很多研究者為EE 開發(fā)了各種各樣的模型,但很少有研究者研究解決重疊事件抽取問題。本文根據(jù)當前的解決方案采用以下基線進行實驗對比。
聯(lián)合的方法。這種方法大多將事件抽取轉(zhuǎn)化為序列標注任務(wù)。BERT-normal[6]采用BERT 學習文本表示,并使用隱藏狀態(tài)對事件觸發(fā)詞和元素進行分類。BERTCRF 采用條件隨機場(CRF)來捕獲標記之間依賴關(guān)系[15],BERT-joint 借鑒了實體和關(guān)系的聯(lián)合抽取思想[16],采用可以稱之為B/I/O-type-role 的類型與角色的聯(lián)合標簽。
管道式方法。這種方法以流水線方式解決事件抽取。PLMEE 通過根據(jù)觸發(fā)詞抽取角色特定元素來解決元素重疊問題。MQAEE 首先預測具有類型的重疊觸發(fā)器,并且然后根據(jù)類型的觸發(fā)器預測重疊的元素,稱為MQAEE。
所有方法在FewFC 數(shù)據(jù)集上的表現(xiàn)如表2所示。從表中可以看出:
表2:FewFC 數(shù)據(jù)集上不同模型的實驗結(jié)果
(1)與聯(lián)合序列標注方法相比,BinaryEE 在F1得分上取得了更好的表現(xiàn)。具體來說,BinaryEE 在AC的F1 分數(shù)上分別比BERT-CRF 和BERT-joint 分別提高了4.1%和3.9%。此外,BinaryEE 在評估指標的召回率產(chǎn)生了更高的結(jié)果,原因在于這些序列標注方法有標簽沖突,對于那些多標簽標記只能預測一個標簽。這樣的結(jié)果證明了BinaryEE 在重疊事件抽取上的有效性。
(2)與管道式方法相比,本文的方法在F1 分數(shù)上也優(yōu)于它們。與PLMEE 相比,BinaryEE 在TC 和AC 的F1 分數(shù)上分別實現(xiàn)了3.2%和2.2%的提升,表明了解決事件中的重疊觸發(fā)詞問題的重要性。另外,BinaryEE 與強大的基線MQAEE 相比在AC 的F1 分數(shù)上提高了3.7%。原因可能是BinaryEE 利用注意力機制學習觸發(fā)詞和事件元素的文本表示,在它們之間建立有用的聯(lián)系。結(jié)果表明BinaryEE 優(yōu)于上述管道式基線。
在重疊句子上的性能。如表3所示,本文的方法在重疊句子上的性能明顯優(yōu)于以前的方法。與以往聯(lián)合學習的方法相比,這可能是本文針對特定類型的觸發(fā)詞抽取方法和特定角色的元素抽取方法避免了標簽沖突的屬性;與以往管道式的方法相比,本文的方法避免了子任務(wù)之間可能存在的錯誤傳播。
表3:重疊句子上不同模型的F1 值
在普通句子上的性能。如表4所示,其它聯(lián)合學習方法在觸發(fā)詞抽取上的結(jié)果相似,但在元素抽取上的結(jié)果相對較好,這是因為它們避免了管道式方法在子任務(wù)之間的潛在的錯誤傳播。在其它管道式的方法中,MQAEE 預測的觸發(fā)詞更準確,原因可能是它用事件類型聯(lián)合預測觸發(fā)詞,使得元素抽取結(jié)果類似于BinaryEE。即便如此,與其它模型相比,BinaryEE 在正常句子上的性能仍然可以接受。
表4:普通句子上不同模型的F1 值
本文提出了一種用于重疊事件抽取的聯(lián)合學習模型,使用預訓練語言模型作為文本的編碼器,融合事件類型作為條件信息,采用注意力機制對同時對事件觸發(fā)詞和事件元素進行二進制標注,解決了事件抽取中存在的觸發(fā)詞重疊和元素重疊問題,同時也避免了傳統(tǒng)管道式方法存在的錯誤級聯(lián)和任務(wù)割裂的問題。在公共數(shù)據(jù)集上的實驗表明,本文的模型在重疊事件抽取方面取得了良好的效果。然而,目前的方法只適用于句子級別的事件抽取任務(wù),如何利用聯(lián)合學習的模型從篇章級文本中抽取結(jié)構(gòu)化的事件信息是下一步的主要研究方向和內(nèi)容。