,,,
(中國科學(xué)院計算技術(shù)研究所網(wǎng)絡(luò)數(shù)據(jù)科學(xué)與技術(shù)重點實驗室,北京100080)
近年來,伴隨著移動互聯(lián)網(wǎng)、云計算、大數(shù)據(jù)、物聯(lián)網(wǎng)、人工智能等信息技術(shù)的快速發(fā)展和傳統(tǒng)產(chǎn)業(yè)數(shù)字化轉(zhuǎn)型,信息數(shù)據(jù)量呈現(xiàn)爆炸式增長。如何從海量的信息中迅速、準(zhǔn)確地提取出人們所需求的信息成為新的挑戰(zhàn)。在此背景下,信息檢索和信息抽取成為了重要的信息獲取手段[1]。
事件抽取是信息抽取的一個重要研究方向。根據(jù)ACE2005的定義,事件由事件觸發(fā)詞和描述事件結(jié)構(gòu)的論元構(gòu)成,事件觸發(fā)詞是能夠觸動事件發(fā)生的詞,是決定事件類型最重要的特征詞,決定了事件類別和子類別,論元則表示了事件的參與者或?qū)傩?。因此可以將事件抽取的任?wù)定義為事件觸發(fā)詞的檢測與識別,即識別特定類型的事件,并進(jìn)行相關(guān)信息的確定和抽取,主要的相關(guān)信息包括:事件的類型和子類型、事件的論元等[2]。
事件抽取任務(wù)可由以下2個步驟組成:①事件檢測,事件檢測的核心是識別代表事件的觸發(fā)詞;②事件論元抽取,事件論元指事件的相關(guān)要素,根據(jù)所屬的事件模板,抽取出相應(yīng)的論元,并為其標(biāo)上正確的角色標(biāo)簽。
目前在中文事件檢測任務(wù)中,存在著領(lǐng)域互相獨立、領(lǐng)域間的數(shù)據(jù)無法互通、需要分別為每個領(lǐng)域標(biāo)注大量數(shù)據(jù)的問題[3]。本文充分借鑒前人的研究成果,針對當(dāng)前中文事件檢測研究中存在的不足,提出一個基于遷移學(xué)習(xí)的開放式中文事件檢測方法,有效提升了事件檢測效果。
目前國內(nèi)外對于事件檢測的研究,主要包括基于模式匹配的方法和基于統(tǒng)計學(xué)習(xí)的方法[4]?;谀J狡ヅ涞氖录z測方法具有許多優(yōu)勢:一是只需要少量的訓(xùn)練數(shù)據(jù)甚至不需要訓(xùn)練數(shù)據(jù);二是可以通過詞法、句法、語義定義強(qiáng)大的模式表達(dá)式,其匹配的結(jié)果是可追溯可解讀的[5],當(dāng)需要提取特征明顯的信息時,基于模式匹配的方法非常適合。然而,為了定義出可以準(zhǔn)確匹配的模式,需要大量的語言學(xué)知識,甚至需要待匹配領(lǐng)域的專業(yè)知識[6]。同時,當(dāng)模式需要改變以適應(yīng)更多場景時,模式的修改往往需要大量人工參與[7]。
目前已經(jīng)有許多使用模型匹配進(jìn)行事件檢測的方法,如Borsje等[8]提出的基于詞法—語義模式的事件檢測方法;Hearst[9]提出的基于詞法—句法模式的事件檢測方法等。
和基于模式匹配的方法相比,基于統(tǒng)計學(xué)習(xí)方法的健壯性和靈活性較好,更具有一般性,該方法不依賴于語言學(xué)知識,也不受具體領(lǐng)域和數(shù)據(jù)格式的約束,可移植性較好。但是由于特征提取和分類方法的不同,在準(zhǔn)確率上有一定的差異。基于統(tǒng)計學(xué)習(xí)的方法雖然不依賴于語料的內(nèi)容與格式,但為取得滿意的效果,往往需要大規(guī)模地標(biāo)注語料,否則會出現(xiàn)較為嚴(yán)重的數(shù)據(jù)稀疏問題,同時其不會處理明確的句子意義,例如它們會發(fā)現(xiàn)語料中的關(guān)系,但不會考慮其語義[7]。
基于統(tǒng)計機(jī)器學(xué)習(xí)的方法又分為基于傳統(tǒng)機(jī)器學(xué)習(xí)的方法和基于深度學(xué)習(xí)的方法。經(jīng)典的基于機(jī)器學(xué)習(xí)的方法中有Okamoto等[10]提出的基于層級聚類的事件檢測方法;Ji和Grishman[11]提出的基于篇章級特征的事件檢測方法等?;谏疃葘W(xué)習(xí)的方法中,比較經(jīng)典的有Chen等[12]提出的基于動態(tài)多池化的卷積神經(jīng)網(wǎng)絡(luò)方法;Nguyen等[13]提出的基于循環(huán)神經(jīng)網(wǎng)絡(luò)的聯(lián)合模型方法以及Lin等[14]提出的基于區(qū)塊提議網(wǎng)絡(luò)的方法等。
近幾年來,遷移學(xué)習(xí)在信息抽取領(lǐng)域的研究逐漸增多,雖然目前在事件抽取領(lǐng)域的研究還不是特別多,但在實體關(guān)系抽取領(lǐng)域中,遷移學(xué)習(xí)已經(jīng)達(dá)到了非常好的效果,如王紅斌等[15]提出的融合遷移學(xué)習(xí)的中文命名實體識別方法、Levy等[16]提出的基于遷移學(xué)習(xí)的關(guān)系抽取方法以及Huang等[17]提出的基于遷移學(xué)習(xí)的事件抽取方法。本文提出的事件檢測方法,也是基于遷移學(xué)習(xí)的理論,遷移學(xué)習(xí)在事件抽取領(lǐng)域會有更多應(yīng)用。
針對前面提到的中文事件檢測任務(wù)中存在的主要問題,本文采用遷移學(xué)習(xí)的方式,將基于ACE2005的中文事件數(shù)據(jù)集學(xué)習(xí)出來的基礎(chǔ)模型,遷移到未知的事件類型上。一方面可以解決以往事件檢測方法需要大量人工標(biāo)注數(shù)據(jù)的問題,另一方面可以解決事件檢測任務(wù)中不同類型數(shù)據(jù)無法互通的問題。
本文所使用的遷移學(xué)習(xí)方法是歸納式遷移學(xué)習(xí)中的多任務(wù)學(xué)習(xí),遷移方式是參數(shù)遷移。歸納式遷移學(xué)習(xí)需要源任務(wù)與目標(biāo)任務(wù)之間有一定的關(guān)聯(lián),源領(lǐng)域和目標(biāo)領(lǐng)域相同或相關(guān)。事件檢測的核心是識別觸發(fā)詞,而觸發(fā)詞之間的關(guān)聯(lián)關(guān)系是本文遷移學(xué)習(xí)模型的基礎(chǔ),為此本文提出以下2點觸發(fā)詞關(guān)聯(lián)假設(shè):
①同一個事件類型下,觸發(fā)詞與觸發(fā)詞在語義空間上有著一定的關(guān)聯(lián),且關(guān)聯(lián)性較強(qiáng);
②不同事件類型之間的觸發(fā)詞和觸發(fā)詞之間也存在著一定的關(guān)聯(lián),不過其關(guān)聯(lián)性弱于相同事件類型下觸發(fā)詞之間的關(guān)聯(lián)性。
基于以上2個假設(shè),本文從已標(biāo)注的事件數(shù)據(jù)集中,每個類型提取部分觸發(fā)詞作為該類型下的種子觸發(fā)詞,然后提取每個候選詞與所有種子觸發(fā)詞的關(guān)系特征,基于這個特征去訓(xùn)練出一個基礎(chǔ)模型,最后將基礎(chǔ)模型遷移到目標(biāo)事件類型中,對目標(biāo)事件類型的數(shù)據(jù)集進(jìn)行事件檢測。
基于2.1節(jié)提出的假設(shè),觸發(fā)詞與觸發(fā)詞之間存在關(guān)聯(lián),因此本文的第一步工作就是挖掘出觸發(fā)詞與觸發(fā)詞之間的關(guān)聯(lián)關(guān)系,這是非常重要的一步。挖掘詞與詞之間的關(guān)系需要借助外部詞匯語義網(wǎng),本文利用中文WordNet挖掘觸發(fā)詞與觸發(fā)詞之間的關(guān)聯(lián)。
2.2.1 種子觸發(fā)詞的提取
本文對每個事件類型下的標(biāo)注數(shù)據(jù),都提取部分觸發(fā)詞作為該事件類型下的種子觸發(fā)詞。以ACE2005的中文數(shù)據(jù)集為例,根據(jù)每個類型下的觸發(fā)詞集合,隨機(jī)選取一半作為該類型下的種子觸發(fā)詞,且將每個類型的種子觸發(fā)詞數(shù)控制在50個以內(nèi)。
2.2.2 關(guān)系特征提取
對于一個文本而言,其擁有許多句子,對每個句子都要進(jìn)行判斷;同時對于每個句子而言,句中任何一個詞都有可能是一個事件觸發(fā)詞,因此需要對每個詞都進(jìn)行一次判斷,判斷它是否是真正的觸發(fā)詞。在判斷一個詞是否是觸發(fā)詞時,這個要被判斷的詞就是候選詞。
在得到每個類型下的種子觸發(fā)詞列表后,開始構(gòu)建種子觸發(fā)詞與候選詞之間的關(guān)系特征。本文通過中文WordNet得到種子觸發(fā)詞與候選詞之間的聯(lián)系,為每個候選詞提取特征,提取特征時主要考慮了候選詞與觸發(fā)詞之間的同義關(guān)系、上下位關(guān)系以及部分整體關(guān)系。對于事件類型T下的候選詞w,需要提取w與T的種子觸發(fā)詞列表Lt之間的強(qiáng)關(guān)系特征,同時,還需要提取w與其他類型下種子觸發(fā)詞列表Lo之間的弱關(guān)系特征,實驗中提取的關(guān)系特征如表1所示,其中1/0表示該項特征值為1或0,0/1/2/3…表示該項特征值為非負(fù)整數(shù)。
表1 關(guān)系特征
在2.2節(jié),本文已經(jīng)提取了候選詞與種子觸發(fā)詞的關(guān)系特征,然而僅僅憑候選詞和種子觸發(fā)詞的關(guān)系特征還無法全面地進(jìn)行觸發(fā)詞的識別。因為在真實的事件中,會存在某些詞語,其在一些句子中是觸發(fā)詞,而在另一些句子中不是觸發(fā)詞的情況。如“婚禮”這個詞在以下兩個句子中作用就不一樣。
(i) 小明/和/小芳/今天/在/酒店/舉行/了/婚禮。
(ii) 我/夢想中/的/婚禮/是/浪漫/的。
在第一個句子中,“婚禮”是一個觸發(fā)詞,整個句子表示了一個結(jié)婚事件;而第二個句子中,“婚禮”并不是一個觸發(fā)詞,該句并沒有表示一個結(jié)婚事件。從這兩個句子中可以看出,一個詞是否是某個事件的觸發(fā)詞,不單要考慮這個詞本身,還要考慮這個詞所處的語境。
如果只考慮候選詞和種子觸發(fā)詞的關(guān)系特征,那么針對某一事件類型而言,一個詞語在任何語境下,它的特征都是固定的,因此它要么一直是觸發(fā)詞,要么一直都不是觸發(fā)詞,這一點顯然與真實情況不符。因此還需要將候選詞所在的語境考慮進(jìn)來,根據(jù)語境的不同,相同的詞語得到的特征也會不同。
為使候選詞與語境相關(guān),本文提取了基于上下文的候選詞特征。候選詞上下文即以當(dāng)前候選詞為中心,根據(jù)上下文窗口大小的不同,選取出現(xiàn)在窗口內(nèi)的詞語構(gòu)建特征。以“這家/公司/并購/了/多家/公司”為例,當(dāng)候選詞為“并購”,上下文窗口大小為3時,所提取的上下文為“公司/并購/了”,以此類推,當(dāng)上下文窗口大小為5時,所提取的上下文為“這家/公司/并購/了/多家”?;谶@個方法,利用Word2Vec將候選詞上下文映射成向量,拼接后即為候選詞的上下文特征。
本節(jié)主要闡述事件檢測的基礎(chǔ)模型和遷移模型,基于2.2節(jié)和2.3節(jié)提取的特征,本文的基礎(chǔ)模型基于卷積神經(jīng)網(wǎng)絡(luò)設(shè)計。卷積神經(jīng)網(wǎng)絡(luò)在圖像處理領(lǐng)域已經(jīng)取得非常好的效果,在自然語言處理中也發(fā)揮著越來越重要的作用,其已被驗證可以很好地捕獲自然文本的上下文信息。與圖像處理不同的是,在自然語言處理中,卷積神經(jīng)網(wǎng)絡(luò)的輸入是詞向量矩陣。與此同時,由于本文遷移學(xué)習(xí)所采用的遷移方式是參數(shù)遷移(模型遷移),因此遷移模型同樣基于卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行設(shè)計,結(jié)構(gòu)與基礎(chǔ)模型相似。
2.4.1 事件檢測的基礎(chǔ)模型
基于卷積神經(jīng)網(wǎng)絡(luò)的特性,本文設(shè)計的基礎(chǔ)模型如圖2上半部分所示。首先候選詞上下文的詞向量經(jīng)過拼接后,通過卷積神經(jīng)網(wǎng)絡(luò)的卷積層進(jìn)行卷積操作,之后將得到的特征圖經(jīng)過最大池化層進(jìn)行池化。池化之后的輸出與2.2節(jié)提取的候選詞與種子觸發(fā)詞的關(guān)系特征進(jìn)行拼接,將拼接后的向量輸入到全連接層中。網(wǎng)絡(luò)的最后是Softmax輸出層,輸出層類別數(shù)是2類,即判斷候選詞是否是該事件類型下真正的觸發(fā)詞。
2.4.2 事件檢測的遷移模型(TransCNN)
本文設(shè)計的事件遷移模型稱為TransCNN(Transfer CNN),為方便闡述,后文有時候會直接以TransCNN表示遷移模型。由于本文所使用的遷移方式是參數(shù)遷移(模型遷移),因此TransCNN的整體網(wǎng)絡(luò)結(jié)構(gòu)與基礎(chǔ)模型相似,TransCNN將基礎(chǔ)模型的全連接層和輸出層刪除,并添加自己的全連接層和輸出層。同時在TransCNN中,從基礎(chǔ)模型繼承過來的那部分網(wǎng)絡(luò)(卷積層和池化層等),其參數(shù)與基礎(chǔ)模型一致,即直接使用基礎(chǔ)模型的參數(shù);新添加的網(wǎng)絡(luò)(全連接層等),則由新類型下的數(shù)據(jù)進(jìn)行訓(xùn)練,學(xué)習(xí)出新的參數(shù)。TransCNN的遷移原理如圖2。
ACE2005中文數(shù)據(jù)集中共有33類事件類型,本文每次使用其中的32類去訓(xùn)練基礎(chǔ)模型,然后將訓(xùn)練得到的基礎(chǔ)模型遷移到未參與訓(xùn)練的那一類中去,測試TransCNN的效果。為避免實驗偶然性,這個過程需要循環(huán)33次進(jìn)行,即每次用33類事件之一來驗證遷移學(xué)習(xí)模型。基于這個交叉驗證方法,訓(xùn)練出33個基礎(chǔ)模型,然后將每個基礎(chǔ)模型遷移到對應(yīng)的未參與訓(xùn)練的那一類事件中,保證每個事件類型都會被用來做一次遷移學(xué)習(xí)的驗證。 在訓(xùn)練基礎(chǔ)模型的時候,33個基礎(chǔ)模型都采用2.4.1節(jié)提出的卷積神經(jīng)網(wǎng)絡(luò)模型來訓(xùn)練,33個基礎(chǔ)模型的訓(xùn)練參數(shù)統(tǒng)一如表2。
圖2 遷移模型原理Fig.2 Therory of transform model
參數(shù)參數(shù)值詞向量維度100候選詞上下文窗口大小3卷積層filter數(shù)量64卷積層kerner size3全連接層層數(shù)20全連接層每層神經(jīng)元數(shù)256全連接層激活函數(shù)ReLU優(yōu)化方法AdadeltaDropout層Dropout概率0.5
在基礎(chǔ)模型訓(xùn)練完成之后,將其遷移到對應(yīng)的待驗證事件類型上。對于待驗證事件類型,只需要選取不超過20%的標(biāo)注數(shù)據(jù)作為finetune的訓(xùn)練數(shù)據(jù),對這些訓(xùn)練數(shù)據(jù),提取它們?nèi)康挠|發(fā)詞作為該類型下的種子觸發(fā)詞,然后按照2.2節(jié)和2.3節(jié)構(gòu)造特征,最后對基礎(chǔ)模型進(jìn)行遷移。
在訓(xùn)練遷移模型時,根據(jù)待驗證事件類型的不同,使用的數(shù)據(jù)量不同,其對應(yīng)的遷移網(wǎng)絡(luò)新添加的全連接層的層數(shù)也不同,一般為一到兩層,每層的神經(jīng)元數(shù)設(shè)為256。之后用待驗證事件類型的訓(xùn)練數(shù)據(jù)對遷移網(wǎng)絡(luò)進(jìn)行訓(xùn)練,訓(xùn)練出新加網(wǎng)絡(luò)的參數(shù)。
本文對每個需要驗證的事件類型都做了兩次finetune。第一次用待驗證數(shù)據(jù)中的10%作為訓(xùn)練數(shù)據(jù),對基礎(chǔ)模型進(jìn)行finetune,然后用剩余的90%去測試finetune的效果;第二次用待驗證數(shù)據(jù)中的20%作為訓(xùn)練數(shù)據(jù),對基礎(chǔ)模型進(jìn)行finetune,然后用剩余的80%去測試finetune的效果。同時,每次finetune時所需的種子觸發(fā)詞,為訓(xùn)練數(shù)據(jù)中所有觸發(fā)詞的集合,具體設(shè)置如表 3所示。需要注意的是,對于某些待驗證事件類型,其數(shù)據(jù)量較少,如Acquit類型總共只有3條數(shù)據(jù),由于其10%和20%都不滿一條,因此在實驗中,不使用任何數(shù)據(jù)進(jìn)行finetune,即訓(xùn)練數(shù)據(jù)為0條,此時直接用基礎(chǔ)模型對該事件類型進(jìn)行觸發(fā)詞檢測。
表3 遷移模型訓(xùn)練設(shè)置
按3.1節(jié)的實驗設(shè)置,對ACE2005的33種事件類型,每種類型進(jìn)行兩次finetune,記錄在不同的訓(xùn)練數(shù)據(jù)量下,在觸發(fā)詞識別這項任務(wù)上的表現(xiàn)。
表4 不同方法在ACE2005中文數(shù)據(jù)集上的性能
注:帶*號的是復(fù)現(xiàn)結(jié)果,不帶*號的是原論文中的結(jié)果。
由表4可以看出,在觸發(fā)詞識別這項任務(wù)上,在應(yīng)用本文提出的方法后,只用10%的數(shù)據(jù)進(jìn)行finetune時,平均F1值就已達(dá)到66.1%,接近于state-of-art的69.0%。當(dāng)用20%的數(shù)據(jù)進(jìn)行finetune時,平均F1值可以達(dá)到69.6%,已經(jīng)超越state-of-art的結(jié)果。即用少量標(biāo)注數(shù)據(jù)達(dá)到了其他方法使用全部數(shù)據(jù)的效果,大大改善了事件檢測任務(wù)中必須為每個事件類型標(biāo)注大量語料的不足,并且借助其他類型的大量數(shù)據(jù),解決了各個事件類型數(shù)據(jù)不互通的問題。
雖然在TransCNN-20%的效果遠(yuǎn)遠(yuǎn)好于TransCNN-10%的效果,但是不代表隨著數(shù)據(jù)量的增長,其效果也會呈線性增長,其效果會在數(shù)據(jù)量達(dá)到一定閾值后趨于平穩(wěn)。
本文分析了目前已有的事件檢測技術(shù)的研究現(xiàn)狀和不足,借鑒已有的研究成果,提出了一個基于遷移學(xué)習(xí)的基礎(chǔ)模型,該模型從已標(biāo)注的事件數(shù)據(jù)中,收集每個事件類型下的觸發(fā)詞,隨機(jī)選取一部分觸發(fā)詞作為該類型的種子觸發(fā)詞。然后以提取的種子觸發(fā)詞為基礎(chǔ),基于種子觸發(fā)詞和外部詞典,構(gòu)造候選詞與種子觸發(fā)詞的強(qiáng)弱關(guān)系特征,再融合基于上下文的候選詞特征,為每個候選詞構(gòu)建了獨一無二的特征?;跇?gòu)建的特征,利用卷積神經(jīng)網(wǎng)絡(luò)設(shè)計觸發(fā)詞識別的基礎(chǔ)模型和遷移模型,最終遷移模型可以在20%的訓(xùn)練數(shù)據(jù)下,取得了優(yōu)于當(dāng)前主流方法的事件檢測效果。
本文還存在很多值得進(jìn)一步研究的問題。比如在將基礎(chǔ)模型遷移到新的事件類型時,仍然需要人工標(biāo)注少量的新類型的事件數(shù)據(jù),如果不進(jìn)行數(shù)據(jù)的標(biāo)注,則遷移效果會下降,在后續(xù)研究中需要進(jìn)一步優(yōu)化。另外,本文的研究目前只是針對事件的檢測,對事件論元的抽取還未涉及,未來將研究對事件論元的識別,形成完整的事件抽取工作。