Snapshot

  • 模型名称:SSAN(Structured Self-Attention Network)

  • 论文来源:AAAI 2021 中科大

  • 面向任务:DocRE

  • 方法分类:BERT-based

  • 论文动机:着重关注于entity structure, 以往都是将这部分作为一个补充信息或者通过一个精心设计的图结构 (delicately designed) 引入entity structure。在基于graph的方法中,context reasoning 与 structure reasoning是分开的(isolation),作者认为这样不合理。

    观点:The contextual representations cannot benefit from structure guidance in the first place. Thus, structural dependencies should be incorporated within the encoding network and throughout the overall system. 即在编码阶段融入结构依赖信息。

  • 指标分数:

    • Ign F1:56.06;F1:58.41(BERT Base)

    • Ign F1:63.78;F1:65.92 (+Adaptation预训练 )

      BERT Base并没有LSR指标好,Adaptiation思路可以借鉴;

  • 快看速评:动机来得比较奇怪,很好奇怎么会有这个动机,大部分基于PLMs的模型往往都忽略了文档本身所带包含的结构依赖信息(such dependencies 能够反映在实体mention间丰富的交互),而只是从context的角度出发去更新实体表示,进而进行下一步的关系分类;或者基于图结构编码文本结构信息和 conextual 信息是

  • 在不同的 module 使用的(如LSR)。作者认为自己的模型可以同时进行context reasoning和structure reasoning。

  • 代码复现:https://github.com/BenfengXu/SSAN

Method

SSAN核心在于formulate entity structure priors到attention biases,利用attention biass调整self-attention的propagation.

  1. 预定义mentions之间的关系:

    • Co-occurrence structure: 两个mention出现在同一个sentence。
    • Coreference structure:两个mention指向同一实体。

    而对于非entity的words之间,若在同一sentence中,记为intraNE,在不同句子中记为NA

    The overall structure is formulated into an entity-centric adjacency matrix with its elements from a finite dependency set.

    整个结构被公式化为以实体为中心的邻接矩阵,其所有元素来自一个有限的依赖集;

    总计为6种结构关系:{intra+coref, inter+coref, intra+relate, inter+relate, intraNE, NA}

  2. 设定 token sequence $x = (x_1,x_2,\dots,x_n)$ 以及 $S=\left\{s_{ij}\right\}$ , $s_{i j} \in$ {intra+coref, inter+coref, intra+relate, inter+relate, intraNE, NA},根据输入$x$, 得到相应的query/key/value vector:

    实际编码

    给定输入,计算unstructured attention score:

    与计算structured attention bias:

    To incorporate the discrete structure $s_{ij}$ conditioned on their contextualized query / key representation:

Transformation Module:

  • Biaffine Transformation

  • Decomposed Linear Transformation

    $b_{l, s_{i j}}$: prior bias, independent to its context.

  1. 计算在pre-specified relation下的概率Cross entropy loss:

Experiment

  • 如下,大部分情况下Biaffine Transformation较Decomposition Linear Transformation更好,总体效果在BERT作为PLMs下,效果还是不如LSR( yyds!)
  • +Adaptation

    • 动机:Newly introduced transformation layer与 pretrained Transformer models 存在 distribution gap

    • 做法:在finetuning on人工精标训练集前,在大量的远程监督数据集上先pretrain下。

      distribution gap 待考证 TODO-2

  • 消融实验

    • 每一个预定的mentions 间关系都很重要,缺一不可

    • Bias Term中,在decomposed Linear Transformation下,key conditioned bias 较 query conditioned bias对性能影响更大。

      key vectors might be associated with more entity structure information ???

      有待考究其具体意义表示 TODO

  • 可视化Attentive Biases

    • 底层layer受structured bias影响较小;在顶层layer中,structural priors开始发力;
    • 其中,Inter+coref significantly positive,也符合人类常识;
    • 下图的右侧图中,bias施加在底层的影响小于对顶层的影响。

TODO

  1. 文献阅读:

    [1] Simultaneously Self-Attending to All Mentions for Full-Abstract Biological Relation Extraction # multi-instance learning

    [2] Self-Attention with Relative Position Representations 作者称此篇启发了这篇工作

    [3] Transformer-XL: Attentive Language Models beyond a Fixed-Length Context

    [4] Extracting Multiple-Relations in OnePass with Pre-Trained Transformers.

  2. Distribution gap 怎么减小这类gap?

  3. transformer中三个向量的意义考究。

附录:

$A_{l,s_{i,j}}$或者$K_{l,s_{i,j}}, Q_{l,s_{i,j}}$,

对于定义的5种依赖关系,随机初始化5组可学习的$A$或者$K, Q$,其分别对应于五种依赖关系(NA关系不建模?),对于特定的token $i$, token$j$,其带给原本attention score的偏差根据不同的依赖关系不同(体现在于计算bias时用的是哪个可学习$A$或者$K, Q$)

师兄 如果每一transfomer layer中计算bias的A或者K,Q都不同,那初始化就不止五组A或K,Q了,而是5*l组A或K,Q了(我是不是哪里理解错了)

是啊,每一层都有新的AKQ

总觉得是不是应该只有5组 A,K,Q,每层共享会不会好一些呢,这样这5组A,K,V就唯一表示了五组依赖关系….

但是transformer每一层的representation是不同的,AKQ模块需要和每一层的hidden representation的k和q交互,是自适应的,layer 0的k,q和layer11的k,q不在同一个表示空间里,所以这里也引入了不同的AKQ模块去拟合它们