閆 雄,段躍興,張澤華
(太原理工大學(xué)信息與計(jì)算機(jī)學(xué)院,山西 晉中030600)
互聯(lián)網(wǎng)中的信息大多都是無(wú)結(jié)構(gòu)的,實(shí)體關(guān)系抽取旨在從這些非結(jié)構(gòu)化的信息中快速、準(zhǔn)確地抽取出用戶所需要的信息。實(shí)體關(guān)系抽取在信息抽取[1]、智能問(wèn)答系統(tǒng)[2]和知識(shí)圖譜[3]等應(yīng)用中發(fā)揮著重要的作用。實(shí)體關(guān)系抽取可以表述為:從一段存在2個(gè)實(shí)體(Entity)的文本S中,確定其中目標(biāo)實(shí)體對(duì)〈e1,e2〉之間的語(yǔ)義關(guān)系r,例如在句子〈e1〉People〈/e1〉 have been moving back into 〈e2〉downtown〈/e2〉中,people和downtown 2個(gè)實(shí)體之間存在Entity-Destination的關(guān)系。根據(jù)對(duì)數(shù)據(jù)集的標(biāo)注程度,實(shí)體關(guān)系抽取可以分為有監(jiān)督、半監(jiān)督和無(wú)監(jiān)督3類。本文旨在研究有監(jiān)督實(shí)體關(guān)系抽取,它將實(shí)體關(guān)系抽取問(wèn)題轉(zhuǎn)化為一個(gè)分類問(wèn)題。有監(jiān)督實(shí)體關(guān)系抽取方法主要包括傳統(tǒng)方法和深度學(xué)習(xí)方法,前者主要采用特征向量和核函數(shù)的方法進(jìn)行實(shí)體關(guān)系抽取,其依賴于自然語(yǔ)言處理NLP(Natural Language Processing)[4]工具預(yù)先提取文本特征,但是這些工具本身就存在不足,使用這些工具會(huì)造成錯(cuò)誤傳遞問(wèn)題,影響最終的分類效果。相比傳統(tǒng)方法,深度學(xué)習(xí)方法可以自動(dòng)獲取更多有效特征,并且不需要借助自然語(yǔ)言處理工具就可以明顯提高分類效果,因此國(guó)內(nèi)外的研究者在深度學(xué)習(xí)的基礎(chǔ)上進(jìn)行了很多實(shí)體關(guān)系抽取的研究。
深度學(xué)習(xí)方法通過(guò)學(xué)習(xí)每個(gè)詞的分布式表示,不僅能夠自動(dòng)提取文本特征,而且還能夠很好地利用文本結(jié)構(gòu)特征,是當(dāng)前實(shí)體關(guān)系抽取方法的研究熱點(diǎn)。Socher等[5]通過(guò)循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)學(xué)習(xí)句子的句法結(jié)構(gòu)信息進(jìn)行實(shí)體關(guān)系抽取。Zhang等[6]使用雙向的RNN進(jìn)行關(guān)系抽取,但是RNN存在長(zhǎng)距離依賴問(wèn)題,不能充分考慮上下文語(yǔ)義關(guān)系。Zeng等[7]引入了詞的位置向量特征(Position Feature)并利用卷積神經(jīng)網(wǎng)絡(luò)提取句子級(jí)別和詞匯級(jí)別的特征,連接這2個(gè)特征作為關(guān)系分類的最后特征向量。dos Santos等[8]在卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上,提出了一種新的排序損失來(lái)進(jìn)行關(guān)系抽取。王林玉等[9]提出了基于卷積神經(jīng)網(wǎng)絡(luò)和關(guān)鍵詞策略的實(shí)體關(guān)系抽取方法,通過(guò)關(guān)鍵詞抽取算法TP-ISP(Term Proportion-Inverse Sentence Proportion)獲得關(guān)鍵詞特征,以彌補(bǔ)卷積神經(jīng)網(wǎng)絡(luò)在特征提取方面的不足,從而提高每個(gè)類別的區(qū)分度。肜博輝等[10]提出了一種基于多通道卷積神經(jīng)網(wǎng)絡(luò)關(guān)系抽取的方法,使用不同的詞向量作為神經(jīng)網(wǎng)絡(luò)不同通道的輸入,以表征更多的語(yǔ)義信息。實(shí)體關(guān)系抽取是一個(gè)序列到標(biāo)簽的分類問(wèn)題,分類結(jié)果取決于句子序列的整體語(yǔ)義信息。循環(huán)神經(jīng)網(wǎng)絡(luò)能夠?qū)W習(xí)高質(zhì)量的文本信息,但是它的計(jì)算能力依賴于序列的長(zhǎng)度,當(dāng)句子序列較長(zhǎng)的時(shí)候,提取句子特征時(shí)會(huì)受到影響,并且每一個(gè)詞的編碼都需要借助上一個(gè)詞的表示,因此不能并行計(jì)算。卷積神經(jīng)網(wǎng)絡(luò)可以在句子序列中進(jìn)行并行計(jì)算,CNN也考慮了多個(gè)n-gram特征,在一定程度上也可以緩解長(zhǎng)距離依賴問(wèn)題。
注意力機(jī)制[11]是由Treisman等通過(guò)模擬人類視覺(jué)注意力機(jī)制提出的模型。通過(guò)輸入序列與標(biāo)簽之間的相關(guān)性,從而為輸入序列中對(duì)分類結(jié)果影響大的詞分配較大的權(quán)重。自注意力機(jī)制[11]是對(duì)注意力機(jī)制的改進(jìn),主要用于序列建模的任務(wù)中。在自注意力機(jī)制中,權(quán)重是通過(guò)輸入序列中詞之間的相似度函數(shù)動(dòng)態(tài)得到的,為聯(lián)系緊密的2個(gè)詞分配較大的權(quán)重,輸入序列中的詞的語(yǔ)義信息取決于整個(gè)輸入序列,因而能夠更充分地獲取句子中詞的上下文語(yǔ)義信息,而不是由它們的相對(duì)位置預(yù)先確定。因此,本文采用自注意力機(jī)制和卷積神經(jīng)網(wǎng)絡(luò)融合的方法來(lái)進(jìn)行關(guān)系抽取,解決了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)對(duì)序列中詞的語(yǔ)義信息學(xué)習(xí)不足的問(wèn)題。
綜上所述,由于卷積核是固定的,單一地利用CNN進(jìn)行實(shí)體關(guān)系抽取,易導(dǎo)致句子中詞的上下文語(yǔ)義提取得不夠充分。因此,本文利用自注意力機(jī)制和CNN融合的方法進(jìn)行實(shí)體關(guān)系抽取,首先通過(guò)自注意力機(jī)制處理數(shù)據(jù)集以增強(qiáng)句子中詞的上下文語(yǔ)義,然后通過(guò)CNN自動(dòng)提取特征。
本節(jié)將介紹一種新的自注意力機(jī)制和卷積神經(jīng)網(wǎng)絡(luò)融合的模型Self-ATT-CNN。該模型的結(jié)構(gòu)圖如圖1所示。

