楊 昊,趙 剛,王興芬
(北京信息科技大學信息管理學院,北京 100192)
作為信息抽取[1]的一部分,事件抽取[2]在輿情分析[3]、自動問答[4]和知識推理[5]等方面具有現實意義。根據自動內容抽取ACE(Automatic Content Extraction)測評會議對事件的定義,事件是指發生了的事情,包含直接引起事件發生的觸發詞和事件的參與者。事件抽取是指要求人們用人工或自動的方法,從半結構化、非結構化數據中識別出與目標相關的觸發詞和事件論元。其中,觸發詞作為事件的核心詞,決定著事件的類型,故事件觸發詞抽取作為事件抽取的子任務具有重要的現實意義。現階段事件抽取的方法可以分為3類[6]:基于特征的方法、基于結構的方法和基于神經網絡的方法。
傳統的方法通常為基于特征或結構的方法,大多是利用NLP(Natural Language Processing)工具提取詞法特征(如詞干、詞性、實體信息等)或結構信息(如句內依存關系、句間特征等)。Ahn[7]利用詞法特征結合最大熵模型進行事件抽取,將抽取任務模塊化后轉化為多個串行的子任務。為解決上述所提方法在事件抽取中正反比例不平均和數據稀疏的問題,趙妍妍等[8]在此基礎上,同樣利用詞法特征,首先通過《同義詞詞林》進行觸發詞擴展,并構建二元對照表,再利用最大熵模型進行多元分類,完成了事件抽取。然而,文獻[8]仍舊沒能解決過度依賴語料質量和語料規模的問題。付劍鋒等[9]則先對詞性、位置等不同特征賦予不同的權重,再利用無監督聚類完成事件要素識別,擺脫了對語料庫的過度依賴。為從文本中獲取句間及篇幅間的結構信息,Lin等[10]提出了一種概率框架模型完成事件抽取。為從文本中獲取句內的結構信息,高源等[11]利用詞語詞性和依存句法分析路徑中的位置、依存句法樹結構等信息,構造“觸發詞-實體”描述對,進而再利用SVM(Support Vector Machine)模型進行分類,完成事件檢測和類型識別。為解決生物事件中觸發詞存在語義歧義的問題,李浩瑞等[12]提取了詞性、距離和依存句法等特征,并線性組合SVM模型和隨機森林模型,更好地完成了生物觸發詞檢測的任務。這些傳統的方法,雖能捕捉事件結構性語法特征,但還未捕捉和利用事件語義特征。
近年來,隨著神經網絡的發展,在詞語語義特征提取層面,研究人員通常采用word2vec[13]方法。在事件抽取領域中,也誕生了諸多基于卷積神經網絡CNN(Convolutional Neural Network)[14]或循環神經網絡RNN(Recurrent Neural Network)[15]的事件抽取方法。Nguyen等[16]利用傳統CNN模型,在不依賴大量外部資源的情況下提取隱式特征。由于傳統CNN池化方式只能捕捉句子中一個最重要的信息,有可能錯過其他有價值的內容,造成在包含多個觸發詞的語句上進行事件抽取的效果不佳。為解決此問題,Chen等[17]提出了DMCNN(Dynamic Multi-pooling Convolutional Neural Network)模型,在對初始向量進行卷積操作后,通過對候選觸發詞的上下兩段進行分段最大池化,再將其與語義向量進行拼接,最后利用單層神經網絡完成多觸發詞抽取任務。然而,僅僅利用神經網絡模型進行事件的抽取,雖能提取事件語義特征,但仍忽略了事件的結構性語法特征。Nguyen等[18]提出了BiLSTM-GCN(Bidirectional Long Short-Term Memory-Graph Convolutional Network)模型,利用圖卷積訓練依存句法關系,在DMCNN基礎上進一步改進池化方式,融入了實體本身信息,同時也在初始向量生成環節使用了BiLSTM模型。但是,其忽略了不同詞語對句子級語義特征的貢獻程度不同的情況,故未能完全捕獲事件句子級語義特征。為融合事件多維度特征,苗佳等[19]利用CNN-BiGRU(Convolutional Neural Network-Bidirectional Gating Recurrent Unit)模型,通過CNN獲取詞級特征,通過BiGRU獲取句子級特征,提高了事件抽取的效率,更好地完成了事件觸發詞抽取任務。然而CNN-BiGRU模型忽略了句內各詞語之間的語法結構信息。針對中文詞匯的歧義問題,丁玲等[20]提出了分層次語義融合模型,首先基于字符序列進行標注,并設計了字符-詞語、詞語-句子的融合門機制,消除了詞匯歧義,最后利用BiLSTM-CRF模型完成事件抽取。類似地,武國亮等[21]提出了FB-Lattice-BiLSTM-CRF(FeedBack-Lattice-Bidirectional Long Short-Term Memory-Conditional Random Field)模型,對僅能捕獲字粒度語義信息的BiLSTM-CRF模型進行詞語維度和實體維度的信息增強,提取包含命名實體識別的分詞結果并將其輸入融合了Lattice機制和BiLSTM網絡的共享層,進而完成事件抽取任務,更好地解決了中文詞匯歧義的問題。然而,分層次語義融合模型和FB-Lattice-BiLSTM-CRF模型在忽視了句內語法結構信息的同時也未將句子級語義特征完全捕獲。
綜合上述分析可知,現有方法都只側重事件語義或語句結構的某一方面,未能將事件的結構性語法特征和事件語義特征兩者完全捕捉并融合,存在不能夠準確表征事件觸發詞的問題。針對這一問題,本文提出一種集傳統方法與神經網絡方法優點于一體的混合模型。該模型將事件的結構性語法信息與神經網絡所提取的事件語義信息有機融合,能夠同時包含事件結構性語法特征與事件語義特征,2種特征融合之后,能夠在低維空間中更準確地表示事件觸發詞,更好地支撐事件觸發詞抽取任務。
本文中的事件語義特征是指事件中的每個詞語在特定語句中所帶有的語義信息,在本文中具體包含詞級語義特征[19]和句子級語義特征[19]。事件的結構性語法特征是指事件中的每個詞語在其特定語句中的位置及依賴關系,在本文中具體包含位置特征[17]和依存句法特征[12]。
圖1給出了事件結構性語法特征和事件語義特征的示例。圖1a中,“他離開了家來到學校”中的“離開”為“移動”類型觸發詞;圖1b中,“他離開了工作多年的崗位”中的“離開”為“離職”類型觸發詞。若忽略事件語義特征,僅考慮事件結構性語法特征,由于“離開”均為依存樹結構中的根節點,故無法區分2個觸發詞類型;若忽略事件結構性語法特征,僅考慮事件語義特征,則在“他離開了工作多年的崗位”中忽略了“工作”一詞在句中的結構信息,便會誤將其識別為觸發詞。可見,事件結構性語法特征與事件語義特征在事件觸發詞抽取任務當中存在融合的必要性。

