卢靖宇作者西安电子科技大学硕士学校自然语言处理研究方向

ACL 2018 论文解读 | 基于深度强化学习的远程监督关系抽取

目前远程监督技术已经成为了关系抽取的标准配备之一。尽管该方法很有效,但它并不是无代价的——其获取的训练样本中总是存在噪声。针对这一问题,本文设计了一个深度强化学习框架,用于移除原始训练集中的假阳性实例,并重建一个纯净的训练(测试)数据集,以提高关系分类的精度。

论文主要创新有以下三点:

1. 为提高远程监督关系抽取的鲁棒性,设计了一个新的深度强化学习框架;

2. 该算法独立于关系抽取模型的,是一种即插即用的技术,可应用于任何一个现有的远程监督关系抽取模型;

3. 文章通过实验证明了该方法可以提升目前最新提出的关系抽取模型的性能。

论文动机

本文是北京邮电大学和加利福尼亚大学 Santa Barbara 分校发表在 ACL 2018 上的工作,论文尝试使用一种深度强化学习框架来生成一个假正例指示器,该框架在没有任何监督信息的情况下自动识别每个关系类型实例集中的假正例实例。

与以往研究成果中直接移除假正例的操作不同,该策略则将这些假正例重新分配至相应关系类型的负例实例集中。文章在实验中,将使用该框架的模型的性能同当前最先进的几种模型进行了对比。结果显示,文章提出的框架能给远程监督关系抽取模型带来明显的性能提升。

问题引入

关系抽取是知识图谱构建的关键模块之一,同时它也是许多自然语言处理应用的重要组成部分,诸如情感分析、问答系统自动摘要等。其核心任务是预测句子中实体间的关系。例如,给定一个句子“Barack Obama is married to Michelle Obama.”,关系抽取的任务即预测出句中两个实体间的关系为“配偶”关系。 

关系抽取算法最为突出的特点之一是对标注实例存在着数量上的巨大需求,这一任务对于手工标注几乎是不可能完成的。在此背景下,远程监督关系抽取算法应运而生。但该技术并不是完美无缺——远程监督数据集始终无法摆脱噪声数据的影响。

为了抑制噪声,人们尝试利用注意力机制对含有噪声的句子集合赋予权重以选择出有效的训练样本。但是,文章认为这种只选择出一个最佳样本的思路并不是最优的策略。为了提高模型的鲁棒性,对于假正例不应只是简单的移除,而是应把它们放在正确的位置——负例集合中。

远程监督中的强化学习

文章提出一种基于强化学习(Reinforcement Learning,RL)策略的框架,尝试识别出数据集中的假正例,如下图所示。

本文提出的框架

与之前未充分利用远程监督样本的算法相比,该策略利用 RL agent 来进行远程监督关系抽取。这里 agent 的目标是根据关系分类器性能的变化,决定是保留还是移除当前的实例(即一个句子)。然后,框架进一步使基于深度强化学习策略的 agent 学会如何重建一个纯净的远程监督训练数据集。

对于强化学习(RL),其拥有的两个必备组件分别是:外部环境(external environment)和 RL agent,而一个具有良好鲁棒性的 agent 正是通过这两个组件的动态交互而训练出来的。

文章提出的 RL 方法各基本组成部分描述如下:

状态(States):为了满足马尔可夫决策过程(Markov decision process,MDP)的条件,状态 s 同时包含当前句子和早期状态中移除的句子的信息。句子的语义和句法信息由一个连续实值向量表示。

文章参考一些性能较好的监督关系抽取算法,同时使用词嵌入和位置嵌入以将句子转换为向量。有了这些句子向量,可以将当前句子向量与早期状态中移除句子的平均向量级联起来,用以表示当前状态。对于当前句子的向量,给予相对较大的权重,以增大当前句子信息对决策行为的支配性影响。 

行为(Actions):在每一步中,agent 都会去判定实例对于目标关系类型是否为假阳性。每一个关系类型都拥有一个 agent,每个 agent 都有两个行为:对于当前实例,作出是删除或是保留的决定。

由于初始的远程监督数据集中包含有被错误标注的实例,期望 agent 能利用策略网络过滤掉这些噪声实例,由此得到的纯净数据集,以使远程监督获得更好的性能。 