Figure 1 Structure of Self-ATT-CNN model圖1 Self-ATT-CNN模型結(jié)構(gòu)圖
相比傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò),本文模型在輸入層和卷積層之間加入了自注意力層。本文模型主要由4部分組成:(1)輸入映射層,通過(guò)查詢預(yù)先訓(xùn)練好的詞向量表,將文本中的詞映射成低維的實(shí)數(shù)向量,組成句子矩陣。(2)自注意力層,通過(guò)自注意力對(duì)輸入的原始詞向量特征WF(Word vector Feature)進(jìn)行計(jì)算得到具有更加豐富的上下文語(yǔ)義的詞的表示。之后將詞的位置向量特征PF(Position vector Feature)進(jìn)行融合得到卷積層的輸入。(3)卷積神經(jīng)網(wǎng)絡(luò)層,通過(guò)卷積神經(jīng)網(wǎng)絡(luò)的卷積、池化運(yùn)算提取句子的特征,組合為最后的特征向量。(4)輸出層,將通過(guò)卷積神經(jīng)網(wǎng)絡(luò)提取的特征向量輸入分類器中進(jìn)行分類,輸出最終的分類結(jié)果。
輸入映射層將句子序列中的每個(gè)詞轉(zhuǎn)換為向量表達(dá),一個(gè)句子序列可以表示為一個(gè)矩陣。本文使用連續(xù)詞袋模型CBOW(Continuous Bag Of Words)模型對(duì)1 000億字的谷歌新聞?wù)Z料進(jìn)行訓(xùn)練[12],得到300維的詞向量,它帶有潛在的句法和語(yǔ)義信息。對(duì)于輸入句子序列S:
S={w1,w2,…,wn}
(1)
其中,n表示句子S中詞的個(gè)數(shù)。通過(guò)查找詞向量矩陣將每個(gè)詞轉(zhuǎn)換為向量的計(jì)算方式,如式(2)所示:
rw=Wword×Vw
(2)
其中,rw表示詞的向量表示。Wword∈Rdw×|v|是所有詞的詞向量矩陣,dw表示詞的向量維度,|v|是數(shù)據(jù)集中所有詞的個(gè)數(shù)。Vw是詞的one-hot編碼表示。對(duì)于在詞向量矩陣中不存在的詞,本文將對(duì)其采用隨機(jī)初始化的方式進(jìn)行表示。
傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)主要是采用遞歸神經(jīng)網(wǎng)絡(luò)(RNN)或卷積神經(jīng)網(wǎng)絡(luò)(CNN)對(duì)句子序列進(jìn)行編碼。這兩種神經(jīng)網(wǎng)絡(luò)可以隱含地學(xué)習(xí)句子中詞的上下文信息,但是由于長(zhǎng)距離依賴性問(wèn)題,它們都無(wú)法很好地學(xué)習(xí)詞上下文信息,因而對(duì)句子整體特征提取的效果不是很好。為了能夠充分捕獲詞的上下文語(yǔ)義信息,本文引入自注意力機(jī)制。自注意力機(jī)制已經(jīng)成功應(yīng)用于各種自然語(yǔ)言處理任務(wù),如機(jī)器翻譯[13]和語(yǔ)義角色標(biāo)注[14]。
2.2.1 自注意力機(jī)制
自注意力機(jī)制通過(guò)計(jì)算2個(gè)詞之間的相似性將句子中任意2個(gè)詞聯(lián)系起來(lái),就可以直接捕獲句子序列中任意2個(gè)詞之間的關(guān)系,無(wú)論這2個(gè)詞之間距離如何。因此,2個(gè)相距較遠(yuǎn)的詞之間語(yǔ)義關(guān)系也能被很好地獲取,緩解了句子中的長(zhǎng)距離依賴問(wèn)題。通過(guò)自注意力機(jī)制對(duì)輸入的詞向量進(jìn)行計(jì)算能夠得到新的詞向量,使得模型的輸入可以表示出更加豐富的上下文語(yǔ)義信息。本文模型采用多頭自注意力[14]計(jì)算方法,其模型結(jié)構(gòu)如圖2所示。其中,h表示多頭自注意力機(jī)制中頭的個(gè)數(shù)。