Figure 1 Examples of event structural grammatical features and event semantic features圖1 事件結構性語法特征和事件語義特征示例
本文所提出的混合模型由初始化向量模型和神經網絡模型2部分融合而成,其功能分別為向量初始化和事件語義特征提取。初始向量中融合了詞語語義特征和事件結構性語法特征;事件語義特征提取由神經網絡模型完成,在已融合了事件結構性語法特征的初始向量上,進一步提取事件語義特征,同時也完成了事件結構性語法特征和事件語義特征的融合。混合模型工作過程如圖2所示。

Figure 2 Process of hybrid model圖2 混合模型工作過程
對于輸入的句子序列,首先將句子進行分詞處理,如式(1)所示:
Sentence={w1,w2,…,wi,…,wn}
(1)
其中,n為句子中的詞語個數,wi(1≤i≤n)為第i個詞語。將句子進行向量化表示為Vsentence,如式(2)和式(3)所示:
Vsentence={V1,V2,…,Vn}
(2)
Vi=[semi,loci,depi]
(3)
其中,Vi為句子中第i個詞語的向量化表示,由3部分拼接而成:第i個詞語的語義向量semi,表征詞語的語義特征;位置向量loci,表征詞語的位置特征;依存句法樹向量depi,表征詞語的依存句法特征。Vi融合了詞語的語義特征和事件結構性語法特征。為了便于后續網絡模型訓練,將句子長度n設為固定長度length,若句子實際長度大于length則直接舍去多出部分,小于length則用零補齊表示向量。
2.1.1 語義向量
在多種自然語言處理任務當中,詞語的語義信息都充當了重要角色。考慮目標詞的上下文,以及用更少的維度表達目標詞的語義信息,本文語義向量表示采用常用的word2vec。word2vec包括Skip-Gram[13]和CBOW[13]2種模型,其中Skip-Gram為利用中心詞預測上下文詞的模型;CBOW為利用上下文詞預測中心詞的模型。本文采用Skip-Gram模型,來獲得詞語的語義向量表示,即semi,并利用Huffman Softmax來提高訓練效率。
2.1.2 位置向量
考慮到詞語的相對位置會影響其在語句中的結構性作用,進而影響事件觸發詞的抽取,本文將詞語的相對位置信息融入初始向量中。常見的相對位置編碼有:正弦位置編碼[22]、學習位置編碼和相對位置表達[23]。本文采用正弦位置編碼,如式(4)和式(5)所示:
PEpos,2I=sin(pos/100002I/d)
(4)
PEpos,2I+1=cos(pos/100002I+1/d)
(5)
其中,pos為詞語在句子中的位置,d為位置向量的長度,I指位置向量的一個維度,取值在[0,d)。例如,pos=3,d=30,則該位置詞語的位置向量為:[sin(3/100000/30),cos(3/100001/30),sin(3/100002/30),cos(3/100003/30),…]。最終獲得詞語的位置向量loci。
2.1.3 依存句法樹向量
依存句法由法國語言學家Tesniere最先提出。它將句子分析成一棵依存句法樹,描述了各個詞語之間的依存關系,也指出了詞語之間在語法上的搭配關系。這種搭配關系包含了結構性的語法特征。基于此,本文提出一種基于依存句法樹的向量表征方式,用于事件觸發詞抽取任務當中,如圖3所示,其中SBV表示主謂關系,VOB表示動賓關系,“買”為核心謂詞。

