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