论文解读:A Hierarchical Framework for Relation Extraction with Reinforcement Learning

  关系抽取是一项比较基础的自然语言处理任务,而联合实体和关系抽取则是一种端到端的方法。传统的方法基本上是先通过实体识别再进行关系抽取,但这容易导致误差传播。为了能够有效提高抽取的效果,本文提出一种基于分层的强化学习框架用于关系抽取。

一、简要信息

序号 属性
1 模型名称 HRL-RE
2 所属领域 自然语言处理
3 研究内容 联合抽取;强化学习
4 核心内容 Relation Indicador,Entity Extraction,Reinforcement Learning
5 GitHub源码 HRL-RE
6 论文PDF https://arxiv.org/abs/1811.03925

二、全文摘要翻译

  大多数现有的工作都是在实体识别后决定关系的类型,但这样实体以及关系类型之间的交互性便不充分。本文提出一种新的方法用于关系抽取,将实体作为关系的一个参数。我们引入一种分层的强化学习框架来增强实体和关系之间的交互性。整个抽取的过程被分解为高层high-level和低层low-level并分别用于关系判定和实体抽取,因此很灵活自然的处理overlapping关系。我们的方法在远程监督公开数据集上进行验证,并获得了SOTA结果。

三、相关工作与介绍

  我们知道,一般做实体关系抽取都是建立在实体识别的基础上,包括一些以联合抽取为出发点的方法也是基于这种模式,这种方法一方面会存在误差传播,也导致两个任务之间的交互性过低。因此如何提高关系抽取和实体识别的交互性是本文的核心出发点。另外一些关系抽取的任务忽略了overlapping问题,即同一个实体对有多个关系,或同一个实体在句子中有多个实体与其匹配,因此这是本文的第二个出发点。所以总的来说,文章的两个动机是:解决pipeline两个独立任务的交互问题;解决multi-relation(overlapping)问题。

  对于第一个问题,作者将实体作为关系的一个参数;对于第二个问题,作者采用一种分层结构的强化学习框架。层次结构包括两个部分,一个是高级别的(high-level)关系检测(Relation Detection),其目标是读入一段句子来识别该句子所描述的是什么关系;另一个是低级别的(low-level)的实体抽取,根据高级别关系检测的语义信息来对句子中的实体进行识别。两个层级也是两个处理的过程,是来回交替,且在语义方面具有一定的交互性。下面以一个例子描述这个过程:


  如图所示是一句话 “Steve Belichick, the father or New England Patrots coach Bill Belichick, died of heart failure in Annapoils, at the age of 86.”,首先在高层的关系检测强化学习依次读入每个词,并判断至此是否表达某一种关系,当到某一个token时(可以是一些单词,或者是标点符号),检测到关系“parent-children”,于是进入低级别的实体抽取部分,依然是强化学习方法,依次读入整个句子,并对每一个token进行标注,直到标注出两个实体出。其次返回到高级别的关系检测部分,从上一次中止的位置继续开始进行检测,并检测到“place-of-death”,进入实体识别部分并识别出两个实体。以此往复直到整个句子检测结束为止。

  事实上我们可以发现,同一个句子可能存在多个关系,这是传统的关系抽取不能处理的,另外同一个句子中多个不同的片段所描述的关系也是不一样的,但可能会涉及到相同的实体或实体对,例如实体“Steve Belichick”能描述的是“parent-children”和“place-of-death”两个关系,也就是overlapping情况。

  相关工作中,对三元组的抽取通常是pipeline,容易导致误差传播,因此联合抽取和端到端的训练成为主流方法,最近强化学习也在关系抽取任务上得以展开,因此本文将使用强化学习解决上面的过程。

四、方法

  首先如何对两个过程进行建模?首先给出一个定义 Relation indicator