奖励(Rewards):如前所述,对于文章提出的模型可简单的理解为:当错误标注数据被过滤掉后,关系分类器便能获得更好的性能。因此,文章中的模型采用结果驱动策略,以性能变化为依据,对 agent 的一系列行为决策进行奖励。奖励通过相邻 epochs 的差值来表示:

如上式所示,在第 i 步时,F1 增加,则 agent 将收到一个正奖励;反之,则 agent 将收到一个负奖励。通过这样的设置,奖励值将与 F1 的差值成比例,α 的作用是将 F1 的差值转换到有理数的范围内。为了消除 F1 的随机性,文章使用最近 5 个 epochs 的 F1 值的平均值来计算奖励。 

策略网络(Policy Network):对于每个输入的句子,策略网络负责判断该句子是否表述了目标关系类型,然后对于与目标关系类型无关的句子启动移除操作。这样,多元分类器就转换为了二元分类器。文章使用一个窗口大小为、kernel size 为的 CNN 来对策略网络 π(s;θ) 建模。

基于深度化学习策略的agent训练

与远程监督关系抽取的目标不同,这里的 agent 只判断标注的句子是否表述目标关系类型,而并不对实体间的关系进行预测。

预训练策略

这里的预训练策略,是受到了 AlphaGo 的启发,是 RL 中加快 agent 训练的一种常见策略。对于某一具体的关系类型,直接将远程监督正例集合作为正例集合,同时随机选取远程监督负例集合的一部分作为负例集合。

为了在预训练过程中能更好的考虑初始信息,负实例的数量是正实例数量的 10 倍。这是因为,通过学习大量负例样本,agent 更有可能朝着更好的方向发展。文章利用交叉熵代价函数来训练这一二元分类器,其中,负标签对应于删除行为,正标签对应于保留行为。

基于奖励的agent再训练

如上图所示,为了能够识别出噪声实例,这里引入一种基于 RL 策略的算法,其中的 agent 主要用于过滤出远程监督正例集合中的噪声样本。

首先,将该集合分解为训练正例集合和验证正例集合,这两个集合中都会包含有噪声。相应地,训练负例集合和验证负例集合是通过从远程监督负例集合中随机抽取获得。

在每一个epoch中,通过随机策略 π(a|s) 从中过滤出噪声样本集合,进而获得新的正例集合。由于是被识别出的错误标注实例,因而将其补充进负例集合

此时,每一个epoch中,训练集的规模是恒定的。之后,使用纯净数据集来训练关系分类器。预期的情况是,通过 RL agent 转移假正例,以提升关系分类器的性能。

为此,利用验证集来测试当前 agent 的性能。首先,利用当前agent对验证集中的噪声实例进行识别和转移,获得;然后:利用该集合计算当前关系分类器的F1得分。最后,通过计算当前和上一 epoch 的 F1 得分的差值以获得奖励值。

在上述训练过程中,为避免 agent 将正例集合中的真正例误删,在每一个 epoch 中,对 RL agent 移除句子的数目设置一个阈值,即一个 epoch 中移除的句子数目不能超过该值。这样,如果 agent 决定移除当前实例,则其他实例被移除的概率将变小。 

经过上面的强化学习过程,对于每一种关系类型,都得到了一个可作为假正例指示器的 agent,利用这些 agent 来识别出远程监督数据集中的假正例。

实验

数据集

文章使用的数据集是通过将从 Freebase 中获取的实体对与纽约时报(NYT)语料库对齐而得到的。该数据集中包含 52 种事实关系,以及 1 种特殊关系 NA(表示头部实体和尾部实体间不存在任何关系)。

实验设置 

基于深度强化学习策略的agent

文章提出的 RL agent 仅包括保留和移除两个行为。因而,可以将 agent 建模为一个二元分类器。使用一个单窗口 CNN 作为策略网络。其超参数的具体设置如下表所示。强化学习的学习速率设置为

奖励计算

由于简单网络对训练集的质量更为敏感,因而这里使用一个简单的 CNN 模型来评估 agent 的一系列行为。将之比和均设置为 2:1。

强化学习的有效性

下表列出了采用 RL 算法的模型与未采用 RL 算法模型的 F1 得分。表中,/peo/per/pob 表示 /people/person/place of birth。

