《Learning from Context or Names?An Empirical Study on Neural Relation Extraction》论文阅读笔记
代码
原文地址
预备知识:
1.什么是对比学习?
摘要
1 Introduction

- 文本上下文和实体提及都是RE的关键因素。实验表明,上下文是支持分类的主要来源,而实体提及也提供了重要的信息,尤其是实体的类型信息。
- 现有的RE基准数据集可能通过实体提及泄露了一些浅层的线索,导致现有模型的高性能。实验显示,即使只给定实体提及作为输入,模型仍然可以达到高性能,这说明这些数据集中存在一些来自实体提及的有偏的统计线索。
2 Pilot Experiment and Analysis
2.1 Models and Dataset
- CNN:本文采用了Nguyen和Grishman (2015)提出的 卷积神经网络 ,并参考了Zhang等人(2017)的做法,用词性、命名实体识别和位置嵌入来丰富输入。
- BERT:本文遵循 Baldini Soares等人(2019)的方法,使用BERT进行RE,用特殊的标记来突显句子中的实体提及,并用实体表示的拼接来进行分类。
- Matching the blanks (MTB): MTB (Baldini Soares等人,2019)是一个基于BERT的面向RE的预训练模型。它通过对两个句子是否提及相同的实体对进行分类来进行预训练,其中实体提及被随机地 遮盖 。它和BERT一样,用相同的方式进行RE的微调。由于它没有公开发布,本文自行预训练了一个
版本的MTB,并在附录A中给出了细节。
2.2 Experimental Settings
- 上下文+提及(C+M):这是最常用的RE设置,其中提供了整个句子(包括上下文和突出显示的实体提及)。为了让模型知道实体提及的位置,本文对CNN模型使用位置嵌入(Zeng et al., 2014),对预训练的BERT使用特殊的实体标记。
- 上下文+类型(C+T):本文用TACRED提供的类型替换实体提及。使用特殊的标记来表示它们:例如,使用[person]和[date]来分别表示类型为person和date的实体。不同于Zhang et al. (2017),本文不会重复特殊标记来匹配实体的长度,以避免泄露实体长度信息。
- 仅上下文(OnlyC):为了分析文本上下文对RE的贡献,本文用特殊的标记[SUBJ]和[OBJ]替换所有的实体提及。在这种情况下,实体提及的信息源完全被阻断。
- 仅提及(OnlyM):在这种设置下,本文只提供实体提及,丢弃所有其他的文本上下文作为输入。
- 仅类型(OnlyT):这与仅提及类似,只不过本文只提供实体类型。
2.3 Result Analysis

- 文本上下文和实体提及都是关系分类的关键信息源,而实体提及中最重要的信息是它们的类型。如表1所示,OnlyC,OnlyM和OnlyT相比于C+M和C+T都有显著的性能损失,说明单一的信息源是不足以支持正确的预测的,上下文和实体提及都是必不可少的。此外,还可以发现C+T在TACRED上与C+M在BERT和MTB上达到了相近的效果。这表明实体提及中的大部分有用信息是它们的类型信息。
- 在现有的RE数据集中,实体提及存在一些表面的线索,这可能导致RE模型的过高的性能。在TACRED上发现OnlyM在所有三个模型上都有很高的性能,这种现象在其他数据集中也有体现(见表5)。本文还对OnlyC相比于C+M的性能降低进行了深入的分析,在第2.4节中发现,在一些模型难以理解上下文的情况下,它们会倾向于利用实体提及的浅层启发。这促使本文进一步改进模型在从上下文中提取关系的能力,同时避免它们对实体提及的死记硬背。
2.4 Case Study on TACRED


3 Contrastive Pre-training for RE
3.1 Relational Contrastive Example Generation

