AAAI 2019 | 基于分层强化学习的关系抽取

2019 年 3 月 27 日 PaperWeekly


本文是清华大学发表在 AAAI 2019 上的一篇关系抽取方向的文章。作者开创性地提出了使用层次强化学习做关系抽取的方法,在不同数据集上和现有方法相比都有提高。


作者丨刘朋伯 

学校丨哈尔滨工业大学硕士生 

研究方向丨自然语言处理


现有的关系抽取方法大多是先识别所有实体然后再确定关系类型。但是这类方法并没有考虑到实体与关系之间的作用。本文应用分层强化学习框架来增强实体提及和关系类型之间的交互,将相关实体视为关系的集合。此外,该方法还解决了抽取重叠关系(Overlapping Relations)的问题。




研究动机


该研究主要解决的问题有两个: 


1. 大部分现有的方法在实体被识别后才决策关系类型。这种方法存在两个弊端:一是并没有充分挖掘实体和关系之间的联系,而是把他们割裂作为两个子任务去处理;二是很多和关系无关的实体会带来噪声; 


2. 关系抽取会存在重叠关系问题(也叫一对多问题)。在一句话中,一个实体可能会存在多个关系,或者一个实体对可能存在多种关系。目前已知只有 CopyR 方法研究了这个问题,但是本文作者实验证明了这种方法严重依赖数据,并且无法抽取多词语关系。 如图: 



层次抽取框架


首先,文章定义了“关系指示符”(Relation Indicator)。 当在一句话中的某个位置有足够信息去识别语义关系时,我们把这个位置就叫做“关系指示符”。它可以是名词、动词、介词,或者是一些其他的符号比如逗号、时间等等。关系指示符在本结构中非常重要,因为整个的关系抽取任务可以分解为“关系指示符”和“关系中的实体抽取”。 


整体来看,关系抽取过程如下:


一个 agent 在扫描句子时预测特定位置的关系类型。不同于识别实体对之间关系的关系分类,该过程不需要对实体进行标注。当在一个时间步中没有足够的信息来指示语义关系时,agent 可以选择 NR,这是一种指示没有关系的特殊关系类型。否则,触发一个关系指示符,agent 启动一个用于实体提取的子任务,以识别两个实体之间的关系。当实体被识别时,子任务完成,代理继续扫描句子的其余部分寻找其他关系。 


这种过程可以被表述为半马尔可夫决策过程:1)检测句子中关系指示符的高级 RL 过程;2)识别对应关系的相关实体的低级 RL 过程。 


过将任务分解成两个 RL 过程的层次结构,该模型有利于处理对于同一实体对具有多种关系类型的句子,或者一个实体涉及多种关系的情况。过程如图:



下面分别介绍两个决策过程。


Relation Detection with High-level RL 


High-level RL 的策略(policy)µ 旨在从句子中找到存在的关系,可以看做是带有 options 的 RL policy。option 指的是一旦 agent 执行了某个选项,就会启动低级别的 RL 策略。 


Option:option 在集合 O = {NR} ∪ R 中选择,当 low-level RL 进入结束状态,agent 的控制将被 high-level 接管去执行下一个 option。 


State:状态 S 由以下三者共同决定:当前的隐状态,最后一个 option 的 relation type vector 和上一个时间步的状态。公式如下: 



是非线性变换,是由 Bi-LSTM 得到隐状态。 


Policy:关系检测的策略,也就是 option 的概率分布,如下,其中 W 是权重:



Reward:环境提供给 Agent 的一个可量化的标量反馈信号,也就是 reward。reward 计算方法如下: 



最后,用一个最终的 reward 来评价句子级别的抽取效果:



Entity Extraction with Low-level RL


当 High-level RL policy 预测了一个非 NR 的relation,Low-level RL 会抽取 relation 中的实体。High-level RL 的 option 会作为 Low-level RL 的额外输入。 


Action:action 会给当期的词分配一个 tag,tag 包括 A=({S,T,O}×{B,I})∪{N}。其中,S 是参与的源实体,T 是目标实体,O 是和关系无关的实体,N 是非实体单词,B 和 I 表示一个实体的开始和结束。可参看下图:



State:类似 High-level RL 中的关系检测,High-level 中的状态计算方法如下:



是当前单词的隐状态,同样也是经过 Bi-LSTM 计算得到,Vet 是可学习的实体标签向量,是上一阶段的状态(注意,既可以是 High-level 的状态,也可以是 Low-level 的状态)。g 和 f 都是多层感知机。 


Policy:由句子到实体的概率计算如下:



Reward:给定一个关系类型,通过 policy 可以很容易得到实体标签。我们需要用 reward 来衡量预测的标签是否准确:



其中,λ(y) 用来降低 non-entity tag 的权重。


Hierarchical Policy Learning


在优化 High-level policy 时,我们需要最大化预期累积回报,如下:



γ 是 RL 中的折扣因子。在结束前,整个采样过程需要 T 个时间步长。 


同样的,在优化 Low-level policy 时,我们也需要最大化累计回报,公式如下:



把累计回报分解成 Bellman 方程,得到:



当实体提取策略根据选项 ot 运行时,子任务持续的时间步数是 N。当 option 是 NR 是,N=1。


可以一同优化 High-level 和 Low-level 两段策略,High-level 的梯度是:



Low-level 的梯度是:



整个训练过程如下:



实验

数据集:通过远程监督得到的数据:NYT10 和 NYT11。


参数设置:预训练词向量使用 300 维的 GloVe 词向量,Relation Type Vectors 和 Entity Tag Vectors 是随机初始化的,学习率:4e − 5,mini-batch size:16,α = 0.1,β = 0.9,discount factor γ = 0.95。


评价方法:采用 micro-F1 评价方法,如果关系类型和两个对应的实体都正确,则认为三元组是正确的。


Baselines:作为对比的 baseline 方法有:FCM、MultiR、CoType、SPTree、Tagging 和 CopyR。


实验结果


Split:输入为 c×h×w 的特征图,均表示 Group Convolution。这里使用 Group Convolution 以减少计算量。注意,这里两路 Group Convolution 使用的卷积核大小不一致,原因在于 Motivation 中说的第一点,提升精度。 


 关系抽取


 重叠关系抽取


 关系检测


总结


在本文中,作者提出了一种通过分层强化学习进行关系抽取的分层抽取范式。该范式将实体视为关系的集合,并将关系抽取任务分解为两个子任务的层次结构:High-level 指示符检测和 Low-level 实体抽取。


关系检测的 High-level 策略识别句子中的多个关系,实体提取的 Low-level 策略启动子任务以进一步提取每个关系的相关实体。这种方法擅长于建模两个子任务之间的交互,尤其擅长于提取重叠关系。 


实验证明,该方法优于最先进的基线。目前,强化学习在 NLP 的应用较少,该工作为关系抽取任务带来了启发,事实证明,基于强化学习的关系抽取是可以成功的。




点击以下标题查看更多往期内容: 




#投 稿 通 道#

 让你的论文被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢? 答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得技术干货。我们的目的只有一个,让知识真正流动起来。


📝 来稿标准:

• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志


📬 投稿邮箱:

• 投稿邮箱:hr@paperweekly.site 

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通




🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧



关于PaperWeekly


PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。


▽ 点击 | 阅读原文 | 下载论文 & 源码

登录查看更多
20

相关内容

关系抽取指的是检测和识别文本中实体之间的语义关系,并将表示同一语义关系的提及(mention)链接起来的任务。关系提取任务需要在一组工件(通常来自文本或XML文档)中对语义关系提及进行检测和分类。该任务与信息抽取(IE)的任务非常相似,但是IE还需要删除重复关系(消除歧义),并且通常指的是提取许多不同的关系。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
【斯坦福大学博士论文】自监督场景表示学习, 97页pdf
专知会员服务
92+阅读 · 2020年6月19日
《强化学习》简介小册,24页pdf
专知会员服务
261+阅读 · 2020年4月19日
【斯坦福大学-论文】实体上下文关系路径的知识图谱补全
【AAAI2020知识图谱论文概述】Knowledge Graphs @ AAAI 2020
专知会员服务
132+阅读 · 2020年2月13日
近期必读的8篇 AAAI 2020【图神经网络(GNN)】相关论文
专知会员服务
76+阅读 · 2020年1月15日
【关系抽取】从文本中进行关系抽取的几种不同的方法
深度学习自然语言处理
29+阅读 · 2020年3月30日
论文浅尝 | 使用循环神经网络的联合事件抽取
开放知识图谱
25+阅读 · 2019年4月28日
论文浅尝 | 基于深度强化学习的远程监督数据集的降噪
开放知识图谱
29+阅读 · 2019年1月17日
论文浅尝 | 基于知识库的类型实体和关系的联合抽取
开放知识图谱
35+阅读 · 2018年12月9日
论文浅尝 | 多内容实体和关系联合抽取的对抗训练
开放知识图谱
42+阅读 · 2018年12月4日
Arxiv
14+阅读 · 2019年9月11日
Hierarchical Deep Multiagent Reinforcement Learning
Arxiv
8+阅读 · 2018年9月25日
Multi-task Deep Reinforcement Learning with PopArt
Arxiv
4+阅读 · 2018年9月12日
Arxiv
7+阅读 · 2018年8月28日
Arxiv
11+阅读 · 2018年4月25日
Arxiv
5+阅读 · 2018年4月22日
VIP会员
相关资讯
【关系抽取】从文本中进行关系抽取的几种不同的方法
深度学习自然语言处理
29+阅读 · 2020年3月30日
论文浅尝 | 使用循环神经网络的联合事件抽取
开放知识图谱
25+阅读 · 2019年4月28日
论文浅尝 | 基于深度强化学习的远程监督数据集的降噪
开放知识图谱
29+阅读 · 2019年1月17日
论文浅尝 | 基于知识库的类型实体和关系的联合抽取
开放知识图谱
35+阅读 · 2018年12月9日
论文浅尝 | 多内容实体和关系联合抽取的对抗训练
开放知识图谱
42+阅读 · 2018年12月4日
相关论文
Arxiv
14+阅读 · 2019年9月11日
Hierarchical Deep Multiagent Reinforcement Learning
Arxiv
8+阅读 · 2018年9月25日
Multi-task Deep Reinforcement Learning with PopArt
Arxiv
4+阅读 · 2018年9月12日
Arxiv
7+阅读 · 2018年8月28日
Arxiv
11+阅读 · 2018年4月25日
Arxiv
5+阅读 · 2018年4月22日
Top
微信扫码咨询专知VIP会员