论文浅尝 - ACL2020 | 用于关系三元组抽取的级联二进制标记框架
論文筆記整理:王中昊,天津大學。
來源:ACL2020
鏈接:https://arxiv.org/pdf/1909.03227.pdf
摘要
從非結構化文本中提取關系三元組是構建大規模知識圖的關鍵。然而,對于同一句子中的多個關系三元組共享同一個實體的重疊三元組問題,現有的研究很少。在這項工作中,我們引入了一個新的視角來重新審視關系三元組抽取任務,并從一個原則性的問題出發,提出了一個新的級聯二進制標記框架(CASREL)。我們的新框架不再像以前的工作那樣把關系看作是離散的標簽,而是將關系建模為將句子中的主語映射到賓語的函數,這樣就很自然地解決了重疊問題。實驗表明,CASREL框架在編碼模塊使用隨機初始化的BERT編碼器時,其性能已經超過了最先進的方法,顯示了新標簽框架的強大功能。當使用預訓練的BERT編碼器時,它的性能得到了進一步的提升,在兩個公共數據集NYT和WebNLG上,它分別比最強基線的F1分數提高了17.5和30.2個百分點。對重疊三元組的不同場景的深入分析表明,該方法在所有這些場景中提供了一致的性能增益。
CASREL框架
關系三元組抽取的目的是識別句子中所有可能的(主語、關系、賓語)三元組,其中一些三元組可能與主語或賓語共享相同的實體。為了實現這個目標,我們直接對三元組進行建模,并在三元組的層次上設計一個訓練目標。這與以前的方法(Fu et al.,2019)不同,前者通過實體和關系來定義訓練目標,而沒有在三元組的層次上對他們進行明確的建模。
形式上,給定訓練集D中的注釋語句xj和xj中一組潛在重疊的三元組Tj={(s,r,o)},我們的目標是使訓練集D的數據可能性最大化:
??????
這里我們稍微濫用了符號Tj。s∈Tj表示出現在Tj三元組中的主語。Tj | s是Tj中主語s引導的三元組。(r,o)∈Tj | s是Tj中主語s引導的三元組中的(r,o)對。R是所有可能關系的集合。R\Tj | s表示除Tj中以s為首的所有關系。o?表示“空”賓語(解釋如下)。
式(2)應用概率鏈式法則。式(3)利用了一個關鍵事實:對于給定的主語s,任何與s相關的關系(Tj | s中的關系)都會對應句子中相應的賓語,而所有其他關系在句子中必然沒有賓語,即“空”賓語。
這個公式有幾個好處。首先,由于數據的似然性是從三元組層次開始的,優化這個似然性相當于在三元組層次上直接優化最終的評價標準。其次,通過不假設多個三元組如何共享一個句子中的實體,它通過設計來處理重疊的三元組問題。第三,式(3)中的分解啟發了一種新的三元組抽取標記方案:我們學習一個主語標記符p(s | xj),它識別句子中的主語實體;對于每個關系r,我們學習一個賓語標記pr(o | s,xj),它識別給定主語的關系特定對象。通過這種方式,我們將每個關系建模為一個將主語映射到賓語的函數,而不是對(主語、賓語)對的關系進行分類。
事實上,這種新穎的標記方案允許我們一次提取多個三元組:我們首先運行主語標記器來查找句子中所有可能的主語,然后針對找到的每個主語,應用關系特定的賓語標記器來查找所有相關關系和對應的賓語。
上述通用框架中的關鍵組件,即主題標記器和特定于關系的對象標記器,可以通過多種方式實例化。在本文中,我們將它們實例化為深雙向變壓器BERT上的二進制標記器(Devlin等人,2019)。我們將在下面描述它的細節。
BERT編碼器
編碼器模塊從句子xj中提取特征信息xj,并將其輸入到后續的標記模塊中。我們使用一個預先訓練的BERT模型(Devlin等人,2019)來編碼上下文信息。
本文簡要回顧了基于多層雙向變換器的語言表示模型BERT。它的目的是通過共同調節每個單詞的左右語境來學習深層表征,并且最近被證明在許多下游任務中非常有效(Zhong等人,2019)。具體地說,它由N個相同的轉換器組組成。我們將轉換器塊表示為Trans(x),其中x代表輸入向量。具體操作如下:
??????????
式中,S是輸入句子中子詞索引的一個熱點向量的矩陣,Ws是子詞嵌入矩陣,Wp是位置嵌入矩陣,其中p代表輸入序列中的位置索引,hα是隱藏狀態向量,即。,輸入句在α層的上下文表示,N是轉換塊的個數。注意,在我們的工作中,輸入是單個文本句子而不是句子對,因此等式(4)中沒有考慮原始BERT論文中描述的分段嵌入。有關變壓器結構的更全面的描述,請參考(Vaswani等人,2017)。
級聯解碼器
現在,我們描述一個新的級聯二進制標記方案的實例,這個方案是受前面的公式啟發的。其基本思想是通過兩個級聯步驟提取三元組。首先,我們從輸入句子中檢測主語。然后對于每個候選主語,我們檢查所有可能的關系,看一個關系是否能將句子中的賓語與該主語相關聯。與這兩個步驟相對應,級聯解碼器由兩個模塊組成,如圖2所示:一個主題標記器;一組特定于關系的對象標記器。
主題標記器? 低層標記模塊通過直接解碼N層BERT編碼器產生的編碼向量hN來識別輸入句子中所有可能的主語。更精確地說,它采用兩個完全相同的二值分類器來分別檢測對象的起始位置和結束位置,為每個標記分配一個二進制標記(0/1),該標記指示當前標記是否對應于主題的開始位置或結束位置。主題標記器對每個令牌的具體操作如下:
???????????
其中pi start_s和pi end_s 分別表示將輸入序列中的第i個單詞標識為對象的開始位置和結束位置的概率。如果概率超過某個閾值,則相應的部分將被分配一個標簽1,否則將被分配一個標簽0。xi是輸入序列中第i個單詞的編碼表示,即xi=hN[i],其中W(·)表示可訓練的權重,b(·)是偏差,而α是sigmoid激活函數。
主題標記器優化以下似然函數,以確定給定句子表示x的主語s范圍:
??????
其中L是句子的長度。如果z為真,I{z}=1,否則為0。yi start_s是x中第i個單詞的主語開始位置的二進制標記,yi end_s表示對象的結束位置。參數θ={Wstart,bstart,Wend,bend}。
對于多目標檢測,我們采用最近開始-結束對匹配原則,根據起始和結束位置標記器的結果來確定任何目標的跨度。例如,如圖2所示,第一個開始標記“Jackie”最近的結束標記是“Brown”,因此第一個主題范圍的檢測結果將是“Jackie R.Brown”。值得注意的是,為了匹配給定開始令牌的結束令牌,我們不考慮其位置在給定單詞位置之前的單詞。這種匹配策略能夠保持任何實體跨度的完整性,只要在給定句子中任何實體跨度的自然連續性,都能正確地檢測到任何實體跨度的完整性。
特定于關系的對象標記器? 高級標記模塊同時識別對象以及與較低級別獲得的主題相關的相關關系。如圖2所示,它由一組特定于關系的對象標記器組成,這些標記器的結構與底層模塊中所有可能關系的主題標記器結構相同。所有對象標記器將同時為每個檢測到的對象標識相應的對象時間。不同在主題標記器直接解碼編碼向量hN的基礎上,關系特定對象標記器也考慮了主語特征。關系特定對象標記器對每個單詞的詳細操作如下:
????????????
其中pi start_s和pi end_s 分別表示將輸入序列中的第i個單詞識別為對象的起始位置和結束位置的概率,vk sub表示在低級模塊中檢測到的第k個對象的編碼表示向量。
對于每個主題,我們迭代地對其應用相同的解碼過程。注意,主體通常由多個令牌組成,為了使第9和等式(10)中的xi和vksub的添加成為可能,我們需要保持兩個向量的維數一致。為此,我們將第k個主語的開始和結束標記之間的平均向量表示作為vksub。
關系r的賓語標記器優化以下似然函數,以確定給定句子表示x和主語s的賓語o的跨度:
????????
其中yi start_s是x中第i個單詞的對象開始位置的二進制標記,yi end_s是第i個單詞的對象結束位置的標記。對于“空”對象o?,所有i的標記 yi start_o?= yi end_o?=0。參數φr={Wr start,br start,Wr end,br end}。
注意,在高級標記模塊中,關系也由對象標記器的輸出決定。例如,在檢測到的主體“Jackie R.Brown”和候選對象“Washington”之間的關系“Work in”就不成立了。因此,關系“Work in”的object tagger不會識別“Washington”的跨度,即起始位置和結束位置的輸出都是零,如圖2所示。相反,“出生地”的關系在“Jackie R.Brown”和“Washington”之間,因此相應的賓語標注器將輸出候選對象“Washington”的跨度。在此設置中,高級模塊能夠同時識別關系以及與在低級模塊中檢測到的對象有關的對象。
數據記錄可能性目標
通過式(3)的對數,目標J(Θ)為:
???????
其中參數Θ={θ,{φr}r∈R}。pθ(s | x)在式(8)中定義,pφr(o | s,x)在式(11)中定義。我們通過Adam隨機梯度下降方法(Kingma和Ba,2014)在小批次中最大化J(Θ)來訓練模型。
實驗
比較方法 我們將我們的模型與幾個強大的最先進模型進行比較,即NovelTagging(Zheng et al.,2017)、CopyR(Zeng et al.,2018)、GraphRel(Fu et al.,2019)和CopyRRL(Zeng et al.,2019)。上述基線的報告結果直接取自原始出版文獻。
?????????????
請注意,我們在預先訓練的BERT模型上實例化CASREL框架,以結合所提出的新標記方案的能力和預先學習的先驗知識,以獲得更好的性能。為了評估引入基于轉換器的BERT模型的影響,我們進行了一系列消融試驗。CASRELrandom是一個框架,其中BERT的所有參數都被隨機初始化;CASRELLSTM是在基于LSTM的結構上實例化的框架(Zheng et al.,2017),帶有預先訓練的手套嵌入(Pennington et al.,2014);CASREL是使用預訓練的BERT權重的成熟框架。
主要結果 表2顯示了對兩個數據集進行關系三元組抽取的不同基線的結果。在所有三個評估指標方面,CASREL模型在所有三個評估指標方面均優于所有基線,在紐約時報和WebNLG數據集上,F1分數分別比最先進方法(Zeng等人,2019年)提高了17.5%和30.2%。即使不利用預先訓練的BERT,CASRELrandom和CASRELLSTM仍然與現有的最新模型相競爭。這驗證了所提出的級聯解碼器的實用性,該解碼器采用了一種新的二進制標記方案。從CASRELrandom到CASREL的性能改進突出了先驗知識在預訓練語言模型中的重要性。
不同類型句子的詳細結果? 為了進一步研究CASREL框架提取重疊關系三元組的能力,我們對不同類型的句子進行了兩次擴展實驗,并與前人的工作進行了比較。
圖3顯示了三種不同重疊模式的詳細結果。可以看出,大多數基線在Normal、EPO和SEO上的性能都呈下降趨勢,反映出從不同重疊模式的句子中提取關系三元組的難度越來越大。也就是說,在這三個重疊的模式中,普通類是最容易提取的模式,而EPO和SEO類則是比較難提取的基線模型。相比之下,所提出的CASREL模型在所有三個重疊模式上都獲得了一致的強性能,特別是對于那些硬模式。我們也驗證了CASREL在從不同三元組數的句子中提取關系三元組的能力。我們把句子分成五類,表3顯示了結果。同樣,CASREL模型在所有五個類中都取得了優異的性能。雖然發現大多數基線的性能隨著句子中包含的關系三元組數量的增加而下降并不奇怪,但是從不同模型的性能變化中仍然可以觀察到一些模式。與以往致力于解決關系三元組抽取中的重疊問題的工作相比,我們的模型對輸入句子日益復雜的影響最小。盡管與最先進的方法CopyRRL(Zeng et al.,2019)相比,CASREL模型在所有五個類別上都獲得了相當大的改進,但這兩個數據集的F1得分的最大提高都來自最困難的類別(N≥5),這表明我們的模型比基線更適合復雜的場景。
這兩個實驗驗證了級聯二元標記框架在從復雜句子中提取多個(可能重疊)關系三元組方面的優越性。以往的研究都需要明確地預測句子中可能包含的所有關系類型,這是一個相當具有挑戰性的任務,因此在提取的結果中缺少許多關系。相比之下,我們的CASREL模型不考慮關系類型的預測,并且傾向于從給定的句子中提取盡可能多的關系三元組。我們將此歸因于級聯解碼器的高級標記模塊中的關系特定對象標記器同時考慮了所有關系類型。
總結
本文中,我們介紹了一個新的級聯二進制標記框架(CASREL),它是從關系三元組抽取的一個原則性問題中派生出來的。我們沒有將關系建模為實體對的離散標簽,而是將關系建模為映射主語到賓語的函數,這為重新審視關系三元組抽取任務提供了一個新的視角。因此,我們的模型可以同時從句子中提取多個關系三元組,而不存在重疊問題。我們在兩個廣泛使用的數據集上進行了大量的實驗,以驗證所提出的CASREL框架的有效性。實驗結果表明,在不同的場景下,我們的模型的性能遠遠優于最新的基線,尤其是在重疊關系三元組的提取上。
?
OpenKG
開放知識圖譜(簡稱 OpenKG)旨在促進中文知識圖譜數據的開放與互聯,促進知識圖譜和語義技術的普及和廣泛應用。
點擊閱讀原文,進入 OpenKG 博客。
總結
以上是生活随笔為你收集整理的论文浅尝 - ACL2020 | 用于关系三元组抽取的级联二进制标记框架的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 研讨会 | 知识图谱引领认知智能+
- 下一篇: 论文浅尝 - ICLR2020 | 用于