和
,它们各自包含了两个实体
和
。如果有一个关系
,使得
和
都在KG里,就把
和
称为“邻居”。本文用Wikidata作为KG,因为它和用来预训练的Wikipedia语料库很容易对应起来。在训练过程中,先按照KG里的关系分布来采样一个关系
,然后再采样一个和
有关的句子对
。为了做对比学习,还要随机采样
个句子
,让它们和
组成
个负样本对。模型的任务是在所有正负样本中,找出和
有相同关系的那个句子。
表示替换的实体比例,并参考 Baldini Soares 等人 (2019) 的方法设置
。注意,预训练时完全遮盖所有实体提及也不合适,因为这会导致预训练和微调之间的不一致,也会使预训练模型无法利用实体提及的信息(比如,学习实体类型)。
的概率被替换为 [BLANK]。3.2 Training Objectives
表示第 i 个位置的输出。对于输入格式,参考了 Baldini Soares等人(2019) 的方法,用特殊的标记来突出实体提及。例如,对于句子“SpaceX was founded by Elon Musk.”,输入序列是““[CLS][E1] SpaceX [/E1] was founded by [E2] Elon Musk [/E2] . [SEP]”。对比式预训练目标
和负样本句子对
,首先用 Transformer 编码器得到
在
中的关系感知表示:
和
是特殊标记 [E1] 和 [E2] 的位置,
表示拼接。有了句子表示,就有了以下的训练目标:
最小化,本文期望
和
的表示更加接近,最终具有相似关系的句子会有相似的表示。遮蔽语言建模目标
表示 MLM 的损失函数。
4 Experiment
4.1 RE Tasks
Supervised RE


,数据集中的每个句子
都表达了
中的某个关系。在一些基准测试中,有一种特殊的关系叫做
或
,表示句子中没有表达给定实体之间的任何关系,或者它们的关系不包含在
中。对于有监督的 RE 数据集,本文使用 TACRED,SemEval-2010 Task 8 ,Wiki80和 ChemProt 。表 4 显示了数据集之间的比较。本文还添加了 1% 和 10% 的设置,意味着只使用训练集的 1% / 10% 的数据。这是为了模拟低资源的情况,并观察模型性能在不同的数据集和设置下的变化。注意,ChemProt 只有 4169 个训练实例,这导致了表 5 中 1% ChemProt 的异常结果。在附录 B 中给出了这个问题的详细说明。Few-Shot RE
4.2 RE Models
4.3 Strength of Contrastive Pre-training
《Learning from Context or Names?An Empirical Study on Neural Relation Extraction》论文阅读笔记的更多相关文章
- 《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的论文,不知道有什么用处,总想着机器生成的数据会有机器的局限性,所以百度看了一些别人 的看法和观点,可能我是机器学习小白吧,看完之 ...
随机推荐
- 俩小伙一晚上写了个 AI 应用,月入两万??(文末附开发教程)
开发出一款能够与 AI 对话生成和编辑思维导图的工具,听起来似乎只能是一群专业的 AI 背景团队花费大量的时间和精力训练模型,打磨应用才能完成的事情. 但是,两名大学生却在一夜之间完成了,就像炼金术士 ...
- 使用ensp搭建路由拓扑,并使用BGP协议实现网络互通实操
转载请注明出处: 1.使用ENSP搭建的网络拓扑如下: 数据准备: 设备名称 接口 IP地址 DeviceA Loopback 0 1.1.1.1/32 Eth 1/0/0 172.16.0.1/16 ...
- MongoDB 增删改查 常用sql总结
本文为博主原创,转载请注明出处: 1.切换到指定数据库:如果不存在则创建 use database 2.查看所有文档 show tables show collections 3.创建表 #创建文档 ...
- 14-Verilog for Verification
Verilog for Verification 1.引言 Testbench也是一个模块(module...endmodule) Testbench没有输入和输出,因为它是一个闭环,自己产生激励,灌 ...
- CLion创建自定义代码模板
1.问题 很多时候我们都想要简化代码编写,比如像IDEA那样,写入一个sout即会补全为System.out.println( |inserts cursor here| );的形式 最急切的例子便是 ...
- java - 冒泡排序求最值
public class Bubble3 { public static void main(String[] args) { int[] arr; arr = new int[]{2,3,6,1}; ...
- [转帖]k8s之PV、PVC、StorageClass详解
https://zhuanlan.zhihu.com/p/128552232 导读 上一篇写了共享存储的概述以及一个简单的案例演示.这一篇就写一下PV和PVC. PV是对底层网络共享存储的抽象,将共享 ...
- [转帖]LVS入门篇(四)之LVS实战
LVS入门篇(四)之LVS实战 https://www.cnblogs.com/linuxk/p/9360922.html 一.LVS的NAT模式实战 1.环境说明: HOST OS role rem ...
- [转帖]Docker、containerd的关系
Docker.containerd的关系 containerd囊括了单机运行一个容器时所需要的一切: 为了能够支持多种OCI Runtime,containerd 内部使用containerd-shi ...
- [转帖]linux的硬链接和软连接的区别
Linux中有两种链接文件: 1)软链接(符号链接symbol),等同于Windows中快捷方式 ln -s 源文件名 符号链接文件名,源文件名和符号链接文件名是主从关系,源被删了,符号链接也就失效了 ...