Figure 3 Example of dependency parsing tree圖3 依存句法樹示例
由于事件觸發詞為事件的核心詞,故其在依存句法樹中應該距核心謂詞較近,即事件觸發詞節點在依存句法樹結構中深度較淺。本文將詞語節點所在依存句法樹中的深度進行one-hot編碼,最終獲得詞語的依存句法樹向量depi。
事件觸發詞抽取是從詞語的初始向量中進一步提取特征,進而進行任務分類。本文采用多維度語義特征提取,利用傳統CNN進行詞級語義特征提取,利用BiGRU捕獲句子級語義特征。由于在捕獲句子級語義特征的過程中,每一詞語對句子級語義特征的影響程度不同,故本文提出一種針對事件觸發詞抽取任務的E-attention(Events- attention)模型,將其應用于BiGRU,利用BiGRU-E-attention模型完成句子級語義特征提取。從詞級語義特征和句子級語義特征2個維度進行特征提取,以更好地支撐事件觸發詞的抽取任務。
2.2.1 CNN提取詞級語義特征
CNN是一種具有表征學習能力的前饋神經網絡,利用其卷積過程中的表征學習能力能夠捕獲目標詞與周圍詞之間的相互關系,從而提取句子中的詞級語義特征。其中,卷積是利用多個卷積核滑過句子初始矩陣,與對應位置相乘的過程,具體過程如圖4所示。

