笔记:Synchronous Dual Network with Cross-Type Attention for Joint Entity and Relation Extraction
Synchronous Dual Network with Cross-Type Attention for Joint Entity and Relation Extraction
作者:Wu and Shi.EMNLP 2021.
目录
- 简介
- 方法
- 实验
- 总结
1 简介
本文主要针对之前联合抽取工作所忽略的实体类型和关系类型之间的交互或者说是相互依赖性,提出SDN利用cross-type attention捕获与实体类型和关系类型相关的向量表示,进而基于此向量表示再做后续的实体关系分类/抽取。
2 方法
图2(b)为SDN整体结构,接下来就根据此图依次介绍各个部分,图2(a)为模型的一部分Type-Attention LSTM unit的内部结构。
2.1 Type-Attention LSTM
TA-LSTM基于LSTM加入类似transformer的dot-production attention即所谓的type-attention机制,目的是为了能够得到与实体和关系类型相关的表示,进而才才能cross-attention分别为实体和关系引入对方的信息得到参杂关系类型信息的与实体相关的token表示以及参杂实体类型信息的与关系类型相关的token表示,进而做实体关系分类。
具体来说如图2(a)以及公式(2)(3),LSTM时刻t-1的隐状态\(h_{t-1}\)与当前输入\(x_t\)拼接后线性变换过两次sigmoid得到(话说\(h_t\)也是这么算的少了个sigmoid变换而已)\(\mathbf{K^{(t)}=[k_1^{(t)},...,k_m^{(t)}]、V^{(t)}=[v_1^{(t)},...,v_m^{(t)}]}\)矩阵,其中m如图2(a)\(h_{t-1};x_t\)重复操作m次为了跟m个(实体or关系)类型数量对上统一吧,\(h_t^c\)因为LSTM会捕获context信息,就是LSTM的hidden state,c表示context,将\(h_t^c\)看作Q计算相似度后再乘V加权得到所谓的与类型相关的表示,最后如图2(a)再拼接\(h_t;h_t^l\)得到最终的表示。
2.2 Synchronous Dual Learning
设计实体类型和关系类型学习获得实体类型和关系类型增强表示\(h_t^e、h_t^r\)。
Entity Type Learning. 对应图2(b)左黑虚线框的输出,entity type prediction为辅助任务以及图3(a)。利用上文提到的TA-LSTM只不过此处双向的h合并到一个\(h_t^l,l=e\),根据以往经验一般想要模型达到paper中所说的效果,我们都需要设计一个目标函数使其在训练过程中尽可能拟合目标函数进而达到想要的模型效果,本文也类似加了个辅助任务即entity type prediction如图3(a)。
针对当前词\(w_i\),对其\(h_i\)的权重得分向量维度进行变换使其维度等于类别数,再过softmax相当于得到针对词\(w_i\)的与其实体类型相关联的基于其权重的向量假设为M,那么此辅助任务的训练目标就是针对每个词w尽可能使M中类别为\(T_l^e\)的概率最大,其中\(T^e_l\)为gold type类型为\(l\),很简单的一个辅助任务究其本质就是一个简单的NER,只不过一般NER用的是经过一些列操作编码得到的token的表示\(h_i\)过softmax分类器,而本文其实也是\(h_i\)只不过此\(h_i\)是通过文中所谓的Type-Attention机制得到的而已。
Relation Type Learning. 同理对应图2(b)右黑虚线框输出以及辅助任务relation type prediction以及图3(b)。类似实体类型学习,只不过如图3(b)关系类型为\(2\times M+1\)为关系类型+主客实体类型的组合,同时此辅助任务也是类似关系标签分类,但由于关系重叠的问题,此分类为多标签的分类如图每个token可能有多个标签,我们就用二分类器来实现有此关系tag为1否则为0。
2.3 Cross-Type Attention Mechanism
有了以上的基础,就要利用相互之间的信息即cross-type attention如图2(b)中将的cross-attention,还是基于section 2.1TA-LSTM的type-attention得到的类型相关表示,还是利用公式3,将实体类型的相似度矩阵换成由关系类型的相似度矩阵进而达到将关系类型信息引入实体类型相关的表示,反之,关系类型相关的表示加入实体类型信息,亦然。详见paper。
2.4 Joint Entity and Relation Extraction
有了前面的铺垫后面抽取就很容易了,前面其实就相当于句子编码器得到对应每个token与类型(实体or关系)相关的表示,本文应该是pipeline做两个子任务,实体抽取部分看作序列标注任务BIESO标注方案分类判断每个token的label,关系抽取也是一样多标签分类采用二分类器为每个token pair判断所有可能的关系标签,如公式12。
trianing训练阶段目标函数就是几个loss相加。
Inference推理的话判断两个实体关系是否为r,根据关系抽取时得到的所有token pair类型,将两个实体内所有token pair的类型r维度的概率相加得到一个值再判断是否大于阈值大于则判断有此三元组。
3 实验
数据集NYT、WebNLG。
Ablation Experiments 去掉辅助任务后性能大幅下降,可以证明确实有用,\(L_{ET}、L_{RT}\)分别为entity type prediction和relation type prediction两个辅助任务。
4 总结
提供了实体类型和关系类型交互的一个角度,可惜没公布代码。
参考
[1] Hui Wu12 and Xiaodong Shi123?.Synchronous Dual Network with Cross-Type Attention for Joint Entity and Relation Extraction.EMNLP 2021.