Attention Guided Graph Convolutional Networks for Relation Extraction

Attention Guided Graph Convolutional Networks for Relation Extraction

前言

​ 正式入门NLP-关系抽取研究的第一篇论文。关系抽取的目的是发现文本中不同实体之间的关系。它在知识图谱,问答系统中起着重要的作用。

​ 现存的大多数关系抽取模型可以分为两类,基于序列和基于依赖的。基于序列的模型研究的是词序列,基于依赖的模型是将依赖树添加入模型中。后者可以捕捉到单独从表面形式上模糊的句法信息。

​ 谨记录学习的点点滴滴。

正文

Abstract

​ dependency trees包含着对于关系抽取非常有用的结构信息,但是当去除不想关信息时,如何有效使用对应的信息是一个很大的挑战。现有的,为了选择对应的部分依赖架构的hard-pruning策略并不总是产生最优的结果。本文中,提出了AGGCNs模型,这个模型直接把整棵依赖树作为输入(转为全连接的权重图),区别于前者的修剪之后的输入,称之为soft-pruning策略。

模型(Attention GUided GCNs)

在这里插入图片描述

​ AGGCN由M个相同的block组成,每个block包括Attention Guided Layer和N个Densely Connected Layer以及Linear Combination Layer(如右侧所示)。每个block将node embedding和表征图的邻接矩阵作为输入。N个 attention guided adjacency matrices,A~(1)到A~(n)\tilde{A}^{(1)} 到 \tilde{A}^{(n)}A~(1)A~(n)由multi-head attention 生成

Attention Guided Layer

​ 这篇文章第一次引入了attention guided layer在AGGCN模型中。之前存在了一些预定义的修剪策略,它们通过构造好的邻接矩阵去将full tree 转化为 subtree,这可以看作 hard attention的一种形式,在 subtree中不存在的边在邻接矩阵对应的元素直接赋为0。在Abstract中提到,这种方式可能消除了原始的 full tree中的信息,而本文的attention guided layer 实现的soft pruning 则可以克服这一缺点。在attention guided layer 中,先将原始的图转化为邻接矩阵,然后通过 multi-head attention 转化为 全连接的 attention guided adjacency matrice A~\tilde{A}A~, 矩阵中的每个元素对应相应节点之间边的权重,从而捕捉到领域的信息,甚至是multi-hop 的信息。
A~(t)=softmax(QWiQ×(KWiK)Td1/2)V \tilde{A}^{(t)} = softmax(\frac{QW^Q_i\times(KW^K_i)^T}{\sqrt[1/2]{d}})V A~(t)=softmax(1/2dQWiQ×(KWiK)T)V

​ Q,K都等于模型在l-1层即上一层的集体表征h(l−1)h^{(l-1)}h(l1)WiQW^Q_iWiQWiKW^K_iWiK是通过训练得到的参数矩阵。A~(t)\tilde{A}^{(t)}A~(t)是第t层的对应第t个head的attention guided adjacency矩阵。在实际的训练中,由原始图得到邻接矩阵即为attention guided adjacency的初始化。Attention Guided Layer层中的N是预设参数。

Densely Connected Layer

​ Densely Connected Layer使得可以模型可以更加深层次,从而捕捉到丰富的局部和非局部信息,得到更佳的图表征。数学上,定义gj(l)g^{(l)}_jgj(l)作为初始节点表征和之前1,…,l-1层中节点表征的连接。由于上一层的attention guided layer产生了N个不同的A~\tilde{A}A~,所以一个block中包含N个densely connected layer。
gj(l)=[xj;hj1;…;hjl−1] g^{(l)}_j = [x_j;h^{1}_j;…;h^{l-1}_j] gj(l)=[xj;hj1;;hjl1]
​ 实际上每个densely connected layer由L个sub layer组成,这些sub_layer的大小由L和输入特征的大小d决定,即d/L。这一点与GCN模型隐藏维数大于或者等于输入特征大小不同,它是可收缩的,有助于使参数更加有效(类似DenseNets,实际上是减少参数,不过是否节约显存就不知道了)。

​ 第t个densely connectly layer层中,对于图中的第i个结点,第l个sub-layer层中,节点的表征hti(l)h^{(l)}_{t_i}hti(l) 计算如下:
hti(l)=ρ(∑j=1nA~ij(t)Wt(l)gj(l)+bt(l)) h^{(l)}_ {t_i} = \rho(\sum_{j=1}^{n}\tilde{A}^{(t)}_{ij}W^{(l)}_tg^{(l)}_j+b^{(l)}_t) hti(l)=ρ(j=1nA~ij(t)Wt(l)gj(l)+bt(l))
​ t = 1,…,N,选择了对应的 attention guided adjacency matrix和偏差,A~ij(t)\tilde{A}^{(t)}_{ij}A~ij(t)代表了节点i和j之间的权重。Wt(l)∈Rdhidden×dlW^{(l)}_t \in R^{d_{hidden}\times d^{l} }Wt(l)Rdhidden×dldl=d+dhidden×(l−1)d^{l} = d + d_{hidden} \times (l-1)dl=d+dhidden×(l1)(参照gj(l)g^{(l)}_jgj(l)的dimensions)

Linear Conbination Layer

​ 通过线性混合层合并N个不同的densely connected layer,输出如下:

hcomb=Wcombhout+bcomb h_{comb} = W_{comb}h_{out} + b_{comb} hcomb=Wcombhout+bcomb
在这里插入图片描述

Final

​ 经过上述的AGGCN模型,我们得到所有tokens的表征,之后关是预测实体之间关系。论文中将句子的表征和实体表征合并。

​ 首先,需要得到sentence representation:
hsent=f(hmask)=f(AGGCN(x)) h_{sent} = f(h_{mask}) = f(AGGCN(x)) hsent=f(hmask)=f(AGGCN(x))
​ 这里面的mask表示我们仅仅选择了除去了实体表征之后的段落表征(不知道理解是否正确,因为之后还有 entity token representation)。f函数是一个池化函数:
在这里插入图片描述
在这里插入图片描述
以上介绍了最后通过逻辑回归进行关系的预测。

Qusetions

  1. 如何理解LCA和距离LCA,K步的意思
  2. 词性标注,关系种类
  3. 论文2.5不理解

补充

[卷积][https://www.zhihu.com/question/22298352]: 通俗地理解卷积

[GCN][https://www.zhihu.com/question/54504471]

[谱分解][https://baike.baidu.com/item/特征分解/12522621?fr=aladdin]

/question/54504471]

[谱分解][https://baike.baidu.com/item/特征分解/12522621?fr=aladdin]

[self-attention][https://zhuanlan.zhihu.com/p/47282410]

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值