Figure 4 Extraction of semantic features at the word level using CNN圖4 CNN提取詞級別語義特征
句子的初始矩陣表示為Vsentence={V1,V2,…,Vn},其中,Vsentence∈Rn×D,D為詞語初始向量的維度,n為詞語個數。設一個卷積核為u∈Rk×D,其寬度與詞語初始向量的維度相同,對Vsentence進行卷積操作,如式(6)所示:
ci=f(u·Vi-k/2:i+k/2+b)
(6)
其中,Vi-k/2:i+k/2表示詞語wi周圍k個詞語的特征;f(·)為非線性激活函數;b為偏置值。若詞語左右詞語數小于k/2,則用零補全。一個卷積核掃描句子所有詞語后,得到該句子的特征,其表示如式(7)所示:
g=[c1,c2,…,cn]
(7)
其中,g∈Rn,n為句子的長度。利用m個不同的卷積核,則得到整個句子的特征矩陣,其表示如式(8)所示:
C=[g1,g2,…,gm]
(8)
其中,C∈Rn×m,C中每一行代表當前詞語通過CNN所獲取的詞級語義特征。
2.2.2 BiGRU-E-attention提取句子級語義特征
RNN是一類用于處理序列數據的神經網絡。傳統的RNN會隨著時間序列長度的增加,發生梯度爆炸和梯度消失等問題,影響學習效果。為解決該問題,LSTM(Long Short-Term Memory network)和GRU(Gating Recurrent Unit)相繼被提出。GRU與LSTM在學習效果上相近,但GRU具有更少的權值參數、更快的收斂速度和更好的學習效率,故本文采用GRU模型。GRU模型的前向傳播如式(9)~式(13)所示:
zt=σ(Wz·[ht-1,Vt])
(9)
rt=σ(Wr·[ht-1,Vt])
(10)
(11)
(12)
yt=σ(Wo·ht)
(13)

由于單向GRU模型只能記憶已輸入的詞語特征,無法預測未輸入的詞語特征,故本文使用雙向GRU模型,即BiGRU。將BiGRU兩方向的輸出結果相加得H=[h1,h2,…,hn]T,hi∈R1×s,H∈Rn×s,s為BiGRU隱藏層神經元的個數。
在獲取詞語句子級語義特征的過程中,考慮到每一個詞語對句子級語義特征的影響程度不同,本文引入了注意力機制,獲得了效果更優的句子級語義特征。注意力機制首先應用于翻譯任務,取得了優異效果,后續被推廣至諸多任務當中。現有注意力機制演變出了dot-product attention[22]、additive attention[24]等多種形式,但上述形式僅能得到句子的整體向量表示,無法在每一個詞語向量中融入具有注意力機制的句子級別語義特征,不能應用于事件觸發詞抽取任務。故本文提出了針對此任務的E-attention模型,其具體實現過程如式(14)和式(15)所示:
P=softmax(H·Wa)
(14)
Q=P*H
(15)
其中,Wa為注意力權重參數,Wa∈Rs;P為各個狀態的權重矩陣;Q=[q1,q2,…,qn]T,qi∈R1×s,Q∈Rn×s,每一行為句子中每個詞語的句子級語義特征;*表示矩陣按行對應相乘。句子級語義特征提取模型如圖5所示。

Figure 5 Extraction of semantic features at the sentence level using BiGRU-E-attention 圖5 BiGRU-E-attention 提取句子級語義特征
上述詞級語義特征為C∈Rn×m,句子級語義特征為Q∈Rn×s,為了充分融合詞級語義特征和句子級語義特征,以更準確地表征事件觸發詞,本文選擇的特征融合方式如式(16)所示:
y=[C,Q]
(16)
其中,y∈Rn×(m+s),由C和Q二者拼接而成。事件結構性語法特征和事件語義特征融合于y向量之中,將y向量傳入分類器,利用softmax激活函數進行類別選擇,完成事件觸發詞的抽取。分類器如式(17)所示:
O=softmax(y·W+b1)
(17)
其中,W為權重矩陣,b1為偏置值。本文利用混合模型抽取事件觸發詞的具體流程如圖6所示。