Figure 2 Multi-head self-attention model圖2 多頭自注意力模型
首先在多頭自注意力機(jī)制中采用放縮點(diǎn)積(Scaled Dot-Product Attention)來(lái)進(jìn)行相似度得分的計(jì)算。給定Query、Key和Value,相似度得分計(jì)算公式如式(3)所示。
(3)
其中,Score∈Rn×n為得分矩陣;dw取為詞向量的維度,起到調(diào)節(jié)的作用。之后通過(guò)Softmax將得分進(jìn)行歸一化,將原來(lái)的得分轉(zhuǎn)換為權(quán)重之和為1的概率分布,這樣能更加突出2個(gè)元素之間的相關(guān)性。計(jì)算如下:
α=Softmax(Score)
(4)
最后經(jīng)過(guò)分配權(quán)重即可得到Attention計(jì)算結(jié)果:
Attention(Query,Key,Value)=α·Value
多頭自注意力機(jī)制就是將Query、Key和Value通過(guò)不同的參數(shù)矩陣映射在多個(gè)平行頭上進(jìn)行重復(fù)多次Attention計(jì)算,每個(gè)頭可以處理不同的信息,這樣就可以處理句子序列的不同部分,提取更豐富的句子特征。最后將多個(gè)Attention運(yùn)算的結(jié)果進(jìn)行向量拼接,多頭注意力每一個(gè)平行頭的計(jì)算公式如下所示:
headi=
(5)
MultiHead(Query,Key,Value)=
WM[head1,head2,…,headh]
(6)
其中,h為多頭注意力機(jī)制中平行頭的個(gè)數(shù)。WM∈Rdw×dw用于連接多個(gè)平行頭的Attention運(yùn)算的結(jié)果。因?yàn)樵撃P筒捎玫氖亲宰⒁饬C(jī)制,所以輸入多頭自注意力的矩陣Query、Key和Value都為輸入序列S。通過(guò)計(jì)算最終將得到:
S′={w′1,w′2,…,w′n}=MultiHead(S,S,S)
(7)
其中,S′是多頭自注意力的輸出,w′i是句子序列中第i個(gè)詞通過(guò)多頭自注意力機(jī)制計(jì)算后得到的新輸出,它相比原始詞向量帶有更加豐富的語(yǔ)義信息。最后得到的S′∈Rn×dw是句子的新表示,也是下一層的輸入。
2.2.2 位置向量特征
在實(shí)體關(guān)系提取的任務(wù)中使用詞的位置向量特征,其依據(jù)是假設(shè)離實(shí)體近的單詞比更遠(yuǎn)的單詞具有更大的影響。使用自注意力機(jī)制計(jì)算句子中的任意2個(gè)詞之間的相關(guān)性,計(jì)算過(guò)程中任何2個(gè)詞之間的路徑長(zhǎng)度都記為1,因此沒(méi)有考慮2個(gè)詞之間的相對(duì)距離。所以,本文將參考Zeng等[7]的方法將詞的位置向量特征加入進(jìn)去。對(duì)于句子中的每一個(gè)詞,通過(guò)計(jì)算該詞與句子中實(shí)體的相對(duì)位置得到詞與實(shí)體之間的距離。例如在圖1中moving距離people和downtown 2個(gè)實(shí)體的相對(duì)距離分別為3和-3,通過(guò)查詢隨機(jī)初始化得到的位置向量矩陣生成詞的位置向量信息,對(duì)于給定的一個(gè)句子序列S:
S={w1,w2,…,wn}
(8)

