Benfeng Xu, et al., “Entity Structure Within and Throughout: Modeling Mention Dependencies for Document-Level Relation Extraction”, AAAI 2021
目录
展开
1 简介
- 姓名:SSAN
- 机构:中科大,百度
- 任务:DocRE (模型可以迁移到其它 task
- 流派:基于 BERT
- 动机:前人的方法里,文本结构信息和 conextual 信息都是在不同的 module 使用的;作者觉得,应该一起
- 方法:修改了 BERT 里面的 attn 结构,在计算 attn score 时加了一项
- 对 doc 里面每个 token,两两找关系 $\in$ {intra+coref, inter+coref, intra+relate, inter+relate, intraNE, NA},构建“邻接矩阵” $S$
- $e = qk/\sqrt{d} \rightarrow e = (qk + \text{bias})/\sqrt{d}$,bias 有两种,都是把 $S$ 离散的值变成网络参数;每层 transformer 不共享参数
- biaffine:$\text{bias} = qA_sk + b$
- decomposed linear: $\text{bias} = qK_s + Q_sk + b$
- 性能:SOTA @ DocRED(59.19),RoBERTa Large + 预训练 65.69!
- 短评:简单优雅
- 实验:
- bilinear 比 decomposed linear 好
- decomposed linear 里面,$Q_sk$ 比 $qK_s$ 更有用,作者说 “which implies that the key vectors might be associated with more entity structure information”,我觉得只是因为,Q 是 softmax 归一化的方向,在这个方向上加一个 s 的参数才是更合理?我也不太清楚
- 多层 transformer 里面,只有后几层才对不同的 s 有强烈的倾向(coref 很正,relate 很负),作者说前几层 “self-attention score will be mainly decided by unstructured semantic contexts”,后几层 “self-attention score will be greatly regulated by the struc- tural priors”,感觉可能就像 CNN 对图像提取特征一样,高层的才是更接近词的特征?
2 思考
- 建的邻接矩阵,mention 内的 token 设为 intra+coref,这合理吗?(在目前六类肯定是最好的了,不过有没有必要再来一类“intra mention”呢?
- 突然想到,对于这种两个输入一个输出的函数,是不是可以对比一下 concat / bilinear / decomposed linear / fully connect 这些函数?
- 这篇文章的操作,相当于是在 attention 的时候,更关注 coref 的 token。这个思路是非常不错的,那能不能修改一下方式呢?比如 graph attn(之前好像看到有人这样做过 DocRE),比如 attention gate(COLING 20 那篇),或者直接就把 $S$ 里面的几类简单地搞成几个参数,按位相乘到 attn score matrix 上面?感觉可以实现的方式有很多。
同学你好,在这篇论文中有些许疑惑,想请教一下:
论文的主要创新点在于formulate了一个可以反映文档结构的entity-centric adjacency matrix, 在2.3小节也提到”我们利用特定的参数实例化了此矩阵中的元素”,并在之后介绍了两种Transformation module。我想知道在此处是如何将adjacency matrix中的元素实例化为具有特定意义的神经层参数的呢?这个实例化过后的矩阵的信息是否包含在公式(6)中的A或公式(7)中的K,Q呢?是否在此过程中结构信息是否有所损失呢?
你好:
1. “在此处是如何将adjacency matrix中的元素实例化为具有特定意义的神经层参数的呢?”
我理解是随机初始化这一组 $A_{l,s_{i,j}}$ 或者 $K_{l,s_{i,j}}, Q_{l,s_{i,j}}$,作为可以学习的参数。
2. “这个实例化过后的矩阵的信息是否包含在公式(6)中的A或公式(7)中的K,Q呢?”
所谓“矩阵的信息”,也不过是几种 token 之间的关系,就把它看成六个关系种类,我觉得是没有损失的。(比如,在文本分类的时候,我们写模型时把标签写成 012345,抛弃了标签具体的文本内容,这也算是“损失信息”吗?(当然,也有人在做“引入标签信息”的工作))
谢谢你的回复,我想我应该明白啦!感谢!
不客气,我们多多交流呀~