寫在前面
今天來跟大家分享一篇發表在2020ACL上的實體關系抽取論文CasRel。
論文名稱:《A Novel Cascade Binary Tagging Framework forRelational Triple Extraction》
論文鏈接:https://aclanthology.org/2020.acl-main.136.pdf
代碼地址:https://github.com/weizhepei/CasRel
1. 關系抽取任務定義
實體關系抽取(關系抽取)是構建知識圖譜非常重要的一環,其旨在識別實體之間的語義關系。換句話說,關系抽取就是從非結構化文本即純文本中抽取實體關系三元組(SRO)。這里 代表頭實體, 代表關系, 代表尾實體。
上圖展示了3個例子:
第一句文本中,“劉翔”和“上海”兩個實體之間的語義關系是“出生地”。
第二句文本中,“張藝謀”與“菊豆”兩個實體之間的語義關系是“導演”。
第三句文本中,“史蒂夫.喬布斯”與“蘋果”之間的語義關系是“創始人”。
2. 關系抽取方法
關系抽取方法主要可分為兩類:
管道學習方法(pipeline):管道學習方法通常先抽取句子中的實體,然后再對實體對進行關系分類,從而找出SRO三元組。
聯合學習方法(Joint):聯合學習方法同時進行實體識別和實體對的關系分類兩個子任務。
許多實驗證明聯合學習方法由于考慮了兩個子任務之間的信息交互,大大提升了實體關系抽取的效果,所以目前針對實體關系抽取任務的研究大多采用聯合學習方法。
進一步地,聯合學習方法又可以細分為以下兩種:基于參數共享的聯合模型;基于聯合解碼的聯合模型。另一方面,解碼方式對實體關系抽取性能的影響也很大,主要的解碼方式有三種:基于序列標注;基于指針網絡;基于片段分類。
《Joint Extraction of Entities and Relations Based on a Novel Tagging Scheme》[1]是采用序列標注的聯合解碼的典型方法。簡單地說,它將實體關系抽取當作了序列標注問題,設計了比較特別的標注標簽可以實現實體、關系的聯合抽取(如上圖所示)。
3. 關系抽取難點
如上圖所示,和大多數的自然語言處理任務一樣,關系抽取同樣有許多難點。我們今天所分享的CasRel關注的難點主要是三元組的重疊問題(實體關系重疊),即:輸入文本中有多個實體關系三元組,彼此之間可能共享了某些實體。
上圖給出了部分示例:
(劉翔, 出生地, 上海)與(劉翔, 出生時間, 1983年7月13日)都有“劉翔”;
(《少林足球》, 導演, 周星馳)、(《少林足球》, 編劇, 周星馳)、(周星馳, 參演, 《少林足球》)都有“《少林足球》”和“周星馳”;
(阿爾弗雷德.阿德勒, 出生地, 奧地利)與(阿爾弗雷德.阿德勒, 出生地, 維也納)都有“阿爾弗雷德.阿德勒”..
前面我們所提的聯合解碼模型由于其標簽設計或CRF層限定了每個token只能有一個tag,所以無法適用于實體關系重疊情況。此外,基于參數共享的關系抽取方法最后通常是一個多分類層,也就是一對實體只能有一個標簽。簡單地將其改成多標簽分類就能一定程度上解決實體關系重疊問題,但是這種改進并不具備什么創新性。
那接下來我們就來看看CasRel是如何另辟蹊徑來解決實體關系重疊問題的。
4. CasRel核心思想
CasRel本質上也是基于參數共享的聯合實體關系抽取方法,它通常被大家稱作層疊指針網絡。實際上,CasRel的核心思想或者說作者改進現有模型的重點在于子層的設計。
因為CasRel對于關系抽取這個任務的拆分不同,所以子任務及子任務求解順序也不同。具體地:首先CasRel 會識別所有可能的主語(頭實體);然后在給定類別關系 下,再去識別與主語相關的賓語(尾實體)。
更形式化的表達:如果說以前關系抽取/關系分類是這樣一個映射函數 ,;那么現在在CasRel中關系抽取對應的映射函數則是 。
與之相似的思想很早之前就有出現在知識圖譜表示學習方法當中,比如在下圖的 TransE[2]模型中就有 (這里 為頭實體, 為尾實體)。
5. 模型細節
現在我們再來看CasRel的模型細節。CasRel是一個基于聯合解碼的實體關系抽取模型,其思想和模型都很簡單,主要包括三層:
編碼端:基于BERT的編碼層用于獲取上下文語義信息對字/詞進行表征;
解碼端:解碼端主要包括了頭實體識別層、關系與尾實體聯合識別層。
在這里,基于BERT的編碼層我們就不做過多的介紹了,感興趣的讀者可以下載論文《Pre-trained Models for Natural Language Processing》進行閱讀學習。接下來,我們將著重介紹CasRel的解碼端。
5.1 頭實體識別層
CasRel的頭實體識別層直接對編碼層的結果進行解碼,去識別所有可能的頭實體。這里CasRel是識別頭實體span,也就是start和end位置,所以它采用的是二分類。這點和我們在實體識別BERT-MRC論文閱讀筆記、實體識別LEAR論文閱讀筆記中類似。
因此,模型本身很簡單:
首先,利用一個線性層一個sigmoid激活函數判斷每個token是不是頭實體的開始token或結束token;
然后,利用最近匹配原則將識別到的start和end配對獲得候選頭實體集合。
5.2 關系、尾實體聯合識別層
識別頭實體后就要進行關系和尾實體的聯合識別了。這里,CasRel是通過一組關系相關的尾實體識別層來實現的。每一層尾實體識別層的結構其實與頭實體識別層是一樣的,不同主要在于輸入:
頭實體識別層的輸入直接就是編碼層的輸出;
而尾實體識別層的輸入還考慮了頭實體的特征:
這里 是第 個候選頭實體所包含的所有token的向量的平均。
5.3 概率解釋
最后,我們從概率角度來看CasRel模型。
既然實體關系抽取任務就是識別文本中潛在的實體關系三元組,那么模型的優化目標可以直接建立在三元組這個層面上。
(1) 優化目標
假設 為訓練集, 是第 個輸入樣本, 是文本 中含有的所有三元組,CasRel的訓練目標自然是如下似然函數值最大:
(2) 概率公式變換
根據聯合概率=邊緣概率*條件概率,我們有:
這里 表示出現在 中的一個頭實體, 表示出現在 中且其頭實體為 的一組關系-尾實體對。 為先驗概率, 為條件概率。
(3) 關系作為先驗知識
然后,把關系作為先驗知識,我們可以進一步把上式右端第二項拆成兩部分,即出現在 中且頭實體為 的關系、其他關系:
這里, 是所有關系的集合, 表示出現在 中且頭實體為 的一組關系, 是 與 的差集,也就是沒有出現在 中的其他關系。
表示對于文本 與頭實體 以及沒有出現在 中的關系 來說,尾實體識別結果應當為空。所以最終我們有:
(4) 結論
可以發現最終這個式子與CasRel抽取實體關系三元組的子任務順序一致:
首先識別文本中所有可能的頭實體;
然后在每個關系類別下,去抽取與識別到的頭實體存在該關系的所有可能的尾實體。
另一方面,這個任務拆解方式也很自然解決了重疊實體關系三元組的提取問題。
5.4 實驗
實驗主要在兩個公開的數據集NYT和WebNLG上進行。此外,需要注意的是CasRel模型本身還有兩個變體:
:表示編碼端的BERT參數是隨機初始化的;
:表示編碼端使用的是LSTM而不是BERT。
當然CasRel則表示采用預訓練好的BERT作為編碼端。
(1) 整體實驗效果對比
上圖中展示了CasRel及其變體模型與其他基準方法在兩個數據集上的效果。可以看到CasRel及其變體的效果都高于其他方法;尤其在WebNLG數據上,相對提升得更多。仔細看NYT、WebNLG兩個數據分布差異還是蠻大的:
NYT、WebNLG兩個數據中都有Normal類型的三元組、SEO類型的三元組、EPO類型的三元組,且三者在兩個數據集中占比不同;
Normal、SEO、EPO分別代表常規實體關系三元組、單個實體重疊的實體關系三元組、實體對重疊的實體關系三元組;
NYT中的實體關系三元組類型多為Normal類型,即數據中常規實體關系三元組居多。
WebNLG中的實體關系三元組多為SEO類型,即單個實體重疊的實體關系三元組居多。
CasRel在兩個數據集上相對穩定的表現說明了在實體關系重疊這種復雜場景下,其框架的有效性。
(2) 不同三元組重疊類型實驗對比
上圖展示了在不同三元組重疊類型的樣本上各個基準方法與CasRel的實驗結果。可以發現隨著場景逐漸復雜(Normal->EPO、SEO),基準方法的效果都逐漸下降,但CasRel則取得了相對穩定且優異的表現。這個對比實驗進一步說明了CasRel在重疊三元組場景下的有效性。
(3) 不同三元組個數實驗對比
隨著樣本中三元組個數的增多,每個方法的效果都或多多少地受到了影響。尤其在 即多于五個三元組的樣本上,基準方法效果基本都大幅度下降,而CasRel相對要好一些。同時,在 的樣本上CasRel的效果相對于基準方法提升的最多。
這個對比實驗反映了CasRel相比其他基準方法在處理多實體關系三元組下的能力更強。
6. 延伸思考
CasRel的思想可以很自然地遷移到上去信息抽取中的另一大任務事件抽取上,因為在事件抽取同樣存在一些類似的挑戰:
輸入文本里面存在多個事件;
事件論元可能重疊,同一個論元可能扮演不同的角色、同一個角色下也可能有多個論元:同一個事件論元可能重疊;不同事件之間論元可能重疊。
6.1 事件抽取任務描述
事件抽取任務可拆為兩個子任務:
事件檢測(event detection):即觸發詞的抽取和事件類型判斷;
事件論元識別(argument extraction):即識別事件論元并判斷論元所扮演的角色。
6.2 CasRel范式遷移到事件抽取
阿墨最初看到CasRel時就想到它的層疊指針范式可以遷移到事件抽取中:
建模思路和子任務順序:CasRel建模思路(TransE 中也是類似的)是“頭實體+關系=尾實體”,即CasRel先抽頭實體,再抽關系和尾實體;遷移到事件抽取中,可以是“觸發詞+角色=論元”即先抽觸發詞,再抽角色和論元。
模型適配:CasRel 模型中的頭實體識別子結構適配到事件抽取中觸發詞檢測,CasRel模型中的關系尾實體識別子結構適配到事件論元識別。這樣就完成了事件檢測任務中的觸發詞抽取、事件論元識別任務,那么事件類型判定呢?
事件類型判定:事件類型判定既可在觸發詞檢測完后做,即僅對觸發詞分類,也可以在最后結合觸發詞/論元/角色信息進行事件分類。
小改動完成完全適配:如果考慮“原文+事件類型=觸發詞”,那么實際上事件類型判定和觸發詞抽取可一并完成。只需要把用于抽取觸發詞子結構換成和用于事件論元識別子結構類似或者說一致即可。
實際上,在2020年阿墨進行事件抽取相關實驗過程中,陸陸續續就有這個系列的工作出來如:JMCEE[3]、PLMEE[4] 及CasEE[5]。CasEE代碼也開源了,阿墨去年也在上面進行了一些實驗。文末附上了相關論文鏈接,感興趣的讀者可下載閱讀。
總結
今天我們分享了實體關系抽取模型CasRel,并在最后聯系事件抽取做了一些延伸思考。
審核編輯 :李倩
-
模型
+關注
關注
1文章
3261瀏覽量
48914 -
知識圖譜
+關注
關注
2文章
132瀏覽量
7715
原文標題:一文詳解關系抽取模型 CasRel
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論