(9)
2.3.1 卷積層
卷積過(guò)程相當(dāng)于對(duì)輸入矩陣的一個(gè)滑動(dòng)窗口進(jìn)行乘積求和的過(guò)程,用來(lái)提取特征。在文本處理中,卷積核通常覆蓋上下幾行的詞,因?yàn)榫渥泳仃嚨拿恳恍写硪粋€(gè)詞的詞向量,因此卷積核的寬度和模型的輸入寬度一樣,句子矩陣維度為n×(dw+2×dp),在卷積過(guò)程過(guò)采用Nguyen等[15]的多尺寸卷積核方法來(lái)提取更多的n-gram特征,在實(shí)驗(yàn)中取卷積核的高度分別取Hi∈{2,3,4,5},卷積運(yùn)算過(guò)程如下所示:
(10)
其中,W1∈RHi×(dw+2×dp),Hi表示卷積核的高度,b表示偏置,f為非線性激活函數(shù),這里使用ReLU函數(shù):

(11)
通過(guò)不同尺寸的卷積核計(jì)算,最后的結(jié)果為:
C=[c1,c2,…,cn-Hi+1]
(12)
2.3.2 池化
池化層(Pooling)也稱為下采樣層,主要用來(lái)對(duì)卷積層提取的特征進(jìn)行降維,得到最終表示句子整體信息的高級(jí)特征。池化層能夠緩解過(guò)擬合且提高模型的容錯(cuò)性。常用的池化操作有2種:最大池化(Max Pooling)和平均池化(Average Pooling),本文模型采用最大池化策略進(jìn)行特征選取。在卷積層中的每個(gè)卷積核得到一個(gè)向量,選取向量中的最大的值作為池化層提取的特征。
pi=max(C)=max(c1,c2,…,cn-Hi+1)
(13)
此方法輸出的特征pi是一個(gè)固定維度的向量,和輸入句子的長(zhǎng)度無(wú)關(guān),此向量維度取決于和卷積層中卷積核的個(gè)數(shù),之后每個(gè)句子得到一個(gè)相同維度的特征向量:
Z={p1,p2,…,pm}
(14)
其中m是卷積核的個(gè)數(shù)。這樣就很好地解決了輸入句子長(zhǎng)度不一致的問(wèn)題。
2.4.1 分類
在此層將池化層得到的特征值組合為特征向量,并將其作為全連接層的輸入進(jìn)行分類,本文使用Softmax分類器進(jìn)行分類,為了防止模型產(chǎn)生過(guò)擬合現(xiàn)象,采用dropout[16]的方法。dropout以一定概率隨機(jī)丟棄某些神經(jīng)元,從而減少冗余,增加特征之間的正交性。其表述如式(15)所示:
x(i)=r·Z
(15)
其中,r是伯努利隨機(jī)變量的向量,Z為句子經(jīng)過(guò)池化后得到的特征表示,x(i)為第i個(gè)輸入經(jīng)過(guò)模型提取后的有效特征向量。輸入樣本屬于每一類別的概率為:
(16)
其中,x(i)為第i個(gè)輸入經(jīng)過(guò)模型后的有效的特征。y(i)為預(yù)測(cè)的輸入實(shí)例x(i)的類別,k為數(shù)據(jù)集中總的類別數(shù)。θj為整個(gè)模型中可學(xué)習(xí)的超參數(shù)。由式(16)可以得到當(dāng)前輸入樣本屬于每個(gè)類別的概率。
2.4.2 模型訓(xùn)練
在模型訓(xùn)練中采用交叉熵(Cross Entropy)作為損失函數(shù)。交叉熵用于度量2個(gè)概率分布間的差異性,值越小表明兩者之間的差距越小,反之越大。在損失函數(shù)中加入L2正則化來(lái)防止過(guò)擬合,本文模型損失函數(shù)如下所示:

