李思琪 朱慶 陳鈺楓 徐金安 張玉潔
北京交通大學(xué)計(jì)算機(jī)與信息技術(shù)學(xué)院 北京 100044
關(guān)系抽取作為自然語言處理領(lǐng)域中一項(xiàng)重要的基礎(chǔ)任務(wù),旨在判斷出文本語句中實(shí)體對之間存在的語義關(guān)系。傳統(tǒng)的基于有監(jiān)督方法的關(guān)系抽取依賴于高質(zhì)量的人工標(biāo)注數(shù)據(jù),需要花費(fèi)大量的時間和人力。于是,能夠在現(xiàn)有的知識庫和語料庫的基礎(chǔ)上,自動標(biāo)注訓(xùn)練數(shù)據(jù)的遠(yuǎn)程監(jiān)督方法逐漸成為了關(guān)系抽取研究任務(wù)的熱點(diǎn)。
遠(yuǎn)程監(jiān)督的概念由Mintz等[1]于2009年提出,其核心思想是:若在現(xiàn)有的知識庫中存在某一個實(shí)體關(guān)系三元組(實(shí)體1,關(guān)系R,實(shí)體2),則認(rèn)為在語料庫中,所有同時包含有實(shí)體1和實(shí)體2的文本語句,都表達(dá)了關(guān)系R。例如:在知識庫中,有一個實(shí)體關(guān)系三元組(比爾蓋茨,創(chuàng)始人,微軟),則將所有“比爾蓋茨”和“微軟”同時出現(xiàn)的句子都標(biāo)記為“創(chuàng)始人”的關(guān)系。通過遠(yuǎn)程監(jiān)督思想可以在短時間內(nèi)獲得大量標(biāo)注好的訓(xùn)練語料,但是由于其假設(shè)過于強(qiáng)硬,不可避免地導(dǎo)致了錯誤標(biāo)注的噪聲問題。例如在句子“在1992年,比爾蓋茨擁有超過40%的微軟股票,經(jīng)過這么多年不斷地拋售后,現(xiàn)在他只有1%了”中,同時出現(xiàn)了“比爾蓋茨”和“微軟”兩個實(shí)體詞,但是表達(dá)的關(guān)系卻不是“創(chuàng)始人”的關(guān)系。因此,如何降低語料中的噪聲數(shù)據(jù)影響,提升關(guān)系抽取的性能成為了當(dāng)前研究的重點(diǎn)。
由于遠(yuǎn)程監(jiān)督構(gòu)建數(shù)據(jù)集的特殊性,導(dǎo)致獲得的數(shù)據(jù)集中存在大量的噪聲標(biāo)簽,影響了關(guān)系抽取的性能。為了處理噪聲問題,有學(xué)者提出將遠(yuǎn)程監(jiān)督關(guān)系抽取看作一個多示例學(xué)習(xí)(Multi Instance Learning, MIL)任務(wù),將包含有同一實(shí)體對的所有句子看作一個實(shí)體包,基于實(shí)體包來進(jìn)行實(shí)體對的關(guān)系抽取[2],有效地緩解了錯誤標(biāo)注的問題;之后也有學(xué)者們提出基于多示例學(xué)習(xí)的概率圖模型[3-4]。Zeng等[5]提出了一種結(jié)合多示例學(xué)習(xí)思想的分段卷積神經(jīng) 網(wǎng) 絡(luò)(Piece-wise Convolutional Neural Network,PCNNs),基于At-least-once的思想,認(rèn)為在實(shí)體包內(nèi)至少存在一個句子,能夠正確的表達(dá)實(shí)體對之間的關(guān)系,選擇最優(yōu)句子作為整個實(shí)體包的表示。之后,Lin等[6]認(rèn)為應(yīng)該將實(shí)體包內(nèi)所有句子的信息都利用起來,組合作為實(shí)體包的表示,并提出使用句子級別的注意力機(jī)制來分配實(shí)體包內(nèi)不同句子的權(quán)重。Ji等[7]提出使用基于TransE思想[8]的句子級別注意力機(jī)制,將兩個實(shí)體的差值融合到注意力計(jì)算中,并且還加入了知識庫中實(shí)體的描述信息。Jat等[9]使用了詞級別和句子級別兩層注意力,進(jìn)一步降低了遠(yuǎn)程監(jiān)督的噪聲影響,取得了較好的效果。Yuan等[10]采用非獨(dú)立非同分布關(guān)聯(lián)嵌入法來捕獲袋內(nèi)句子的相關(guān)性,得到更好的包向量表示。Alt等[11]通過選擇性注意機(jī)制將標(biāo)準(zhǔn)的Transformer結(jié)構(gòu)擴(kuò)展到多實(shí)例學(xué)習(xí),并在遠(yuǎn)程監(jiān)督關(guān)系抽取任務(wù)上進(jìn)行微調(diào),減少了顯式特征提取以及誤差累積的風(fēng)險。Ye等[12]同時考慮了包內(nèi)和包間的噪聲,分別對句子級和包級噪聲進(jìn)行處理。針對遠(yuǎn)程監(jiān)督數(shù)據(jù)存在的錯誤標(biāo)注問題,Huang等[13]基于上下文相關(guān)的矯正策略將可能錯誤的噪聲標(biāo)簽修正到正確方向。Shang等[14]利用無監(jiān)督深度聚類為含噪句子生成可靠標(biāo)簽。Wang等[15]提出了一種無標(biāo)簽方法,即利用類型信息和翻譯規(guī)律對學(xué)習(xí)過程進(jìn)行軟監(jiān)督,不需要額外的降噪模型。另外,有學(xué)者還提出應(yīng)該在關(guān)系抽取模型之前就過濾數(shù)據(jù)集中的噪聲,Qin等[16]通過生成對抗訓(xùn)練來去除噪聲,處理錯誤標(biāo)注的句子。Feng等[17]引入強(qiáng)化學(xué)習(xí),將過濾噪聲句子建模為一個強(qiáng)化學(xué)習(xí)決策問題,根據(jù)刪除一個句子后的關(guān)系抽取器性能表現(xiàn)作為強(qiáng)化學(xué)習(xí)的獎勵或者處罰。
當(dāng)前遠(yuǎn)程監(jiān)督關(guān)系抽取經(jīng)過不同研究者的不斷努力創(chuàng)新,已經(jīng)取得了較好的性能表現(xiàn),但是仍存在三個問題影響了關(guān)系抽取的性能提升。(1)遠(yuǎn)程監(jiān)督構(gòu)建的句子中存在大量和關(guān)系表示無關(guān)的噪聲詞,根據(jù)Liu等[18]的研究:在NYT-Freebase這一遠(yuǎn)程監(jiān)督關(guān)系抽取經(jīng)典數(shù)據(jù)集中,約有99.4%的句子都存在無關(guān)的噪聲詞,平均每條句子中都有著12個無關(guān)詞。無關(guān)的噪聲詞影響了關(guān)系抽取模型提取到的句子特征的質(zhì)量,而現(xiàn)有的方法直接以關(guān)系標(biāo)簽為依據(jù),計(jì)算不同詞與關(guān)系標(biāo)簽的相關(guān)度,進(jìn)而分配不同詞的注意力權(quán)重,沒有考慮到關(guān)系標(biāo)簽會存在大量的噪聲,向錯誤關(guān)系標(biāo)簽學(xué)習(xí),導(dǎo)致了“越學(xué)越錯”的問題,影響了關(guān)系抽取的性能。(2)現(xiàn)有的方法在生成實(shí)體包特征時,直接采用含有噪聲的關(guān)系標(biāo)簽作為計(jì)算注意力權(quán)重的依據(jù),忽略了關(guān)系標(biāo)簽噪聲的負(fù)面影響,難以獲得合理的實(shí)體包特征表示。(3)Ye等[19]的研究表明,句子中的命名實(shí)體詞往往對于句子的語義表示有較高的影響,而現(xiàn)有的基于詞向量和位置向量的句子輸入表示忽略了文本句子中的命名實(shí)體對于句子表示的重要性,另外頭、尾的實(shí)體詞作為句子中最核心的詞,也應(yīng)受到更多的關(guān)注度。
針對以上問題,我們提出了一種新的融合多頭自注意力和實(shí)體特征的分段卷積神經(jīng)網(wǎng)絡(luò)模型(Entity-wised Multi-head Self Attention based PCNNs,簡稱為EMSA_PCNN),與JAT等人在詞級和句子級注意力都依據(jù)關(guān)系標(biāo)簽分配注意力不同的是,我們在PCNNs提取句子特征的基礎(chǔ)上,使用多頭自注意力來更加合理地分配不同詞的貢獻(xiàn)度,不需要額外的監(jiān)督信息,緩解了遠(yuǎn)程監(jiān)督的無關(guān)噪聲詞影響句子表示的問題。除此之外,我們在生成實(shí)體包時,基于TransE算法的思想:e1-e2≈r,認(rèn)為實(shí)體之間的關(guān)系可以由頭、尾實(shí)體進(jìn)行一定的計(jì)算變換得到,采用頭、尾實(shí)體經(jīng)過雙線性變換后的向量表示作為句子權(quán)重的計(jì)算依據(jù),通過縮放點(diǎn)積注意力處理,完全不依賴關(guān)系標(biāo)簽,進(jìn)一步緩解了遠(yuǎn)程監(jiān)督關(guān)系抽取的噪聲在生成實(shí)體包特征時的負(fù)面影響。另外,在輸入部分,額外加入了命名實(shí)體和核心的頭、尾實(shí)體詞特征,進(jìn)一步豐富了句子的輸入特征表示,有利于關(guān)系抽取模型學(xué)習(xí)到更多有效的語義特征。我們在NYT-Freebase數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明:相較于基線系統(tǒng),我們提出的方法性能有了顯著提升,驗(yàn)證了提出的方法的有效性。
如EMSA_PCNN模型架構(gòu)圖如圖1所示,對于實(shí)體包B中的所有句子,EMSA_PCNN模型首先將文本句子轉(zhuǎn)換為向量表示(2.1節(jié)融合實(shí)體特征的輸入層),然后采用卷積層提取文本特征(2.2節(jié)卷積層),再通過多頭自注意力機(jī)制來合理分配不同詞的權(quán)重(2.3節(jié)多頭自注意力層),然后對文本表示進(jìn)行分段的最大池化處理獲得最終句子表示(2.4節(jié)分段最大池化層),再通過基于頭、尾實(shí)體雙線性變換的注意力計(jì)算合理分配不同句子的權(quán)重,綜合所有句子特征以獲得最終實(shí)體包B的表示(2.5節(jié)融合實(shí)體特征的句子特征選擇層),最后通過經(jīng)過Softmax激活的全連接層處理,獲得實(shí)體包B對于所有關(guān)系類別的得分。
圖1 EMSA_PCNN模型架構(gòu)圖
相較于現(xiàn)有的基于PCNNs的模型,我們提出的方法在卷積層之后使用多頭自注意力機(jī)制來分配句子中不同詞的權(quán)重,并且在生成實(shí)體包時,完全不使用含有噪聲關(guān)系標(biāo)簽的特征信息,使得模型能進(jìn)一步避免遠(yuǎn)程監(jiān)督噪聲的影響。
2.1.1 詞向量
詞向量是對詞的分布式表示,目的是將文本中的每一個詞都轉(zhuǎn)換成低維的數(shù)字向量。具體來說,對于包含n個詞的輸入句子s,可表示為s={w1,w2,w3, …,wn},首先將其中每個詞wi{i=1, 2, 3,…,n}都通過詞典映射為數(shù)字索引號,其次通過映射矩陣WE∈?|V|×dw將每個索引號都轉(zhuǎn)換成向量形式vi(i=1, 2, 3,…,n),詞向量的維度為dw,|V|是詞典大小。
2.1.2 位置向量
句子中離實(shí)體詞越近的詞對于句子表示的貢獻(xiàn)越大,通過每個詞與兩個實(shí)體詞的相對距離大小可以獲得位置向量,彌補(bǔ)了CNN對于位置信息編碼能力較弱的缺點(diǎn)。具體來說,句子中第i個詞與兩個實(shí)體的相對位置大小分別用P1i(i=1, 2, 3,…,n)和P2i(i=1, 2, 3,…,n)表 示,再通過兩個向量矩陣PE1和PE2,將數(shù)值映射為低維向量p1i(i=1, 2, 3,…,n)和p2i(i=1, 2, 3,…,n),位置向量的映射維度為dp。相對位置如圖2所示:“technology”這個詞到頭實(shí)體詞“Bill Gates”和尾實(shí)體詞“Microsoft”的相對距離分別是“4”和“-6”。
圖2 相對距離示例
2.1.3 命名實(shí)體向量
文本中存在不同類型命名實(shí)體詞,將命名實(shí)體的開頭詞標(biāo)記為“命名實(shí)體類型-B”,命名實(shí)體的后續(xù)詞標(biāo)記為“命名實(shí)體類型-I”,不是命名實(shí)體的詞的標(biāo)記為“O”。如圖3所示的一個句子:“On July 28, Bill Gates sold 2 million Microsoft shares”,其中的“July”和“28”分別被標(biāo)記為DATE-B和DATE-I類型,“Bill”和“Gates”分別被標(biāo)記為PER-B和PER-I類型,“Microsoft”被標(biāo)記為ORG-B類型。給定輸入句子s={w1,w2,w3, …,wn},將其命名實(shí)體標(biāo)簽(BIO類型)NE={ne1,ne2,ne3, …,nen}轉(zhuǎn)換成向量表示BE={bio1,bio2,bio3, …,bion},命名實(shí)體向量的維度為dbio。
圖3 命名實(shí)體類型示例
2.1.4 頭、尾實(shí)體向量
頭、尾實(shí)體詞是文本中最核心的兩個詞,在輸入階段強(qiáng)化兩者的影響,將頭、尾實(shí)體詞向量的差值作為其特殊特征,即ee=ve1-ve2。
對于輸入句子s={w1,w2,w3, …,wn},通過上述的詞向量、位置向量、命名實(shí)體向量和頭、尾實(shí)體向量,將s轉(zhuǎn)換為一個二維矩陣向量X={x1,x2,x3, …,xn},X∈?n×dx,其中xi={vi;p1i;p2i;bioi;ee},n是輸入文本句子長度,dx是模型的輸入向量維度,表示為dx=2×dw+2×dp+dbio。X將作為后續(xù)卷積層的輸入。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)是NLP領(lǐng)域提取文本特征的常用模型之一,能夠獲取文本中不同的n-gram特征,并且計(jì)算時可以并行處理。
給定輸入句子矩陣X={x1,x2,x3, …,xn},其中xi∈?dx,xi:j表示xi到xj的拼接矩陣,權(quán)重矩陣W∈?w×dx卷積操作的卷積核,首先通過大小c為w滑動窗口與X進(jìn)行卷積運(yùn)算,超出句子最大長度的部分用0填充。通過卷積處理后,可以得到文本特征c={c1,c2,c3, …,cn-w+1},cj的計(jì)算如公式(1)所示:
采用Swish函數(shù)作為激活函數(shù),其計(jì)算如公式(2)、公式(3)所示,其中β為可學(xué)習(xí)的超參數(shù)。
使用多個卷積核進(jìn)行卷積運(yùn)算以獲得文本的多粒度特征信息,卷積核集合為Wc={wc1,wc2,…,wnk},進(jìn)行k次卷積處理。獲得文本特征表
遠(yuǎn)程監(jiān)督構(gòu)建的訓(xùn)練句子中往往存在大量和關(guān)系表示無關(guān)的噪聲詞,現(xiàn)有的方法在處理這些噪聲詞時,往往直接采用遠(yuǎn)程監(jiān)督的關(guān)系標(biāo)簽作為計(jì)算注意力的依據(jù),重新分配詞的注意力權(quán)重,沒有考慮到遠(yuǎn)程監(jiān)督關(guān)系標(biāo)簽的噪聲問題對于詞權(quán)重分配的影響。于是,我們選擇使用多頭自注意力機(jī)制來處理這一問題,不需要關(guān)系標(biāo)簽作為注意力分配依據(jù),通過計(jì)算詞與詞之間的相關(guān)性,動態(tài)地分配不同詞的權(quán)重,過濾無關(guān)詞的負(fù)面影響。
多頭自注意力(Multi-head Self Attention,MSA)機(jī)制來源于Google所提出的Transformer模型[20],在機(jī)器翻譯任務(wù)中被廣泛使用,性能表現(xiàn)十分突出。MSA是一種特殊的內(nèi)部注意力計(jì)算方法,對一個序列本身計(jì)算并且重新分配各個位置合適的注意力權(quán)重,以獲得更合理的特征表示。MSA的計(jì)算過程主要包括自注意力計(jì)算和多頭拼接兩個部分組成。
2.3.1 自注意力計(jì)算
自注意力是指將句子中每個詞都與其他詞計(jì)算注意力權(quán)重,單次自注意力計(jì)算過程為:將卷積層獲得的特征C通過三個不同的線性變換處理,分別得到Q、K和V三個矩陣,再通過縮放點(diǎn)積注意力計(jì)算,得到單次自注意力后的句子表示,縮放點(diǎn)積注意力計(jì)算過程表示為公式(4),其中dk表示矩陣K的維度。
2.3.2 多頭拼接
多頭拼接部分指進(jìn)行多次自注意力計(jì)算,將多次計(jì)算結(jié)果進(jìn)行拼接,得到最終的句子表示,以綜合在多個向量子空間內(nèi)的權(quán)重表示。
在NLP領(lǐng)域,往往使用最大池化來提取句子表示中最顯著的特征,并且降低參數(shù)量,但是在關(guān)系抽取領(lǐng)域,最大池化選擇粒度過大,難以獲取到實(shí)體對周圍的重要信息。由Zeng等[5]提出了分段最大池化,根據(jù)句子中兩個實(shí)體的位置將句子分為三個部分,對三個部分分別進(jìn)行最大池化,對于多頭自注意力層得到的特征表示H={h1,h2,h3, …,hk},每個hi會被分為{hi1,hi2,hi3},則分段最大池化定義為:
將所有的pi={pi1,pi2,pi3}進(jìn)行拼接,再采用Swish函數(shù)激活,可得到句子的最終表示P∈?3k。
現(xiàn)有的研究在選擇句子特征進(jìn)而生成實(shí)體包特征時,采用的句子級別注意力機(jī)制是以關(guān)系標(biāo)簽為分配權(quán)重依據(jù)的,這種方法已取得了良好的效果,但是關(guān)系標(biāo)簽中所存在的噪聲問題仍然對實(shí)體包級別的特征有負(fù)面影響。于是,我們基于TransE算法的思想,認(rèn)為關(guān)系能夠通過頭、尾實(shí)體之間的計(jì)算得到,采用頭、尾實(shí)體的詞向量(ve1,ve2)經(jīng)過雙線性變換所學(xué)習(xí)得到的向量表示r作為注意力計(jì)算的依據(jù)。
對于實(shí)體包B中第j個句子特征Pj的權(quán)重aj計(jì)算如下所示:
實(shí)體包B最終的特征表示為E=ΣiaiPi。
再將實(shí)體包B的表示E通過softmax分類器,預(yù)測最終的關(guān)系標(biāo)簽,使用交叉熵函數(shù)計(jì)算損失:
我們采用NYT-Freebase作為實(shí)驗(yàn)數(shù)據(jù)集,該數(shù)據(jù)集由Riedel等[2]于2010年構(gòu)建并且開源,是采用遠(yuǎn)程監(jiān)督方法將Freebase知識庫和紐約時報(bào)(New York Times,NYT)語料庫對齊得到的,包含NA在內(nèi)的共53種關(guān)系類別,NA即表示實(shí)體對間沒有關(guān)系。將NYT語料中的2005—2006年的文本作為訓(xùn)練集,2007年的文本作為測試集。其中,測試集的實(shí)體關(guān)系標(biāo)簽是人工標(biāo)注的,可靠性較高,共172 448條句子,96 678個實(shí)體對以及1950個關(guān)系事實(shí);訓(xùn)練集則完全由實(shí)體關(guān)系三元組匹配得到,存在噪聲,共522 611條句子,281 270個實(shí)體對以及18 252個關(guān)系事實(shí)。
同現(xiàn)有的研究一樣,我們采用held-out evaluation方法來評估我們提出的關(guān)系抽取模型。通過模型的PR曲線(Precision Recall Curve)、P@N(Precision@Top N)以及AUC值(Area Under Curve)的表現(xiàn)來評估模型的性能。
我們提出模型使用的詞向量是通過Word-2Vec在NYT語料上預(yù)訓(xùn)練得到的,而位置向量和命名實(shí)體向量則是隨機(jī)初始化生成的。我們采用網(wǎng)格搜索法來確定模型最優(yōu)的超參數(shù)設(shè)置。其中卷積核數(shù)目取值k∈{100, 200, 230,256, 300},滑動窗口大小取值w∈{3, 4, 5},批處理大小取值batch∈{64, 128, 160},神經(jīng)元隨機(jī)失活率取值dropout∈{0.3, 0.5, 0.7},學(xué)習(xí)率取值lr∈{0.001, 0.01,0.05, 0.1},多頭自注意力的頭數(shù)取值h∈{1, 3, 5, 7}。最終的超參數(shù)設(shè)置為:卷積核數(shù)目為230,滑動窗口大小為3,批處理為160,神經(jīng)元隨機(jī)失活率為0.5,學(xué)習(xí)率為0.01,多頭自注意力頭數(shù)為5,采用的優(yōu)化算法為Adadelta。
我們將提出的EMSA_PCNN模型與現(xiàn)有的多個模型進(jìn)行對比:
(1)Mintz[1]:由Mintz首次提出遠(yuǎn)程監(jiān)督的概念,通過多分類logistic回歸分類器處理關(guān)系抽取。
(2)MultiR[3]:由Hoffman提出的采用多示例學(xué)習(xí)的概率圖模型。
(3)MIML[4]:由Surdeanu提出的處理多示例多標(biāo)簽問題的概率圖模型。
(4)PCNNs+MIL[5]:由Zeng提出的結(jié)合多示例學(xué)習(xí)和PCNN模型,選擇實(shí)體包內(nèi)最優(yōu)句子來代表整個實(shí)體包。
(5)PCNNs+ATT[6]:基于PCNN模型,由Lin提出的采用句子級別注意力機(jī)制的方法,根據(jù)關(guān)系標(biāo)簽分配實(shí)體包內(nèi)不同句子的權(quán)重。
(6)APCNNS[7]:基于PCNN模型,由Ji提出的使用兩實(shí)體之差輔助的信息計(jì)算句子級別注意力機(jī)制的方法。
(7)BGWA[9]:由Jat提出,采用BiGRU提取特征,基于關(guān)系標(biāo)簽分別使用詞級別和句子級別兩種注意力的方法。
根據(jù)圖4和表1可以看出:
表1 不同模型的P@N、AUC值對比(%)
圖4 EMSA_PCNN與基準(zhǔn)模型的PR曲線圖
(1)相較于基于機(jī)器學(xué)習(xí)的傳統(tǒng)方法Mintz、MIML、MultiR,其他的基于深度學(xué)習(xí)的方法效果明顯更好,在PR曲線、P@N和AUC值等表現(xiàn)都更好,這說明傳統(tǒng)的人工設(shè)計(jì)的特征在性能上難以與深度學(xué)習(xí)自動提取到的特征相比較。
(2)EMSA_PCNN在PR曲線和各項(xiàng)指標(biāo)上都優(yōu)于PCNNs+MIL、PCNNs+ATT以及APCNNS模型,AUC值比APCNNS模型提升了2.5個百分點(diǎn),P@Mean值提升了6.2個百分點(diǎn)。這是由于EMSA_PCNN不光在句子級別進(jìn)行了降噪處理,還降低了詞級別的無關(guān)噪聲,進(jìn)一步緩解了遠(yuǎn)程監(jiān)督的錯誤標(biāo)注的問題。
(3)EMSA_PCNN與BGWA相比,PR曲線與各項(xiàng)指標(biāo)都更優(yōu),在AUC值上提升了2.2個百分點(diǎn),在P@Mean值上提升了5.9個百分點(diǎn)。這是因?yàn)镋MSA_PCNN在詞級別降噪時,使用了多頭自注意力來分配權(quán)重,避免了噪聲關(guān)系標(biāo)簽的負(fù)面影響,另外在句子級別降噪時,EMSA_PCNN使用了頭、尾兩實(shí)體經(jīng)過雙線性變換的向量表示作為計(jì)算注意力的依據(jù),進(jìn)一步降低了遠(yuǎn)程監(jiān)督錯誤標(biāo)注的影響。
此外,本文還與2019年最先進(jìn)的兩種關(guān)系抽取模型進(jìn)行了性能對比,這兩種方法使用的是Liu等[18]提供的數(shù)據(jù)集,本文稱為NYT-SoftRE,與先前介紹的NYT-Freebase不同的是NYT-SoftRE是在NYT-Freebase基礎(chǔ)上增加了約5萬條訓(xùn)練句子,而測試句子保持不變。選取的關(guān)系抽取模型有:(1)PCNN+BAG-ATT:Ye等[12]在句子級別注意力的基礎(chǔ)上,進(jìn)一步增加實(shí)體包級別的注意力機(jī)制,降低了實(shí)體包級別的噪聲;(2)PCNN+WN:Yuan等[10]提出在向量表示階段加入注意力計(jì)算,在句子選擇部分認(rèn)為實(shí)體包內(nèi)的句子不是獨(dú)立同分布的,將最優(yōu)句和其他句子計(jì)算相似度得到注意力權(quán)重的方法。為了更加直觀的看出不同方法在NYT-SoftRE上的性能對比,除了這兩種方法之外還加入了PCNNs+ATT作為對比模型,本文方法和上述幾種方法的AUC值對比如表2所示:
表2 基于NYT-SoftRE數(shù)據(jù)集的模型的AUC值對比(%)
根據(jù)表2可知,在NYT-SoftRE數(shù)據(jù)集上,相較于PCNNs+ATT模型,本文提出的 EMSA_PCNN模型在AUC值表現(xiàn)上提升了4個百分點(diǎn),驗(yàn)證了本文方法的有效性。相較于加入實(shí)體包級別注意力的PCNN+BAG-ATT模型,EMSA_PCNN 在性能上有0.7個百分點(diǎn)的提升。而相較于PCNN+WN模型,本文提出的EMSA_PCNN模型的AUC值表現(xiàn)僅低0.1個百分點(diǎn),說明我們提出的方法也具有較好的競爭力。在以后的研究工作中,我們可以進(jìn)一步探索實(shí)體包中不同句子之間的聯(lián)系,而不是將所有的句子看作獨(dú)立的個體,從而提升關(guān)系抽取的性能。
為了驗(yàn)證多頭自注意力機(jī)制對于遠(yuǎn)程監(jiān)督降噪的有效性,我們設(shè)計(jì)了采用PCNN為句子編碼器,使用一般的句子級別注意力,多種方式計(jì)算詞的注意力,進(jìn)行對比實(shí)驗(yàn)。(1)PCNNs+ATT:未采用任何詞級別降噪的方法。(2)WA+PCNN+ATT:直接采用關(guān)系標(biāo)簽作為監(jiān)督信息計(jì)算詞級別注意力的方法。(3)MSA_PCNN:不采用任何監(jiān)督信息,使用多頭自注意力計(jì)算詞級別注意力的方法。
從圖5和表3可以看出,加入普通詞級別注意力的WA+PCNN+ATT模型在性能上有一部分提升,說明無關(guān)噪聲詞的確影響了關(guān)系抽取的性能。另外,MSA_PCNN模型的表現(xiàn)更好,在PR曲線、P@N以及AUC值上都較于WA+PCNN+ATT有顯著提升,這是因?yàn)镸SA_PCNN采用的多頭自注意力避免了噪聲關(guān)系標(biāo)簽的影響,另外“多頭”機(jī)制能夠綜合多個向量子空間的權(quán)重信息,進(jìn)一步降低了詞級別的噪聲,驗(yàn)證了多頭自注意力的有效性。
圖5 不同詞級別注意力機(jī)制的性能對比
表3 不同詞級別注意力機(jī)制的P@N,AUC值對比(%)
為了驗(yàn)證融合實(shí)體特征的有效性,我們設(shè)計(jì)了同樣采用PCNN為句子編碼器,不同方法計(jì)算句子級別注意力的方法。(1)PCNNs+ATT:以關(guān)系標(biāo)簽為依據(jù),計(jì)算句子級別注意力的方法;(2)APCNNS:以兩實(shí)體之差作為輔助關(guān)系標(biāo)簽的信息,計(jì)算句子級別注意力的方法;(3)PCNNs+EATT:我們提出的使用頭、尾實(shí)體經(jīng)過雙線性變換的向量表示作為依據(jù),采用縮放點(diǎn)積注意力分配句子權(quán)重的方法。
根據(jù)圖6和表4可知,采用頭、尾實(shí)體經(jīng)過雙線性變換的PCNNs+EATT模型相較于PCNNs+ATT和APCNNS模型來說,在PR曲線、P@N和AUC值上表現(xiàn)都有較好提升,驗(yàn)證了融合實(shí)體特征在句子級別注意力計(jì)算的有效性。
圖6 不同句子級別注意力機(jī)制的性能對比
表4 不同句子級別注意力機(jī)制的P@N,AUC值對比(%)
另外,為了驗(yàn)證在輸入部分融合實(shí)體特征信息的有效性,我們同樣也以PCNN為編碼器,在句子選擇時采用多示例學(xué)習(xí)(MIL)和普通句子級別注意力(ATT),根據(jù)輸入部分是否加入實(shí)體特征(E),分別記為:(1)E+PCNNs+MIL和PCNNs+MIL,(2)E+PCNNs+ATT和PCNNs+ATT。
根據(jù)圖7可以看出,加入命名實(shí)體特征和實(shí)體詞特征的模型在PR曲線表現(xiàn)中都優(yōu)于未加入的模型,驗(yàn)證了在輸入層加入額外特殊詞特征的有效性。
圖7 輸入層融合特殊詞特征的性能對比
為了更直觀地解釋多頭自注意力機(jī)制能夠緩解詞級別噪聲的原因,我們從測試集中選取了一個實(shí)例,分別對5個頭的注意力權(quán)重進(jìn)行了可視化的展示,如圖8所示。由于關(guān)系抽取任務(wù)旨在抽取兩個實(shí)體間的語義關(guān)系,因此我們僅關(guān)注實(shí)體對(Boston,Back Bay)與句內(nèi)其他詞之間相關(guān)性,其中顏色越深表示所分配的權(quán)重越大,即相關(guān)性越高。
通過權(quán)重分布可以看出,多頭自注意力機(jī)制可以從5個不同的表示子空間學(xué)習(xí)相關(guān)信息,為“more”“inviting”“first”等無關(guān)詞分配低權(quán)重,同時也為“in”“church”等相關(guān)單詞分配了高權(quán)重,為預(yù)測“Boston”與“Back Bay”之間的/contains/關(guān)系提供了有效信息。由此可見,多頭自注意力機(jī)制可以降低無關(guān)詞的噪聲信息的影響,從詞級別緩解噪聲傳播,從而提升關(guān)系抽取性能。
針對當(dāng)前詞級別、句子級別降噪的注意力計(jì)算時都依據(jù)含有噪聲的關(guān)系標(biāo)簽的問題,本文提出了一種融合多頭自注意力和實(shí)體特征的分段卷積神經(jīng)網(wǎng)絡(luò)方法,并將其應(yīng)用到遠(yuǎn)程監(jiān)督關(guān)系抽取任務(wù)中。在詞級別降噪時,采用多頭自注意力來更加合理地分配每個詞的貢獻(xiàn)度,降低句子中無關(guān)的噪聲詞對于句子表示的負(fù)面影響;在句子級別降噪時,采用頭、尾實(shí)體經(jīng)過雙線性變換的隱層向量作為注意力計(jì)算的依據(jù),兩者注意力計(jì)算時都沒有以關(guān)系標(biāo)簽作為依據(jù),降低了關(guān)系標(biāo)簽中噪聲對于注意力權(quán)重分配的不利影響,進(jìn)一步緩解了遠(yuǎn)程監(jiān)督的錯誤標(biāo)注的問題。實(shí)驗(yàn)結(jié)果表明:我們提出的模型優(yōu)于所有的基線模型,達(dá)到了最好的效果。在以后的研究中,我們將進(jìn)一步融合知識庫的其他有用信息,以及預(yù)訓(xùn)練語言模型的知識來探索進(jìn)一步提升關(guān)系抽取性能的方法。