首先,与 Original case 相比,Pretrain agent 取得了明显的进步:它不仅证明了预训练策略的合理性。更说明,经过基于 RL 策略的算法的再训练之后,F1 得分有了进一步的提升。上述比较说明,本文基于 RL 策略的算法能够使 agent 朝着正确的方向进化。

假阳性样本的影响

下面两张图说明,在 RL agent 的帮助下,同样的模型,分别使用纯净数据集和原始数据集进行训练,前者的性能要明显好于后者。

基于CNN的模型的PR曲线

基于PCNN的模型的PR曲线

案例研究

下面这张表显示的是 agent 选出的部分假正例样本示例。以实体对(Sami Moubayed, Syria)为例,很明显,对于关系 /people/person/place of birth,图中的语料没有提供任何相对应的信息。两句话都是在谈论政治分析师 Sami Moubayed 发表的对于 Syria 形势的分析,其内容与关系 /people/person/place of birth 毫无关联。

部分假正例样本的示例

总结

这篇文章提出了一种深度强化学习框架,可以有效降低远程监督数据集中噪声样本对关系分类器性能的影响。之前提出的各种算法,大多把注意力集中在选择一个最好的句子。

然而,这些方法并不是最优的,数据噪声问题仍是影响性能的重要因素。与这些算法相比,这篇文章提出的算法通过训练一个 RL agent,来实现对假正例的识别和移动,通过构建纯净的数据集来提升关系分类器的性能。

文章在 NYT 这一被广泛使用的语料库上,对算法进行了验证。实验结果表明,该深度强化学习框架与其他深度学习模型相比,在更大程度上提高了远程监督关系抽取的性能。

PaperWeekly
PaperWeekly

推荐、解读、讨论和报道人工智能前沿论文成果的学术平台。

理论深度强化学习监督学习强化学习
3
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

深度强化学习技术

强化学习(Reinforcement Learning)是主体(agent)通过与周围环境的交互来进行学习。强化学习主体(RL agent)每采取一次动作(action)就会得到一个相应的数值奖励(numerical reward),这个奖励表示此次动作的好坏。通过与环境的交互,综合考虑过去的经验(exploitation)和未知的探索(exploration),强化学习主体通过试错的方式(trial and error)学会如何采取下一步的动作,而无需人类显性地告诉它该采取哪个动作。强化学习主体的目标是学习通过执行一系列的动作来最大化累积的奖励(accumulated reward)。 一般来说,真实世界中的强化学习问题包括巨大的状态空间(state spaces)和动作空间(action spaces),传统的强化学习方法会受限于维数灾难(curse of dimensionality)。借助于深度学习中的神经网络,强化学习主体可以直接从原始输入数据(如游戏图像)中提取和学习特征知识,然后根据提取出的特征信息再利用传统的强化学习算法(如TD Learning,SARSA,Q-Learnin)学习控制策略(如游戏策略),而无需人工提取或启发式学习特征。这种结合了深度学习的强化学习方法称为深度强化学习。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

交叉熵技术

交叉熵(Cross Entropy)是Loss函数的一种(也称为损失函数或代价函数),用于描述模型预测值与真实值的差距大小

真正例技术

被模型正确地预测为正类别的样本。例如,模型推断出某封电子邮件是垃圾邮件,而该电子邮件确实是垃圾邮件。

词嵌入技术

词嵌入是自然语言处理(NLP)中语言模型与表征学习技术的统称。概念上而言,它是指把一个维数为所有词的数量的高维空间嵌入到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量。

阿尔法围棋技术

阿尔法围棋是于2014年开始由英国伦敦Google DeepMind公司开发的人工智能围棋程序。AlphaGo是第一个打败人类职业棋手的计算机程序,也是第一个打败围棋世界冠军的计算机程序,可以说是历史上最强的棋手。 技术上来说,AlphaGo的算法结合了机器学习(machine learning)和树搜索(tree search)技术,并使用了大量的人类、电脑的对弈来进行训练。AlphaGo使用蒙特卡洛树搜索(MCTS:Monte-Carlo Tree Search),以价值网络(value network)和策略网络(policy network)为指导,其中价值网络用于预测游戏的胜利者,策略网络用于选择下一步行动。价值网络和策略网络都是使用深度神经网络技术实现的,神经网络的输入是经过预处理的围棋面板的描述(description of Go board)。