(17)
其中,λ為L(zhǎng)2正則化的系數(shù)。在模型的優(yōu)化過(guò)程中,采用小批量梯度下降法(Mini-batch Gradient Descent)更新迭代權(quán)值,其運(yùn)算速度快,并且也解決了結(jié)果的隨機(jī)性,所以本文選擇小批量梯度下降法來(lái)更新參數(shù),使用反向傳播方法進(jìn)行參數(shù)調(diào)整。即:
(18)
其中,μ為學(xué)習(xí)率。
3.1.1 數(shù)據(jù)集
本文采用SemEval-2010 Task 8數(shù)據(jù)集和SemEval-2007 Task 4數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),它們是專門用來(lái)做實(shí)體關(guān)系抽取任務(wù)的數(shù)據(jù)集。
SemEval-2010 Task 8數(shù)據(jù)集中總共有10 717條數(shù)據(jù),其中包括8 000條訓(xùn)練數(shù)據(jù)和2 717條測(cè)試數(shù)據(jù)。該數(shù)據(jù)集包含9類帶有方向的關(guān)系和1類不帶方向的other關(guān)系。句子中2個(gè)實(shí)體的方向不同將被視為2種不同的關(guān)系,這種關(guān)系叫帶有方向的關(guān)系。
SemEval-2007 Task 4數(shù)據(jù)集中包含7種不帶方向的關(guān)系類別,共包含1 529個(gè)關(guān)系實(shí)例,其中980條訓(xùn)練數(shù)據(jù)和549條測(cè)試數(shù)據(jù)。
3.1.2 評(píng)價(jià)標(biāo)準(zhǔn)
為了評(píng)價(jià)本文模型是否有效,采用數(shù)據(jù)集中官方文檔中的評(píng)價(jià)指標(biāo)macro-averagedF1[17]值進(jìn)行評(píng)價(jià)。要計(jì)算macro-averagedF1的值,必須先計(jì)算出每個(gè)類別的準(zhǔn)確率(precision)、召回率(recall)和F1值,最后求整個(gè)數(shù)據(jù)集的平均F1值。
(19)
其中,TPi為第i類關(guān)系中分類正確的實(shí)例個(gè)數(shù),F(xiàn)Pi是將其他類別的實(shí)例錯(cuò)誤分為第i類的實(shí)例個(gè)數(shù),F(xiàn)Ni為將第i類的實(shí)例錯(cuò)誤分為其他類的實(shí)例數(shù)。最終通過(guò)計(jì)算可以得到macro-averagedF1值。
(20)
其中,k為數(shù)據(jù)集中總的類別數(shù)。
實(shí)驗(yàn)中的詞向量使用Mikolov等[12]預(yù)先訓(xùn)練好的300維的詞向量,位置向量的維度取50維。使用小批量梯度下降法來(lái)學(xué)習(xí)網(wǎng)絡(luò)中的參數(shù),最小樣本值為20。為了提高訓(xùn)練速度,本文模型使用指數(shù)衰減法來(lái)設(shè)置學(xué)習(xí)率,學(xué)習(xí)率初始值為1.0,衰減系數(shù)為0.9。使用dropout方法和L2正則化來(lái)抑制過(guò)擬合現(xiàn)象,取dropout rate的值為0.5。L2正則化的系數(shù)λ取值為10-5。模型中的其他參數(shù)矩陣采用高斯分布進(jìn)行隨機(jī)初始化。通過(guò)比較不同參數(shù)下的結(jié)果,本文模型最優(yōu)結(jié)果參數(shù)設(shè)置值如表1所示。

