ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

指代消解《End-to-end Neural Coreference Resolution》论文笔记

2021-05-15 15:59:06  阅读:474  来源: 互联网

标签:得分 antecedent End Neural mention 指代 she span Sally


此前的研究

  • 语法解析的错误会传递到模型中(parsing mistakes can introduce cascading errors)
  • 手动特征工程的构建不具有泛化性(many of the hand-engineered rules do not generalize to new languages)

基本术语

参考链接1:https://blog.csdn.net/Answer3664/article/details/102942352
参考链接2:https://blog.csdn.net/weixin_44912159/article/details/106280699

  • mention:可以理解为文档中的实体的不同指代(表述),它可以是代词、也可以是命名实体、还可以是名词短语,其实也可以理解成文档中所有实体,为了和entity加以区别。
  • antecedent:可理解为前指,图中 “Sally” 和 “she ” 具有共指关系,它们都指向关于“Sally”这个人。“Sally” 在"she"前面,即“Sally” 是“she”的前指。
  • coreferent:共指关系,如antecedent中所提。
  • cluster:簇,类似于聚类中的簇,图中 “Sally” 和 “she ” 为一个簇, “John” 和 “him” 为一个簇。
  • anaphoric:回指,回指表示的是抽象化的实体,图中“Sally” 是具体化的实体,“she"是抽象化实体,即“she” 是“Sally”的回指。
  • non-anaphoric:没有回指,如"violin"只有具体化的实体,无抽象化的实体。

Task

  1. 一段文本 D D D 中含有 T T T 个单词,将这些单词分成 N N N 个 span 并用 i i i 进行索引,span( i i i)的头尾索引使用START( i i i)及END( i i i)表示。
    N = T ( T + 1 ) 2 N=\frac{T(T+1)}{2} N=2T(T+1)​
    所有的span依据START( i i i)排序,若START( i i i)相等则按END( i i i)排序。
# 例句 I need you.  有3个word
6种可能的子串:I |need |you |I need|I you |need you|
  1. 对于一个 span( i i i)中的所有可能的antecedent y i y_i yi​组成 γ ( i ) = { ε , 1 , . . . , i − 1 } \gamma(i)=\{\varepsilon, 1, ..., i-1\} γ(i)={ε,1,...,i−1}, ε \varepsilon ε表示这个span不是一个mention或是一个mention但与之前所有span没有coreferent
    (The dummy antecedent ε \varepsilon ε represents two possible scenarios: (1) the span is not an entity mention or (2) the span is an entity mention but it is not coreferent with any previous span)

Model

使用条件概率分布,使得最有可能的cluster概率最大

s ( i , j ) s(i,j) s(i,j)表示span( i i i)和span( j j j)之间的共指得分(a pairwise score for a coreference
link between span i i i and span j j j in document D D D)
图3
s ( i , j ) s(i,j) s(i,j)没有前指时为0

算法步骤

在这里插入图片描述

  1. 用向量表示每个单词 x i x_i xi​,由预训练的word embedding 和一维 CNN 拼接而成
  2. 使用双向LSTM计算出每个span的向量表示 x ∗ x^* x∗
  3. 使用注意力机制(Attention Mechanism)对span中的单词进行学习,得到 x ^ \widehat{x} x
  4. 得到span的特征表示 g i = [ x S T A R T ( i ) ∗ , x E N D ( i ) ∗ , x ^ i , ϕ ( i ) ] g_i =[x_{START(i)}^*, x_{END(i)}^*, \widehat{x}_i, \phi(i)] gi​=[xSTART(i)∗​,xEND(i)∗​,x i​,ϕ(i)], ϕ i \phi{i} ϕi表示span( i i i)的大小(长度)
    在这里插入图片描述
  5. 将 g g g 送入前馈神经网络(FFNN)计算得到 s m s_m sm​ 和 s a s_a sa​
    在这里插入图片描述
  • s m ( i ) s_m(i) sm​(i)表示span( i i i)是一个mention的一元得分
  • s a ( i , j ) s_a(i, j) sa​(i,j)表示span( j j j)时span( i i i)的antecedent的得分
  1. 通过公式 s ( i , j ) = s m ( i ) + s m ( j ) + s a ( i , j ) s(i, j) = s_m(i) + s_m(j) + s_a(i, j) s(i,j)=sm​(i)+sm​(j)+sa​(i,j) 得出span( i i i)和span( j j j)之间的共指得分共指得分
  2. 由softmax函数得出 P ( y i ∣ D ) P(y_i|D) P(yi​∣D),得到每个mention最有可能的antecedent
剪枝

计算完每个span的得分后,对得分高的保留,得分低的剪掉;对于保留下来的,每个span也只考虑指定个数的前指。降低计算量并保持不错的召回率。

结果

在这里插入图片描述

参考

[1] https://blog.csdn.net/weixin_44912159/article/details/106276874
[2] https://blog.csdn.net/weixin_44912159/article/details/106280699
[3] https://blog.csdn.net/Answer3664/article/details/102942352
[4] End-to-end Neural Coreference Resolution
[5] OntoNotes数据集
[6] 源码(tensorflow)
[7] PyTorch复现源码

标签:得分,antecedent,End,Neural,mention,指代,she,span,Sally
来源: https://blog.csdn.net/weixin_44063212/article/details/116848741

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有