Figure 6 Event trigger word extraction using hybrid model 圖6 混合模型事件觸發詞抽取
本文實驗數據集采用在事件觸發詞抽取領域最常用的CEC中文突發語料庫(https://github.com/manduner/CEC-Corpus)和ACE2005英文語料庫(https://catalog.ldc.upenn.edu/LDC2006T06),并將數據集按8∶2比例劃分為訓練集與測試集。
CEC中文突發語料庫是由上海大學語義智能實驗室構建的開源數據集。該語料庫包含地震、火災、交通事故、恐怖襲擊和食物中毒等5類突發事件的新聞報道,共11 908個突發事件,均用XML語言標注。
ACE2005英文語料庫共包含599篇微博、廣播新聞、新聞組和廣播對話等文檔。該語料庫共定義了8個大類,33個子類事件。本文將識別子類事件作為任務。
事件觸發詞抽取包含2個子任務:觸發詞的位置識別和觸發詞的分類,即分別轉化為句內詞語的二分類與多分類任務。
由于數據集的分布不均勻,本文采用F1值作為衡量本文模型整體穩定性的指標,具體計算如式(18)所示:
(18)
其中,precision表示分類任務的準確率,recall表示分類任務的召回率。F1值越大,表示模型的整體穩定性越高。
本文將所提混合模型與本領域其他具有代表性的基準模型相對比,同時為探究所提模型的有效性進行了消融實驗,其中消融實驗的比較對象包括:(1)刪除依存句法樹向量(no dependency tree);(2)刪除依存句法樹向量和E-attention模型(no dependency tree or E-attention);(3)采用學習位置編碼替代正弦位置編碼(learned positional embedding)。
整體而言,本文所提的混合模型在事件抽取任務當中取得的效果優于傳統方法和基于神經網絡方法的,更加證實了本文混合模型的有效性,以及充分捕捉事件結構性語法特征和事件語義特征的必要性。
表1為CEC中文突發語料庫上觸發詞位置識別結果。由表1可知,在CEC中文突發語料庫上,觸發詞位置識別任務中,本文所提模型雖然準確率較FB-Lattice-BiLSTM-CRF的低了2.27%,但是召回率提高了3.85%,F1值提高了0.86%;本文模型的召回率較no dependency tree的低了0.4%,但準確率提高了0.54%,F1值提高了0.08%。表2為CEC中文突發語料庫上觸發詞分類結果。由表2可知,在觸發詞分類任務中,本文所提混合模型分類結果的準確率、召回率及F1值均為最高。故在CEC中文突發語料庫上,本文模型在事件觸發詞抽取任務代表性模型對比實驗中,具有最高的F1值,效果最優。

Table 1 Position recognition of trigger words on CEC corpus
本文模型相比于FB-Lattice-BiLSTM-CRF有以下幾點優勢:(1)融入了依存句法信息,能夠捕獲事件中每個詞語在句中的結構性語法特征;(2)在捕獲事件句子級語義特征的網絡模型中加入了特定的E-attention模型,使得事件觸發詞的表征過程中,有側重地關注句中詞語,捕獲了更為準確的句子級語義特征,取得了更優異的效果。在位置編碼中,正弦位置編碼相對于學習位置編碼,不易受訓練集句子過短的影響,故其整體效果優于學習位置編碼的。由于在中文事件觸發詞抽取任務中,存在中文分詞歧義的問題,對依存句法分析的準確性有一定影響,故本文模型相比于no dependency tree,在F1值上的提升效果不明顯。

Table 2 Trigger word classification on CEC corpus
本文也在ACE2005英文語料庫上做了相關實驗,并與本領域的代表性模型進行了比較。
由表3可知,在觸發詞位置識別任務中,本文的混合模型雖然準確率與DMCNN的相比低了6.6%,但召回率提高了8.3%,F1值提高了1.4%。由表4可知,在觸發詞分類任務中,本文的混合模型雖然準確率與DMCNN的相比低了4.8%,但是召回率提高了12%,F1值提高了1.7%。故在ACE2005英文語料庫上,在事件觸發詞抽取任務代表性模型對比實驗中,本文模型具有最高的F1值,效果最優。

Table 3 Position recognition of trigger words on ACE2005 English corpus

Table 4 Trigger word classification on ACE2005 English corpus
DMCNN在解決句內多觸發詞問題時,利用了分段池化的技術手段,因此其在觸發詞抽取的準確率上取得了優異的效果。然而,分段池化卻弱化了句內兩段間詞語的結構性語法特征,導致其在觸發詞抽取的任務中效果遜于本文所提模型的。
為探索多維度特征融合方式對事件觸發詞抽取任務的影響,本文在CEC中文突發語料庫上,對詞級語義特征和句子級語義特征的融合方式進行了進一步的研究。現有的特征融合方式主要有特征向量相乘(MUL)[31]、相加(ADD)[31]和拼接(CONCAT)[32]3種方式。分別基于這3種融合方式的實驗結果如表5和表6所示。

Table 5 Comparison of feature fusion methods for position recognition of trigger words on CEC corpus

Table 6 Comparison of feature fusion methods of trigger word classification on CEC corpus
在3種特征融合方式中,特征向量拼接的效果明顯優于相加和相乘的。經分析,可能有以下2個方面的原因:(1)由于特征向量的相乘和相加的融合方式需要對特征向量先進行維度變換,而維度變換的過程在一定程度上弱化了原始特征;(2)在相乘和相加的過程中,改變了特征的原始值,在一定程度上破壞了特征內部的隱式關系。因此,拼接的特征融合方式展示了其在該任務中的優越性。
本文損失函數使用交叉熵函數,優化器選擇Adam優化器。該優化器是有效的隨機優化方法,能夠在學習的過程中自動調整學習率。本文經過反復實驗比較,選擇出最適合于本文任務的超參數,如表7所示。

Table 7 Hyper-parameter setting
句子長度的設置對實現事件觸發詞的準確表征起到了至關重要的作用。因此,對句子長度length的深入探究具有重要的現實意義。如圖7所示,在CEC中文突發語料庫和ACE2005英文語料庫中,句子的長度分布大體相似,整體分布不均勻,其中約85%的句子長度小于30,故設置句子長度為30可以充分表示句子特征。長度不足的句子用全零向量補全,因此句子長度設置為30又可控制句內全零向量的個數,減少了句內噪聲。故本文將句子長度length設置為30。

Figure 7 Distribution of sentence length 圖7 句長分布
CNN卷積核的窗口大小與事件詞級語義特征緊密相關。本文以CEC中文突發語料庫上的觸發詞分類任務為例,對CNN卷積核的窗口大小k的選取進行了深入的研究和分析。如圖8所示,當卷積核的窗口設置為2時F1值最大,故當卷積核窗口設置為2時效果最優。卷積核窗口設置過小,無法完全學習詞語周圍詞級別語義特征,窗口設置過大,便會淡化其局部特征,故窗口大小為2的卷積核最為適合事件觸發詞抽取任務。

Figure 8 Effection of window size on trigger wordsclassification model on CEC corpus圖8 CEC中文突發語料庫-觸發詞分類-窗口大小對模型效果影響
針對事件觸發詞抽取任務,本文提出了一種融合事件結構性語法特征和事件語義特征的混合模型。此模型首先利用初始化向量模型,根據本文所提出的依存句法向量的表征方式,在初始向量中融合了事件結構性語法特征;再利用神經網絡模型,在將CNN所提取的詞級語義特征與BiGRU-E- attention所提取的句子級語義特征融合的同時,也進一步融合了事件結構性語法特征與事件語義特征。經實驗對比可知,相比于其他事件觸發詞抽取模型,本文模型在中英數據集上的抽取效果均有了進一步的提升。在未來的研究中,將考慮對語句中的不同依存關系進行分類表征,并將其應用在更多其他下游任務中。