Table 1 Hyperparameter setting values
在卷積過(guò)程中,卷積核的大小表示在卷積中提取特征的范圍,卷積核過(guò)大或過(guò)小都會(huì)影響特征的提取。為了提取到更多的有效信息,本文采用了Nguyen等[15]的多尺寸卷積核進(jìn)行實(shí)驗(yàn),因此分別取卷積核的高度為2-gram,3-gram,4-gram,5-gram在2個(gè)數(shù)據(jù)集上實(shí)驗(yàn)分別得到相對(duì)應(yīng)的F1值。使用多尺寸過(guò)濾器能夠獲得更多的卷積特征。同時(shí)使用2-gram,3-gram,4-gram,5-gram時(shí),在2個(gè)數(shù)據(jù)集上得到的F1值分別達(dá)到最大值84.46%和83.23%。具體情況如表2所示。

Table 2 Effect of filter size on F1 value
在模型訓(xùn)練的時(shí)候采用了dropout的方法來(lái)防止模型過(guò)擬合。當(dāng)dropout rate的值分別取0.5和0.6時(shí),在SemEval-2010 Task 8和SemEval-2007 Task 4數(shù)據(jù)集上取得了最好的F1值,如圖3所示。

Figure 3 Effect of dropout rate on F1 value圖3 dropout rate對(duì)F1值的影響
為了驗(yàn)證本文模型對(duì)于實(shí)體關(guān)系抽取的穩(wěn)定性和有效性,采用對(duì)比實(shí)驗(yàn)方法,分別在2個(gè)數(shù)據(jù)集上與多種模型進(jìn)行對(duì)比。本文分別用CNN、BRNN(Bi-directional Recurrent Neural Network)、BLSTM(Bi-directional Long Short-Term Memory)和本文模型進(jìn)行對(duì)比,都采用統(tǒng)一的詞向量和位置向量作為模型的輸入,表3和表4所示為不同的4種模型在2個(gè)數(shù)據(jù)集上的precision值、recall值和F1值結(jié)果。

Table 3 Experimental results comparison on SemEval-2010 Task 8

