毛養(yǎng)勤,覃俊,尹帆,葉正,李蔚棟
(中南民族大學 計算機科學學院 & 湖北省制造企業(yè)智能管理工程技術研究中心,武漢 430074)
近年來,無結構化文本信息的快速增長給人們獲取有價值的信息服務帶來了巨大的困難.信息抽取技術[1]是對無結構化文本進行結構化處理的主要技術,為人們帶來更佳的用戶體驗.然而實體關系抽取作為信息抽取領域的核心子任務,是指對文本中所含實體對進行語義關系提取.在構建知識圖譜,智能問答等方面有著重要意義.
目前,有監(jiān)督方式的實體關系抽取將該任務當作一個分類任務并且取得較好的效果.但該方法依然受到標注語料的限制,人工標注費時費力,因此影響了實體關系抽取的大規(guī)模抽取效果.針對其語料缺乏的問題,MINTZ[2]提出了一種利用知識庫中已存實體三元組信息自動對齊自由文本來標注語料的遠程監(jiān)督方法.其主要思路是:如果知識庫中的實體對含有某種關系,那么包含這種實體對的句子都會標注上這個關系.顯然這種方式存在不嚴謹?shù)牡胤?,引入了許多噪聲標注數(shù)據(jù).因此引入了注意力機制,對表示某一關系的語料中的每一個句子分配一個權重,旨在找到更能表達實體之間關系的句子.然而在計算某些關系語義表示的時候,傳統(tǒng)注意力模型使用兩實體表示相減得到,會忽略不同關系其實關注的是實體的不同方面.例如:
“斯內(nèi)普深情地看著莉莉.----戀人”.
針對上面的句子可能兩實體相減得出一個可能是朋友的語義,也可能是愛人的語義.因為兩實體間可能有多種關系存在,不同關系關注的是實體的不同方面.所以針對上述問題本文提出了適用于多種關系存在的實體關系表示方法,并構建了一種基于新型關系注意力機制(New Relational Attention Mechanism,NATT)的遠程監(jiān)督關系抽取模型,即我們參考了知識表示模型TransR的思想,利用變換矩陣為每個實體對集合學習一個新型的關系語義表示,進而改造原有的注意力機制.達到進一步降低噪聲的目的.
(1)前人提出的注意力模型中利用實體對的向量表示相減得到關系語義表示,進而使用關系表示來達到降噪的效果,然而同一實體對間存在多種關系,此種表示方法會導致噪聲無法很好的過濾.
(2)針對上述問題本文提出了適用于多種關系存在的實體關系表示方法,并構建了一種基于新型關系表示的注意力機制(NATT)的遠程監(jiān)督關系抽取模型.
(3)該模型的預測結果優(yōu)于基于遠程監(jiān)督的實體關系抽取問題的基線 .
近年來,許多方法被廣泛用到實體關系抽取任務上,主要分為有監(jiān)督、半監(jiān)督、無監(jiān)督三種方式.有監(jiān)督方式將關系抽取任務當作一個分類任務并且能取得較好的效果.然而該方法需要大量的人工標注語料,耗時耗力.為了解決語料缺乏的問題,HOFFMANN[3]提出了多實例學習,并且SURDEANU[4]認為同一實體對之間可能存在多種關系,于是在HOFFMANN的研究基礎上引入了多標簽的方法來緩解錯誤標注的問題,也稱之為多實例多標簽學習. BENJAMIN[5]則通過利用主題模型LDA和判決學習方法提高了抽取事實的排名質量,降低了噪聲數(shù)據(jù)的影響.近年來,許多深度學習的策略都在遠程監(jiān)督關系抽取任務上進行嘗試使用,ZENG[6]避免使用特征工程采而是使用卷積結構和分段最大池化來自動學習句子相關特征,并采用多實例學習來解決遠程監(jiān)督中的錯誤標注數(shù)據(jù)問題;LIN[7]提出了使用句子級別的注意力機制來動態(tài)的計算每個句子的權重,達到過濾噪聲數(shù)據(jù)的抽取效果;JIANG[8]首次放寬了“至少表達一次”的假設,對多句使用最大池化來利用不同句子間的共享信息,從而提高抽取效果;LEI[9]提出了一種能有效利用文本語料庫和知識圖譜信息的雙向知識蒸餾的神經(jīng)網(wǎng)絡框架.可以動態(tài)的減少噪聲問題;FENG[10]提出利用強化學習來解決遠程監(jiān)督中的錯誤標注問題;JI[11]引入外部知識庫的實體的相關信息,充分的學習實體的向量表示,從而改造了句子層的注意力機制,提高了抽取的準確率.
以上研究雖然采用注意力機制能改善遠程監(jiān)督關系抽取模型,但目前大多數(shù)研究僅在句子層引入注意力機制,忽略了在計算某些關系語義表示的時候,會存在表示多種關系的情況.在我們計算句子與關系相似性的時候,由于關系表示的偏差可能會導致注意力得分比較低.因此,為了能充分學習到關系表示,我們使用變換矩陣為每一個實體對集合(簡稱包)學習一個新型的關系語義表示.
本文提出了PCNN+NATT的關系抽取模型來解決句子中的噪聲問題.模型結構包含PCNN網(wǎng)絡、NATT注意力機制、訓練目標三個部分,如圖1所示.PCNN網(wǎng)絡用來獲取句子語義向量,NATT注意力機制賦予每個句子權重以獲取包級別向量,訓練目標用來學習關系抽取任務中的關系向量表示.
圖1 PCNN+NATT模型結構圖Fig.1 PCNN+NATT model structure diagram
在前人的研究中,可以發(fā)現(xiàn)PCNN模型[7]被廣泛的應用于遠程監(jiān)督關系抽取任務中,如圖2所示.主要用來提取一個包內(nèi)句子的語義向量.假設一個句子由m個詞組成(w1,w2,…,wm),PCNN模型主要的目的提取出句子的語義向量S.
圖2 PCNN模型結構圖Fig.2 PCNN model structure diagram
模型輸入:在自然語言處理過程中,一般將單詞轉化成低維實值向量來構建模型的輸入. 在本文中,每個單詞的特征向量是由詞向量和位置向量拼接而成.詞嵌入一般是給定一個句子s=(w1,w2,…,wm),通過映射詞向量表E∈R|v|×dw(V是詞表的大小)將每個單詞wi表示為dw維實值向量ei,即句子s被轉換成s=(e1,e2,…,em)∈Rm×d.使用word2vec模型[12]來預訓練詞向量.位置嵌入用來記錄當前單詞到兩個實體的相對距離.例如:在句子“Bill Gates is the principle founder of Microsoft.”中,單詞founder 到頭實體Bill Gates和尾實體Microsoft的相對距離是4和-2,然后轉換成對應的向量表示.將句子中的每個單詞的詞嵌入和位置嵌入的拼接后組合在一起形成句子的向量表示矩陣x∈Rm×d,其中,m表示句子的長度,d表示拼接后的維度,即d=dw+dp×2.
卷積操作:卷積計算可以定義成矩陣A∈Rm×n和B∈Rm×n進行以下運算:
(1)
對于輸入句子向量表示s=(e1,e2,…,em),其ei表示第i個單詞的詞向量.使用Si:j表示取到序列[ei,ei+1,…ej]的矩陣,滑動窗口的長度為l,所以定義的過濾器權重矩陣為W∈Rl×k.最后卷積權重矩陣在句子s上的卷積操作得到的結果向量C∈Rt-l+1可以由下式表示:
(2)
其中1≤j≤t-l+1,b是偏置值.
對于句子s,使用n個過濾器W1,W2,…,Wn(本文使用的是3個)來獲得最終的結果C={C1,C2,…,Cn}.
注意力機制用來分配有正實例以較高權重,負實例以較低權重,從而可以計算出一個包的向量,最后將其送到softmax分類器.
注意力機制: 許多知識圖譜嵌入方法[13-14]將關系當作頭實體到尾實體的鏈接.對于知識庫的元組r(e1,e2)來講,他們符合e1+r≈e2并取得了很好的表現(xiàn).MIKOLOV等[12]展示詞向量的一些屬性例如:v(“Madrid”)-v(“Spain”) = v(“Paris”)-v(“France”)可以說明實體對向量的不同可以反映出兩實體間關系的特征.LIN等[15]提出了為每一個實體對組學習不同的關系向量來解決頭尾實體對具有多種模式的情況.
受多種知識圖譜嵌入方法的思想啟發(fā),針對一個包中的三元組(e1,r,e2),我們引入一個新的關系向量rc(見公式3)來表達包中兩實體間的關系特征,包內(nèi)的句子如果表達了此關系,則具有高相似性,反之則具有無關性.
rc=(e1-e2)Mr,
(3)
e1,e2代表實體1和實體2,Mr代表變換矩陣并采用Xavier初始化方式生成,隨后通過反饋進行調(diào)整.
假設一個包內(nèi)存在m個句子,{s1,s2,…,sm}表示句子的語義向量,使用得分函數(shù)(相似性和無關性)來計算每個句子語義向量和關系向量的注意力權重,公式如下:
(4)
ωi=wTa(tanh[Si:rc])+ba,
(5)
(6)
其中b∈R3n.
Softmax:為了計算每個關系得置信度,將包得特征向量b送入softmax分類器.
o=Msb+bs,
(7)
其中o代表輸出,Ms代表中間矩陣,bs代表偏置值,采用Xavier方式隨機初始化生成.假設θ代表模型中所有的參數(shù),B表示包,則屬于第i個關系的條件概率為:
(8)
對于每一個包的關系rc,首先利用兩實體向量得到原始向量r,即r=(e1-e2).然后讓兩向量rc和r相互靠近.因此,可以定義以下目標函數(shù):
(9)
其中N是包的總個數(shù).
針對于遠程監(jiān)督關系抽取任務,定義其目標函數(shù)為:
(10)
為了學習每個包的關系表示,所有總的目標函數(shù)為:
minL=LD+λLe,
(11)
其中λ>0是Le的權重.
本文使用的數(shù)據(jù)集是遠程監(jiān)督關系抽取中使用較為廣泛的NYT10 數(shù)據(jù)集.該數(shù)據(jù)集由RIEDEL等人[16]發(fā)布的.利用紐約時報語料庫對齊 Freebase知識庫中的三元組信息根據(jù)遠程監(jiān)督的假設產(chǎn)生的,訓練集是2005~2006年的新聞語料中獲取的句子.測試集是2007 年對標NYT語料中的句子.該數(shù)據(jù)集中包含53 類關系,包括特殊關系類型“NA”,表示兩個實體之間沒有關系.訓練集和測試集分別包含570088和172448個句子, 63428和16705個實體,291010和96678個實體對.文獻[3]和文獻[7]也使用該數(shù)據(jù)集做了相關研究.
遵循文獻[3]和文獻[7]的工作,采用兩種方式進行評估:held-out和manual.并在held-out評估中比較基線模型的準確率和召回率等兩種評價指標,對比本文提出模型的效果.
在本文的實驗中,使用word2vec預訓練了詞向量.使用句嵌入的向量維數(shù)選擇范圍為{50,100,200,300},位置嵌入的選擇范圍為{5,10,20},特征圖的選擇范圍為{100,200,230},batch_size的大小選擇范圍在{100,200,500}.經(jīng)過實驗驗證,最佳的參數(shù)配置如下:dw=50,dP=5,batch_size = 100,lr= 0.001,dropout_rate=0.8.
為了驗證本文提出的注意力機制的效果,文中主要采用APCNN,PCNN+ATT,PCNN+MIL[6]模型作為實驗的對比模型.
Held-out評估:圖3展現(xiàn)了各個模型的準確率/召回率曲線,從圖中可以看出,PCNN+NATT比其他基線模型(APCNN,PCNN+ATT,PCNN+MIL)取得更好的表現(xiàn).可以看出NATT注意力機制可以有效的賦予負實例以較小權重從而減輕噪聲.
圖3 1-PCNN+NATT 2-APCNN3-PCNN+ATT 4-PCNN+MIL 的p-r曲線圖Fig.3 The p-r curve of 1-PCNN+NATT 2-APCNN 3-PCNN+ATT 4-PCNN+MIL
Manual評估:表1是各個模型的Top N比較表,該表表示在按照測試輸出的概率排序的基礎上,前N條句子的準確率.從表1中數(shù)據(jù)的比較可以看出:(1)PCNN+MIL算法的準確率都是最低的,說明噪聲對模型的影響嚴重.(2)PCNN+ATT算法的效果要全面優(yōu)于PCNN+MIL算法,注意力機制能有效的利用句子信息,同時減少了噪聲的影響.(3)APCNN算法取得的效果優(yōu)于PCNN+ATT算法,說明了兩實體信息能反映關系的某些特征.(4)PCNN+NATT注意力機制可以有效的賦予負實例以較小權重從而減輕噪聲.
表1 各模型Top N對比表Tab.1 Top N comparison table of each model
為了盡可能地賦予遠程監(jiān)督數(shù)據(jù)集中噪聲數(shù)據(jù)以較小的權重,本文提出一種基于新型關系注意力機制的實體關系抽取模型.該模型考慮到實體對之間可能有多種關系存在,不同的關系可能關注的是實體不同方面.所以該模型利用變換矩陣學習到更準確的關系表示進而改造傳統(tǒng)的注意力機制.盡可能地賦予正實例以較高權重,負實例以較低權重,降低噪聲句子對模型性能的影響.實驗證明:本文所提出的模型在準確率上要優(yōu)于幾種經(jīng)典的對比模型.