《Document-level Relation Extraction as Semantic Segmentation》论文阅读笔记
原文
代码
摘要
1 Introduction

- 首次将文档级关系抽取问题建模为语义分割问题。
- 提出了模型DocuNet,它能够有效地捕获文档级关系抽取的局部和全局信息。
- 在三个公开的数据集上进行了实验,证明了本文模型相比于现有的方法有显著的性能提升。
2 Related Work
3 Methodology
3.1 Preliminary
,其中包含一组实体
,任务是提取这些实体之间的关系。一个文档中可能有多个相同的实体。为了抽取实体
和
之间的关系,本文用一个
的矩阵
表示,其中
是
和
的关系类型。本文的目标是得到矩阵
的输出,这类似于语义分割的任务。本文按照实体在文档中首次出现的顺序排列矩阵
中的实体,利用实体间的相关性估计生成特征图,并把特征图当作一张图像。注意,输出的实体级关系矩阵
和语义分割中的像素级掩码是对应的,这就把关系抽取和语义分割联系起来了。本文的方法也适用于句子级别的关系抽取。由于文档中的实体更多,所以实体级关系矩阵可以学习更多的全局信息,从而提高性能。3.2 Encoder Module
,其中包含了一些实体提及。为了标记实体的位置,在每个提及的开始和结束处添加特殊符号
和
。使用一个预训练的语言模型作为编码器,将文档中的每个词
转换为一个向量
,得到文档的嵌入表示:
的嵌入来表示每个实体提及,这是一种简单而有效的方法,参考了 [Verga et al., 2018]。
是第
个实体的嵌入,
是该实体在文档中出现的次数,
是该实体的第
个提及的嵌入。这种池化操作可以有效地捕捉文档中提及的信息,得到一个全局的实体表示。
维的特征向量
来表示源实体
和目标实体
之间的关系特征。本文提出了两种计算
的方法,一种是基于相似度的方法,另一种是基于上下文的方法。基于相似度的方法是将
和
之间的三种相似度度量拼接起来,分别是哈达玛积(element-wise product)、余弦相似度(cosine similarity)和双线性相似度(bi-linear similarity):
是一个可学习的权重矩阵。这种方法可以直接捕捉实体嵌入之间的相似程度,反映它们的关系强度。基于上下文的方法是利用实体感知的注意力机制,根据文档的嵌入和实体的重要性,计算出一个特征向量:
是一个可学习的权重矩阵,
是文档的嵌入,
是 transformer 中的头数,
和
分别是第
个头的源实体和目标实体的注意力权重,
是实体感知的注意力权重。这种方法可以利用文档的上下文信息,生成更加丰富和灵活的关系特征。3.3 U-shaped Segmentation Module

看作是一个
通道的图像,并将文档级关系预测问题转化为在
上进行像素级的分割。其中
是数据集中所有样本的最大实体数。为了实现这一目标,本文借鉴了计算机视觉领域的经典语义分割模型 U-Net。如图 3 所示,该模型由一个 U 型的分割网络组成,包括两个下采样模块和两个上采样模块,并通过跳跃连接实现信息的融合。在下采样模块中,每个模块包含两个最大池化层和两个卷积层,同时每个模块的通道数翻倍。如图 2 所示,实体级关系矩阵中的分割区域对应于实体对之间的关系共现情况。U 型分割网络能够在接受域内实现实体对之间的信息交换,类似于一种隐式的推理过程。具体来说,CNN 和下采样模块能够扩大当前实体对嵌入
的感受野,从而为表示学习提供更多的全局信息。在上采样模块中,每个模块包含一个反卷积层和两个卷积层,同时每个模块的通道数减半,这有助于将聚合的信息分配到每个像素上。最后,通过一个编码模块和一个 U 型分割模块来融合局部和全局信息
,如下式所示:
和
分别表示 U 型分割模块和实体级关系矩阵。
是一个可学习的权重矩阵,用于降低
的维度,使其与
相匹配,而
远小于
。3.4 Classification Module
和
以及实体级关系矩阵
映射到隐藏表示
。然后,利用双线性函数计算关系的概率。具体地,有:
是矩阵
中
的实体对表示,
和
,是模型的参数。
,而非目标类别的分数都低于
。形式地,有:

《Document-level Relation Extraction as Semantic Segmentation》论文阅读笔记的更多相关文章
- 《MuseGAN: Multi-track Sequential Generative Adversarial Networks for Symbolic Music Generation and Accompaniment》论文阅读笔记
出处:2018 AAAI SourceCode:https://github.com/salu133445/musegan abstract: (写得不错 值得借鉴)重点阐述了生成音乐和生成图片,视频 ...
- (转)Introductory guide to Generative Adversarial Networks (GANs) and their promise!
Introductory guide to Generative Adversarial Networks (GANs) and their promise! Introduction Neural ...
- 生成对抗网络(Generative Adversarial Networks,GAN)初探
1. 从纳什均衡(Nash equilibrium)说起 我们先来看看纳什均衡的经济学定义: 所谓纳什均衡,指的是参与人的这样一种策略组合,在该策略组合上,任何参与人单独改变策略都不会得到好处.换句话 ...
- 生成对抗网络(Generative Adversarial Networks, GAN)
生成对抗网络(Generative Adversarial Networks, GAN)是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的学习方法之一. GAN 主要包括了两个部分,即 ...
- StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks 论文笔记
StackGAN: Text to Photo-realistic Image Synthesis with Stacked Generative Adversarial Networks 本文将利 ...
- 论文笔记之:Semi-Supervised Learning with Generative Adversarial Networks
Semi-Supervised Learning with Generative Adversarial Networks 引言:本文将产生式对抗网络(GAN)拓展到半监督学习,通过强制判别器来输出类 ...
- 《Self-Attention Generative Adversarial Networks》里的注意力计算
前天看了 criss-cross 里的注意力模型 仔细理解了 在: https://www.cnblogs.com/yjphhw/p/10750797.html 今天又看了一个注意力模型 < ...
- Paper Reading: Perceptual Generative Adversarial Networks for Small Object Detection
Perceptual Generative Adversarial Networks for Small Object Detection 2017-07-11 19:47:46 CVPR 20 ...
- SalGAN: Visual saliency prediction with generative adversarial networks
SalGAN: Visual saliency prediction with generative adversarial networks 2017-03-17 摘要:本文引入了对抗网络的对抗训练 ...
- Generative Adversarial Networks,gan论文的畅想
前天看完Generative Adversarial Networks的论文,不知道有什么用处,总想着机器生成的数据会有机器的局限性,所以百度看了一些别人 的看法和观点,可能我是机器学习小白吧,看完之 ...
随机推荐
- vue中使用refs出现undefined的解决方法
最近遇见一个情况, 在methods:{}中的某个方法, 通过父组件去调用子组件的一个方法:this.$refs.xxx 打印出来的却是undefined? 因为: 是如果在DOM结构中的某个DOM节 ...
- ABP vNext系列文章10---分布式事务集成netcore.Cap
最近项目中要用到分布式事务功能,调研了DTM和Cap,最终确定用Cap来实现,Cap支持最终一致性,项目中采用MQ作为消息中间件,数据库用的mysql,集成步骤如下: 1.在需要发布消息的服务中引入如 ...
- 从零开始构建一个电影知识图谱,实现KBQA智能问答[下篇]:Apache jena SPARQL endpoint及推理、KBQA问答Demo超详细教学
从零开始构建一个电影知识图谱,实现KBQA智能问答[下篇]:Apache jena SPARQL endpoint及推理.KBQA问答Demo超详细教学 效果展示: 1.Apache jena SPA ...
- 【三】分布式训练---单机多卡与多机多卡组网(飞桨paddle2.0+)更加推荐spawn方式!
1. 单机多卡启动并行训练 飞桨2.0增加paddle.distributed.spawn函数来启动单机多卡训练,同时原有的paddle.distributed.launch的方式依然保留. padd ...
- 【3】VSCode 主题设置推荐,自定义配色方案,修改注释高亮颜色
相关文章: [一]tensorflow安装.常用python镜像源.tensorflow 深度学习强化学习教学 [二]tensorflow调试报错.tensorflow 深度学习强化学习教学 [三]t ...
- 位图|布隆过滤器模拟实现|STL源码剖析系列|手撕STL
今天博主给大家带来位图和布隆过滤器的模拟实现. 前言 那么这里博主先安利一下一些干货满满的专栏啦! 手撕数据结构https://blog.csdn.net/yu_cblog/category_1149 ...
- P5309 [Ynoi2011] 初始化 题解
题目链接:初始化 这种 ynoi 的老题就是卡常.来简单说说这题的思维切入口. 看到形如 \(y+k \times x\) 的结构,自然而然思考一下如果我们是暴力更新会有怎么样的效果.我们容易发现,如 ...
- Mysql切割字符串
我们常常会遇到需要处理字段中字符串的需求,包括切割.拼接以及搜索等等,在这里介绍几个常用的切割字符串的函数,首先我们在表格中加入我们的实验字段值:https://www.cnblogs.com/Yao ...
- MySQL主主+Keepalived架构安装部署
需求:根据当前客户的生产环境,模拟安装部署一套MySQL主主+Keepalived架构的测试环境,方便后续自己做一些功能性的测试. 1.准备工作 2.MySQL安装部署 3.MySQL主主配置 4.K ...
- .NET 云原生架构师训练营(模块二 基础巩固 Scrum 简介)--学习笔记
2.7.2 Scrum 简介 SCRUM 是什么 SCRUM 精髓 SCRUM 框架 角色 SCRUM 是什么 SCRUM 是迄今为止最著名的敏捷方法,主要用于开发.交付和持续支持复杂产品的一个框架, ...