Table 4 Experimental resutls comparison on SemEval-2007 Task 4
由表3和表4中的實(shí)驗(yàn)結(jié)果可以發(fā)現(xiàn),在使用同樣輸入的前提下,BLSTM的效果比CNN和BRNN的效果要好,BLSTM是雙向長(zhǎng)短期記憶網(wǎng)絡(luò),可以緩解長(zhǎng)距離特征獲取的問(wèn)題,能夠提取到長(zhǎng)句子中距離較遠(yuǎn)的有效特征,但是效果還不是很好。
本文模型比CNN和BLSTM模型的效果更好,在使用同樣輸入的情況下,在注意力機(jī)制中計(jì)算詞的上下文依賴信息的時(shí)候,本文模型對(duì)句子序列中的所有詞直接兩兩進(jìn)行相似性計(jì)算,忽略了2個(gè)詞之間的距離,能更加有效地捕獲到詞在整個(gè)句子中的上下文依賴信息,使得通過(guò)自注意力層得到的詞向量表達(dá)出更加豐富的語(yǔ)義信息。因此,卷積神經(jīng)網(wǎng)絡(luò)能夠捕獲到有效的句子的高級(jí)特征,彌補(bǔ)了用卷積神經(jīng)網(wǎng)絡(luò)提取句子特征的局限性。

Figure 4 Comparison of models on SemEval-2010 Task 8圖4 SemEval-2010 Task 8上模型的對(duì)比圖

Figure 5 Comparison of models on SemEval-2007 Task 4圖5 SemEval-2007 Task 4上模型的對(duì)比圖
如圖4和圖5所示,本文模型在訓(xùn)練樣本迭代訓(xùn)練次數(shù)到50時(shí)已經(jīng)趨于穩(wěn)定,其他的模型需要等到80次迭代時(shí)才能逐漸趨于穩(wěn)定。由此可知,采用自注意力機(jī)制能夠更好地考慮句子序列中詞的上下文依賴信息,從而更好地捕獲句子的全局信息,所以本文模型穩(wěn)定性更好。采用同樣的輸入,在2個(gè)數(shù)據(jù)集上只采用卷積神經(jīng)網(wǎng)絡(luò)模型的F1值分別為80.72%和79.72%,利用自注意力機(jī)制和卷積神經(jīng)網(wǎng)絡(luò)融合的模型的F1值分別達(dá)到了84.46%和83.23%。由此可以說(shuō)明,本文模型可以很好地解決在卷積神經(jīng)網(wǎng)絡(luò)中利用固定大小的卷積核來(lái)提取句子序列中詞的上下文的限制問(wèn)題。
本文在卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行實(shí)體關(guān)系抽取的基礎(chǔ)上引入了多頭自注意力機(jī)制,和其它使用深度學(xué)習(xí)進(jìn)行實(shí)體關(guān)系抽取的方法相比,本文模型采用自注意力機(jī)制能夠在句子內(nèi)部學(xué)習(xí)到更加豐富的詞的上下文語(yǔ)義信息,在通過(guò)自注意力層之后將詞的位置向量特征加入句子序列,從而保證了序列的順序信息,使得卷積神經(jīng)網(wǎng)絡(luò)能夠提取到更加有效的句子全局特征。實(shí)驗(yàn)表明,本文模型在實(shí)體關(guān)系抽取上取得了良好的效果,但是此模型只能用在已標(biāo)注數(shù)據(jù)的有監(jiān)督的關(guān)系抽取中。在接下來(lái)的工作中將考慮以下2個(gè)方面:(1)嘗試引入更多的有效特征作為輸入來(lái)提高模型的性能。(2)有監(jiān)督的關(guān)系抽取在標(biāo)注數(shù)據(jù)的時(shí)候還是比較困難的,在遠(yuǎn)程監(jiān)督的實(shí)體關(guān)系抽取方面的工作還比較少,因此,在后續(xù)的學(xué)習(xí)中,我們應(yīng)該考慮將模型擴(kuò)展到遠(yuǎn)程監(jiān)督[19]實(shí)體關(guān)系抽取中。