ACL 2020 开源论文 | 基于Span Prediction的共指消解模型
論文標題:
Coreference Resolution as Query-based Span Prediction
論文作者:
Wei Wu, Fei Wang, Arianna Yuan, Fei Wu and Jiwei Li
論文鏈接:
https://arxiv.org/pdf/1911.01746.pdf
代碼鏈接:
https://github.com/ShannonAI/CorefQA
在本文中,我們提出一種基于問答(QA)的共指消解(coreference resolution)模型,將每個候選指稱(mention)所在句子作為問題,然后模型去抽取文本中所有和該指稱共指的文段(span)。這種方法避免了傳統共指消解模型的若干問題。
我們提出的模型在數據集CoNLL2012、GAP上取得當前最優結果,分別為83.1和87.5的F1值,大幅度超過之前的最優結果,分別提高了3.5與2.5的F1值。在這篇文章公布之初,就被國際諸多同行在Twitter上熱議:
將Coref視為一種QA格式可以大幅提高效果
QA的任務與格式之論:
本文(Coreference Resolution)很有趣而且的確有用!
共指消解(Coreference Resolution)
共指消解是NLP中的一項重要任務,它要求找出文本中指向同一實體的所有文段,這是因為,人們對同一個實體往往有多種不同的說法,如代詞、省略詞、別名等等。
比如下面一段文本,依次出現了“北京大學”、“北大”、“北京大學校”、“國立北京大學”、“她”,但我們都知道,它們都指向了“北京大學”這個實體,因此說它們說是共指于“北京大學”的,共指消解的目標就是把它們都找出來。
北京大學,簡稱北大,成立之初為中國最高學府。中華民國建立后,校名改為北京大學校,后又改名為國立北京大學。她現有六個校區。
共指消解在自然語言處理中是一項非常困難的任務,因為它不僅要求理解整段文本的語義,而且還要規避諸多的歧義。比如在上述文本中,模型就很有可能把“學府”此類語義相近的詞匯識別為共指詞。
過去的共指消解模型大都分為兩個步驟處理:
首先考慮文本中所有限定長度的文段,挑出其中可能成為共指詞的那部分(稱為候選指稱);
再按照尋找前驅的方法找到下一個共指詞(比如當然已經找到的共指詞有{北京大學校、國立北京大學、她},那么下一個前驅共指詞就是“北大”,再下一個就是“北京大學”)。
然而,這種做法有兩個問題:
在任務層面,第一步被遺漏的共指詞就會被永遠遺漏,造成錯誤傳遞,比如漏選了“北大”之后,它就永遠沒有機會被選為共指詞了;
在算法層面,這些模型通常給一對指稱打分,然后根據得分大小判斷是否這一對指稱共指,這就忽略了顯式的上下文信息。
如下圖所示,在第一階段漏選了“北大”,導致最后選擇的共指詞沒有“北大”這個正確答案;在第二階段錯誤地將“學府”識別為了“北京大學校”的前驅,從而在最后包含了“學府”這個錯誤答案。
基于這兩個缺點,我們提出用問答(QA)的方式進行共指消解。
首先,我們還是提取出一些候選指稱,但是之后,我們對每個指稱,將它所在的句子作為問題,將整個文本作為上下文,把二者拼接起來,通過一個問答模型抽取整個文本中該指稱的所有的共指詞。
還是舉上述文本的例子。如下圖所示,我們抽取出的候選指稱一共有8個,對每個候選,我們都把它所在的那句話作為問題(比如對指稱八,我們就選取了“她現有六個校區”作為問題),并且把該指稱用一對特殊符號<m></m>包圍起來,以區別同一句話內的不同指稱;然后再把整個源文本作為上下文。
二者相加,作為輸入。模型輸出的,就是在源文本中,與當前指稱(如指稱一的“北京大學”)同指的那些詞。在這個例子中,我們抽取出了“北大”、“北京大學校”和“國立北京大學”。之后,我們繼續對其他指稱進行這個操作,就可以抽取出所有的共指詞。
如此一來,由于每個指稱既能作為問題,又能作為上下文的一部分,從而就極大降低了它被二次遺漏的可能性。
同時,通過顯式提供上下文信息,我們能夠更加準確地抽取共指詞,實現顯著的效果提升。
通過這種方法,我們能夠在共指消解標準數據集CoNLL2012和GAP上取得當前最優結果,分別達到了83.1和87.5的F1值,比之前的最優結果分別提高了3.5與2.5。
基于QA的文段抽取式共指消解模型
下圖是所提出模型的示意圖。該模型由一個指稱提取模塊和一個指稱鏈接模塊組成,前者從原始文本中提取出所有可能的指稱,后者將指稱聚類為共指詞。下面我們來分別介紹這兩個模塊。
?指稱提取模塊
設輸入文本是,此時如果考慮所有可能的文段(span),那么一共就有個不同的文段。設是第個文段,它的開始位置是FIRST(i),結束位置是LAST(i)。
對,我們首先用“[SPEAKER]+說話人姓名+[SPEAKER]”表示輸入文本中的說話者,然后再把整個文本轉化作為SpanBERT的輸入得到每個輸入單元的特征表示,下圖是一個例子:
在得到每個單元的特征表示之后,我們考慮長度最大為的文段。如此一來,每個文段可能是指稱的得分可以簡單地用一個FFN得到:?。在得到所有文段的得分之后,我們只取前λN個作為候選指稱。
指稱鏈接模塊
對候選指稱中的任意一個指稱,和指稱鏈接模塊任意一個其他候選指稱,計算它們是共指的得分。
具體來說,我們把所在的句子作為問題,把源文本作為上下文,然后通過一個SpanBERT給中的每個語言單元打上BIO的標簽,其中B代表開始位置,I代表中間位置,O代表詞外位置。從而這個概率也可以用一個簡單的FFNN實現:
此處tag是B/I/O中的一個。然后我們把這個概率拓展到文段級別,得到對共指的得分:
顯然,要使得上述得分最大,就是要讓中括號里面的式子最大,從而就是要對指稱,讓它的起始位置為標簽B的概率最大,讓它的其他位置為標簽I的概率最大,這也就對應了標簽B和I的意義。
再根據對稱性(把所在的句子作為問題),我們就知道和是共指的得分為:
最后再加上兩者是指稱的得分:
這就是它們最終為共指詞的得分。
用MRC數據集數據增強
由于該模型是基于問答框架,用問答數據集去預訓練它可能會有更好的結果。為此,我們用Quoref和SQuAD兩個數據集去預訓練指稱鏈接模塊。
訓練與推理
由于所有可能的文段有個,全部考慮太耗時,所以對每個,我們只根據選取前個以盡量節省時間。
此時,每個都有一個它是否和共指的概率:
我們使用交叉熵去優化它即可。在推理的時候,我們可以得到一個無向圖,每個結點是一個候選指稱。我們只需要對每個結點保留它的最大得分的邊,其構成的連通子圖就是某個實體的所有共指詞。
實驗
我們在共指消解標準數據集GAP和CoNLL2012上進行試驗,基線模型有e2e-coref, c2f-coref+ELMo, c2f-coref+BERT-large, EE+BERT-large, c2f-coref+SpanBERT-large。其他設置詳見原文。
下表是各模型在GAP上的試驗結果。其中M是Masculine Examples,F是Feminine Examples,B是Bias factor(F/M),O是Overall F1。
下表是各模型在CoNLL2012上的結果。
可以看到,在兩個數據集上,我們的方法都取得了顯著更好的結果,達到了當前這兩個數據集上最佳表現。
因子分析
各組件影響
下表呈現了所提出模型中各組件的影響,可以看到,SpanBERT影響很大,而QA影響最大,去掉它會降低8.4個F1值,而在問答數據集上的預訓練也有較大影響。這說明問答本身對所提出模型是至關重要的。
說話者表示的影響
在我們的模型里,我們把每個說話者的姓名當做一個單獨的符號處理,而過去的方法則是把說話人轉化為二元特征來表示兩個指稱是否來自同一個說話人。
下圖是兩種方法的比較,可見,隨著說話者數量的增加,我們的方法具有更顯著的優勢,這是因為單純的特征表示無法處理說話人多的情況,只有顯式地表示每個說話人,才能區別其中的指稱。
召回率分析
前面提到,問答的方法可以減少指稱提取的錯誤傳遞,從而會有更高的召回率。下圖證明了這一點。即使平均每個詞只保留20個文段作為候選指稱,其召回率也有90+。
小結
在本文,我們提出了一個基于問答框架的共指消解模型,通過指稱抽取——指稱鏈接兩個步驟,完成對共指詞的聚類。這種方法能夠在兩個標準數據集上實現當前最優效果,并通過一系列分析實驗證明“問答”本身具體至關重要的作用。
進一步討論:問答模式是否有益
包含本文在內,我們已經介紹了三篇基于“問答”框架的文章了(前兩篇是關系抽取和實體抽取),它們都能獲得非常顯著的效果提升,甚至實現最優結果。
那么一個自然的問題是,這種問答框架是否對所有NLP任務都適用呢?
其實從直覺上講,廣義上的問答無非是為模型提供了額外的上下文信息,使得模型能夠更簡單地得到答案。
于是,兩個問題隨之而來:提供什么信息,怎么提供信息。提供什么信息是要選擇怎樣的文本作為“問題”,選取怎樣的文本作為“上下文”。怎么提供信息是信息組織的方法,也即針對這種形式所設計的模型結構。
當前,對“提供什么信息”這個問題,我們還僅僅是從原始文本中抽取,或者用預先定義的模板;對“怎么提供信息”這個問題,我們僅僅是使用了BERT等預訓練模型。我們相信,如何更好地解決這兩個要點,是此方法發展的方向。
????
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
關于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
總結
以上是生活随笔為你收集整理的ACL 2020 开源论文 | 基于Span Prediction的共指消解模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 游戏《地球防卫军 6》PC 版取消强制
- 下一篇: 美股怎么开户