Relation indicator is the position in a sentence when sufficient information has been mentioned to identify a semantic relation. Different from relation trigger (i.e., explicit relation mention), relation indicators can be verbs (e.g. die of), nouns (e.g. his father), or even prepositions (e.g. from/by), other symbols such as comma and period (As shown in Figure 1, the relation type place-of-death can be signified till the comma position).

其次对两个不同的层次的部分进行建模,如图所示:

LLL表示句子的长度,oio_ioi​表示hign-level的关系检测部分,每一个圆圈代表一个token或由token表示的状态,任务的开始一定是从关系检测开始,按照句子的顺序进行移动,并在每个状态进行关系预测,当在时刻o2o_2o2​时,如果检测到某一个关系(非NR),则直接进入到low-level实体抽取层,此时记做a3;o2a_{3};o_{2}a3​;o2​,每次的实体识别时均从句首开始一直到句尾,识别完后再返回关系检测部分。因此整个过程不论是在high-level还是在low-level,均按照同一个时间序列来建模。

4.1 Relation Detection with High-level RL

  为了满足马尔可夫决策过程MDP,作者定义了几个相关元素:
(1)动作:动作空间包括所有的关系,记做NR∪R{NR}\cup RNR∪R,其中NR表示没有关系,R表示所有关系的集合。因此智能体的动作即是预测关系;
(2)状态:在高级别的关系检测部分,每一个时刻的状态向量由:当前时刻的隐层状态hth_tht​;关系类型向量vtrv^r_tvtr​(最近一次预测的非NR关系);以及上一个时刻的状态st−1s_{t-1}st−1​,因此当前时刻状态表示为:

sth=fh(Wsh[ht;vtr,st−1])s_t^h = f^h(W_s^h[h_t;v^r_t, s_{t-1}])sth​=fh(Wsh​[ht​;vtr​,st−1​])

其中每个时刻的隐状态时由LSTM来表征的。
(3)策略:策略是一个分类问题,输入当前的状态sths_t^hsth​,输出动作空间的概率分布μ(ot∣sth)=softmax(Wμsth)\mu(o_t|s_t^h)=softmax(W_{\mu}s_t^h)μ(ot​∣sth​)=softmax(Wμ​sth​);
(4)奖励函数:如果选择的动作是NR,则继续检测,否则进入到低级别的实体抽取部分。还要识别出关系,就给1分,否则是-1分。


最终的奖励则是根据关系抽取的FB值判定的的:

整个流程可由下图所示:

4.2 Entity Extraction with Low-level RL

  对于低级别的实体抽取部分,同样需要定义相关元素:
(1)动作:主要由实体标注的标签决定,包括 {S,T,O}×{B,I}⊂N\{S,T,O\} \times \{B,I\}\sub {N}{S,T,O}×{B,I}⊂N,其中 S,T分别表示头实体,尾实体,O也是实体,但与当前的关系relation无关,B,I则表示实体的首字符和非首字符,N表示非实体字符。
(2)状态:包括当前LSTM的隐状态hth_tht​;实体标签vtev_t^evte​;上一个时刻的状态st−1s_{t-1}st−1​以及当前检测的关系ct′=g(Wst′h)c_{t'}=g(Ws^h_{t'})ct′​=g(Wst′h​),因此状态向量:

stl=fl(Wsl[ht,vte,st−1,ct′])s^l_t = f^l(W^l_s[h_t, v^e_t, s_{t-1}, c_{t'}])stl​=fl(Wsl​[ht​,vte​,st−1​,ct′​])
(3)策略:策略则是输入当前的状态,以及高级别关系检测时的动作,输出实体标签的概率分布,即:

π(at∣stl;ot′)=softmax(Wπ[ot′;stl])\pi(a_t|s^l_t;o_{t'}) = softmax(W_{\pi}[o_{t'};s^l_t])π(at​∣stl​;ot′​)=softmax(Wπ​[ot′​;stl​])
(4)奖励:在每一个时刻会有即时奖励 rtl=λ(yt)sgn(atl=yt(ot′))r^l_t = \lambda(y_t) sgn(a^l_t=y_t(o_{t'}))rtl​=λ(yt​)sgn(atl​=yt​(ot′​)),其中 sgn(atl=yt(ot′))sgn(a^l_t=y_t(o_{t'}))sgn(atl​=yt​(ot′​))是符号函数,表示当前的实体标签是否与检测的关系匹配。λ(y)\lambda(y)λ(y)表示为

因此可以看出,如果预测的标签不是N,则给λ(y)=1\lambda(y)=1λ(y)=1分,否则会给一个比较小的值α\alphaα,如果预测的标签和golden一致,则是λ(y)∗1=0\lambda(y)*1=0λ(y)∗1=0分,否则就是λ(y)∗0=0\lambda(y)*0=0λ(y)∗0=0分。这也就是说只要预测对了就有分数,但是对于N标签来说,预测为N时并没有什么意义,但也会给与一点分数α\alphaα,这么做也是防止智能体全部预测为N标签来企图获得一个不错的分数。

整个流程可由下图所示:

另外,对于两个不同级别的任务之间的状态也是相通的,例如sths^h_tsth​时检测到一个关系后,进入实体识别时,实体识别的上一个状态则st−1l=sths^l_{t-1}=s^h_tst−1l​=sth​。

4.3 Hierarchical Policy Learning

  目标函数是最大化奖励。关系检测部分是:

  实体抽取部分是:


  采用策略梯度算法更新,关系检测部分为:


  训练算法流程图如下所示:

五、实验

5.1 实验结果

  在NYT10(原始的NYT)和NYT11(小型的NYT数据集)上进行实验,与几个基线模型的比对结果如下图所示:

数据集的统计信息为:

5.2 Overlapping问题

作者列出两种overlapping问题:

在不同的数据集上进行实验,来验证我们的方法可以解决overlapping,实验表明我们的方法也可以在含有噪声的数据集上达到不错的效果;

5.3 Interaction between the Two Policies


考虑到两个不同的阶段的交互,结果表明,我们提出的以实体作为关系参数的抽取范式能够更好地捕捉文本中的关系信息。当然作者发现在NYT11上效果并不是很明显,可能是因为大多数的句子只有一个关系。

5.4 Case Study

Case样例如下所示,给定两个不同的句子,两个层级的智能体分别进行关系检测和实体抽取,可以发现我们的方法可以有效的处理multi-relation,同时可以发现,关系检测有时是以词为中点,有时以标点符号为中点,这表明关系检测可以自动的判断句子的语义成分。

论文解读:A Hierarchical Framework for Relation Extraction with Reinforcement Learning相关推荐

  1. Paper:论文解读《Adaptive Gradient Methods With Dynamic Bound Of Learning Rate》中国本科生提出AdaBound的神经网络优化算法

    Paper:论文解读-<Adaptive Gradient Methods With Dynamic Bound Of Learning Rate>中国本科生(学霸)提出AdaBound的 ...

  2. RelExt: Relation Extraction using Deep Learning approaches for Cybersecurity Knowledge Graph 阅读笔记

    RelExt: Relation Extraction using Deep Learning approaches for Cybersecurity Knowledge Graph Improve ...

  3. 【论文阅读】DouZero: Mastering DouDizhu with Self-Play Deep Reinforcement Learning

    [论文阅读]DouZero: Mastering DouDizhu with Self-Play Deep Reinforcement Learning 1 本文解决了什么问题? 斗地主是一个非常具有 ...

  4. 论文解读:Hierarchical Topic Mining via Joint Spherical Tree and Text Embedding(通过联合球面树和文本进行的层次主题挖掘)

    本文是知识发现与数据挖掘的大作业,主要是对论文<Hierarchical Topic Mining via Joint Spherical Tree and Text Embedding> ...

  5. 论文学习10-Joint entity recognition and relation extraction as a multi-head selection problem(实体关系联合抽取模型

    文章目录 abstract 1.introduction 2. 相关工作 2.1 命名实体识别 2.2 关系抽取 2.3 实体关系联合抽取模型 3.联合模型 3.1 Embedding层 3.2 bi ...

  6. 论文阅读笔记《Adaptive Image-Based Visual Servoing Using Reinforcement Learning With Fuzzy State Coding》

    核心思想   该文提出一种利用模糊状态编码的强化学习(Q-learning)算法来实现自适应基于图像的视觉伺服控制.基于图像的视觉伺服过程中,图像雅可比矩阵中的距离参数ZZZ是未知的,需要对其进行估计 ...

  7. 【论文笔记】分层强化学习鼻祖:Feudal Reinforcement Learning 1993

    1993年的分层强化学习:Feudal Reinforcement Learning 概括 1992年没有深度学习,人们研究RL的思路与现在并不相同.但不可否认,提出"分层强化学习" ...

  8. RL论文阅读【一】Playing Atari with Deep Reinforcement Learning

    1 废话 开始要认真的读论文的,计划每天晚上回宿舍看一半,两天看完一篇,第三天写博客总结,虽然有点慢吧,但是积少成多嘛~ 今天先介绍第一篇,也是深度强化学习的开山之作. 2 动机 一般把这篇论文称作深 ...

  9. 论文解读- nnU-Net: Self-adapting Framework for U-Net-Based Medical Image Segmentation(附实现教程)

    本篇主要解读论文 "nnU-Net: Self-adapting Framework for U-Net-Based Medical Image Segmentation" == ...

  10. 论文解读:Hierarchical Question-Image Co-Attention for Visual Question Answering

    这是关于VQA问题的第七篇系列文章.本篇文章将介绍论文:主要思想:模型方法:主要贡献.有兴趣可以查看原文:Hierarchical Question-Image Co-Attention for Vi ...

最新文章

  1. 从事仪表专业学c语言有用吗,仪器仪表工程就业方向
  2. OpenCV | OpenCV彩色图像直方图算法实现
  3. 什么?拼命栽培员工,让他强大到足以离开
  4. RHEL 6上KVM的安装配置及使用-将物理接口桥接到桥接器
  5. ubuntu18安装pytorch-gpu,一行conda命令安装,不需要单独安装cuda
  6. 获得md5加密后的字符串
  7. AlarmManager使用
  8. vim配置之spacevim
  9. 【博客项目】—密码加密( 六)
  10. 编译安装M2Crypto-0.20.2
  11. Apache HttpClient 客户端使用详解
  12. aggregate()函数--R语言
  13. 法律人学python_你要埋头苦学三个月,然后悄悄惊艳所有人。python速成大法满足你所有的要求!...
  14. 各行业程序员年薪分析
  15. 零基础转行软件测试有前途吗?为什么说软件测试是极具发展前途的
  16. C++ GBD调试
  17. 计算机素质教育论文800,关于素质教育的作文800字
  18. 9.opengl-对qt中的QMatrix4x4进行矩阵实践
  19. Linux远程登陆到Linux服务器
  20. mysql 无法启动 0xc000007b_「应用程序无法正常启动0xc000007b」正确解决 应用程序无法正常启动(0xc000007b)的问题 - seo实验室...

热门文章

  1. 我总结了程序员转行得最有出路5个方向
  2. Go语言学习查缺补漏ing Day1
  3. 肥猫学习日记------查找与排序(一)
  4. 交换机vtp功能配置
  5. linux交互式脚本编写,谢烟客---------Linux之bash脚本编程---用户交互
  6. 基于B站服务器宕机事故,小鸟云聊聊高防云服务器选择技巧
  7. PHP 对银行卡,手机号,真实姓名,身份证进行掩码加星号处理
  8. 使用Selenium模拟登陆百度盘
  9. 【雅思】【绿宝书错词本】List13~24
  10. linux之文件压缩解压