ICode9

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

笔记:Attention as Relation: Learning Supervised Multi-head Self-Attention for Relation Extraction

2022-06-03 21:34:56  阅读:189  来源: 互联网

标签:Multi 抽取 Attention Extraction token Relation attention


Attention as Relation: Learning Supervised Multi-head Self-Attention for Relation Extraction

作者:Liu et al.,IJCAI 2020.

目录

  • 简介
  • 方法
  • 实验
  • 总结

1 简介

本文主要针对联合抽取中的关系重叠问题,提出一个基于attention的联合抽取模型,主要创新点还是其中核心的supervised multi-head selfattention机制。

2 方法

模型整体结构如图2所示,大致分为三个模块Encoding layer、Entity Extraction Module、Relation Extraction Module。

Encoding Layer. 没有采用如BERT这类预训练语言模型,使用BiLSTM作为句子编码器,golve和同样使用BiLSTM得到的character-level的关于词形态信息的embedding拼接来初始化word embedding。

Entity Extraction Module. 看作是序列标注任务使用CRF解码,BIO标注方案,其实若不看Relation Detection Module,这不就是个标准的NER任务模型么,编码器BLSTM,解码器CRF。

Relation Detection Module. 核心部分,为了能够处理关系重叠问题,本文将此relation dection任务看作是多标签分类问题,同时设计一个监督的多头self-attention机制通过将每个关系类型看作是一个独立的子空间来处理它,具体来说,在token-level计算attention,使得模型能够更好的学到细粒度的correlation semantics。如图2所示,先将序列\(H=\{h_1,...,h_N\}\)线性变换得到\(A=\{a_1,...,a_N\}\),实体抽取部分也变换了,可能是为了得到一个专用于当前子任务的输入序列吧。然后整个Relation Detection Module都共享同一个输入序列A,说是共享此input hidden state representations模型能够捕获到不同关系类型之间的交互(有些道理吧多头attention都是用的同一个输入但感觉很玄学没法明确解释为什么就可以),之后基于此输入序列,类似transformer多头自注意力,也就是说做了M(M个关系类型)次dot-product attention操作,每组Q、K计算得到的相似度矩阵\(G^m\in \mathbb{R}^{N\times N}\)相当于一个关系空间,N为序列长度,那么矩阵\(G^m\)中的每个元素\(G_{i,j}^m\)表示,针对当前第m个关系类型,第i个token和第j个token之间的关联程度,后续用来抽取关系。

同时作者加入了监督信息通过最大化公式(10)(11)的概率使模型能够更好的探测关系类型,因此目标函数即为公式(12)BCE(Binary CrossEntropy)\(^{[2]}\)。

Joint Learning. 联合训练,简单处理,损失函数相加\(\mathcal{L}(\theta)=\mathcal{L}_E+\mathcal{L}_R\)。

Inference. 推理阶段即抽取三元组。首先实体根据BIO标签很容易抽取,那么,给定两个实体\(e_i=\{x_{pi},...,x_{qi}\},\space e_j=\{X_{pj},...,x_{qj}\}\),对于第m个关系来说这两个实体的关联程度\(\delta\)的计算如公式(14)即两个实体中所有token pair的关联程度之和取平均。

3 实验

数据集为NYT、WebNLG,肯定不是现在的sota了结果就不看了,消融实验也没什么东西就证明了一下这个supervised multi-head self-attention机制确实对关系重叠的关系抽取有用。

总结

模型整体中规中矩,本文两个子任务完全独立的,token-level的多头注意力机制的设计确实不错,上一篇ENPAR\(^{[3]}\)有些地方和这篇很相似,而且这种应该算是pipeline方法的?又和之前看的pipeline有些不太一样,更偏向多任务学习做关系抽取?而且这里的token-level更像token pair嘛尤其是inference阶段的token pair一组一组处理,某些方面有点像table filling的结构。

多任务学习如何理解?是利用共享网络或网络中的部分结构来学习相同的特征么?还是有多个任务如联合RE中除了实体和关系抽取两个子任务外,往往会再加入一些辅助任务使其训练过程中根据其目标函数使得模型中某些结构达到想要的效果\(Loss=L_e+L_r+L_{task1}+L_{task2}\)。

参考

[1] Jie Liu1∗ , Shaowei Chen1 , Bingquan Wang1 , Jiaxin Zhang1 , Na Li2 and Tong Xu3.Attention as Relation: Learning Supervised Multi-head Self-Attention for Relation Extraction.IJCAI 2020.

[2] 损失函数 | BCE Loss(Binary CrossEntropy Loss)_一颗磐石的博客-CSDN博客_bce损失函数.

[3] Yijun Wang1, 2, Changzhi Sun4, Yuanbin Wu3, Hao Zhou4, Lei Li4, and Junchi Yan1, 2.ENPAR:Enhancing Entity and Entity Pair Representations for Joint Entity Relation Extraction.ACL 2021.

标签:Multi,抽取,Attention,Extraction,token,Relation,attention
来源: https://www.cnblogs.com/n-ooo/p/16340684.html

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

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

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

ICode9版权所有