假阳性技术

假阳性是指模型因为种种原因把不应该分类成特定情况的人/物错误地分类到了该分类的情况。

超参数技术

在机器学习中,超参数是在学习过程开始之前设置其值的参数。 相反,其他参数的值是通过训练得出的。 不同的模型训练算法需要不同的超参数,一些简单的算法(如普通最小二乘回归)不需要。 给定这些超参数,训练算法从数据中学习参数。相同种类的机器学习模型可能需要不同的超参数来适应不同的数据模式,并且必须对其进行调整以便模型能够最优地解决机器学习问题。 在实际应用中一般需要对超参数进行优化,以找到一个超参数元组(tuple),由这些超参数元组形成一个最优化模型,该模型可以将在给定的独立数据上预定义的损失函数最小化。

多元分类技术

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

验证集技术

验证数据集是用于调整分类器超参数(即模型结构)的一组数据集,它有时也被称为开发集(dev set)。

知识图谱技术

知识图谱本质上是语义网络,是一种基于图的数据结构,由节点(Point)和边(Edge)组成。在知识图谱里,每个节点表示现实世界中存在的“实体”,每条边为实体与实体之间的“关系”。知识图谱是关系的最有效的表示方式。通俗地讲,知识图谱就是把所有不同种类的信息(Heterogeneous Information)连接在一起而得到的一个关系网络。知识图谱提供了从“关系”的角度去分析问题的能力。 知识图谱这个概念最早由Google提出,主要是用来优化现有的搜索引擎。不同于基于关键词搜索的传统搜索引擎,知识图谱可用来更好地查询复杂的关联信息,从语义层面理解用户意图,改进搜索质量。比如在Google的搜索框里输入Bill Gates的时候,搜索结果页面的右侧还会出现Bill Gates相关的信息比如出生年月,家庭情况等等。

语料库技术

语料库一词在语言学上意指大量的文本,通常经过整理,具有既定格式与标记;事实上,语料库英文 "text corpus" 的涵意即为"body of text"。

策略网络技术

在强化学习中,策略网络指一组相对稳定的关系,这些关系具有非等级和相互依赖的性质,将各个行为者(actor)联系起来。

马尔可夫决策过程技术

马尔可夫决策过程为决策者在随机环境下做出决策提供了数学架构模型,为动态规划与强化学习的最优化问题提供了有效的数学工具,广泛用于机器人学、自动化控制、经济学、以及工业界等领域。当我们提及马尔可夫决策过程时,我们一般特指其在离散时间中的随机控制过程:即对于每个时间节点,当该过程处于某状态(s)时,决策者可采取在该状态下被允许的任意决策(a),此后下一步系统状态将随机产生,同时回馈给决策者相应的期望值,该状态转移具有马尔可夫性质。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

自动摘要技术

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

问答系统技术

问答系统是未来自然语言处理的明日之星。问答系统外部的行为上来看,其与目前主流资讯检索技术有两点不同:首先是查询方式为完整而口语化的问句,再来则是其回传的为高精准度网页结果或明确的答案字串。以Ask Jeeves为例,使用者不需要思考该使用什么样的问法才能够得到理想的答案,只需要用口语化的方式直接提问如“请问谁是美国总统?”即可。而系统在了解使用者问句后,会非常清楚地回答“奥巴马是美国总统”。面对这种系统,使用者不需要费心去一一检视搜索引擎回传的网页,对于资讯检索的效率与资讯的普及都有很大帮助。从系统内部来看,问答系统使用了大量有别于传统资讯检索系统自然语言处理技术,如自然语言剖析(Natural Language Parsing)、问题分类(Question Classification)、专名辨识(Named Entity Recognition)等等。少数系统甚至会使用复杂的逻辑推理机制,来区隔出需要推理机制才能够区隔出来的答案。在系统所使用的资料上,除了传统资讯检索会使用到的资料外(如字典),问答系统还会使用本体论等语义资料,或者利用网页来增加资料的丰富性。

推荐文章
暂无评论
暂无评论~