em算法 实例 正态分布_Petuum提出序列生成学习算法通用框架

近日,来自人工智能创业公司 Petuum 的研究人员发表论文,提出序列生成学习算法的通用框架——广义的熵正则化策略优化框架(Generalized Entropy-Regularized Policy Optimization)。该框架是对包括最大似然学习 (MLE)、增强学习 (RL) 等多种广泛使用的算法的泛化。研究人员进而提出一种新的序列生成算法,该算法在已有算法中进行动态插值,在机器翻译和文本摘要任务中实现了稳定的提升。
3893dd93d18bba829a423e1c9b16a6ec.png

序列生成是一个常见的机器学习任务,比如机器翻译、文本摘要、图像字幕生成等。

近日,Petuum 发布论文《Connecting the Dots Between MLE and RL for Sequence Generation》,对多种广泛使用的序列生成学习算法提出了统一的视角,即广义的熵正则化策略优化框架。可以证明这些算法在数学上等同于在框架中设定不同超参数的特例。该研究提供了对不同算法的系统性的理解和对比,并启发更多的算法提升。基于此通用框架,研究人员还提出了一种新的插值算法,在机器翻译和文本摘要任务中实现了稳定的提升。

序列模型的发展(如具备不同单元和注意力机制的循环神经网络)促进了序列生成任务的进步。这些模型通常可以使用多种不同的学习算法进行训练,详见下文。

常用的序列生成学习算法(点)

标准的训练算法基于最大似然估计(MLE),即试图最大化真实数据的对数似然(data log-likelihood)。尽管 MLE 训练计算简单、高效,但它会遭遇曝光偏差(exposure bias)。即模型在预测下一个 token 时使用的是真实数据中的 token,而训练出的模型在测试时无法得到真实数据而只能使用模型预测出的 token。这种训练和测试之间的偏差导致预测出现误差,且随着序列长度的增加,这一偏差也会越来越大。

很多研究试图解决该问题,其中一些基于强化学习 (RL)。例如,Ranzato 等人在《Sequence Level Training with Recurrent Neural Networks》中采用策略梯度算法,通过在训练和测试阶段使用同样的解码策略来避免这种偏差。但是,基于 RL 的序列生成方法会面临极低的采样效率和极高的方差。

为了使训练更加可行,其他研究人员提出了多种方法,这些方法介于 MLE 和 RL 之间。例如,RAML 对 MLE 数据样本根据 reward 函数进行扰动,SPG 基于 reward 分布实现策略梯度的高效采样,数据加噪(data noising)等方法也有一定的性能提升。

最大似然估计(MLE)

最大似然估计是训练序列生成模型最常用的方法。MLE 旨在寻找最大化数据对数似然的最优参数值:

8c447ee2a6d87b134bf9548722178ea3.png

奖励增强最大似然(RAML)

RAML 最初用于将特定任务的 reward(task metric reward)纳入 MLE 训练,该方法相对于原版 MLE 有很大的性能提升。具体来说,RAML 引入了一个指数 reward 分布 e(y|y*) ∝ exp{R(y|y*)},其中 R 指任务度量(如 BLEU)。RAML 最大化以下目标函数:

d9fb78dba2a22d3b68c74671bf1cff24.png

如果我们将 e(y|y*) 中的任务奖励 R 换成 MLE 的 δ 奖励,则 RAML 目标函数等同于原版 MLE 目标函数,即:

1e676f7079b85f4d0b87f2f99d4a993a.png

数据加噪

向训练数据添加噪声是常用的正则化方法。之前的研究提出多种适合序列生成 的数据加噪策略。例如,将数据 y* 中的每个 token 以概率 γ 替换成噪声 token,每个噪声 token 随机从一元频率分布(unigram frequency distribution)中采样获得。然后将得到的带噪声数据用于 MLE 训练。形式上来看,它等同于使用奖励函数:

0ce3c99b01680ce812571fb03f19ebdd.png

其中 u(·) 表示一元频率分布。使用松弛(即平滑)奖励后,数据加噪一定程度上扩展了原版 MLE 的探索空间。其效果本质上等同于 RAML 算法,区别在于 RAML 基于任务奖励函数来扩展探索空间。

Softmax 策略梯度 (SPG)

SPG 旨在适应原版策略梯度,用作采样的奖励函数。SPG 的目标函数如下:

a60a6731a945961451dd2c315555cfa9.png

其中 R 表示 reward 函数。作为标准策略梯度算法的变体,SPG 旨在解决曝光偏差问题,并表现出了卓越的结果。

bc770036dca4df8792929a846cafea5c.png

图 1:不同算法的有效探索空间。(a):MLE 的探索空间即训练样本的集合。(b):RAML 和数据加噪使用平滑的奖励函数,允许训练样本周围的较大探索空间。(c):常见的策略优化算法(如 SPG)大体上允许全部探索空间。

连点成线

Petuum 对这些学习算法构建了一个统一的视角。具体来说,他们展示了一个广义熵正则化策略优化(ERPO)框架,并证明明显不同的多种算法(如 MLE、RAML、SPG 和数据加噪)都可以重新公式化为该框架中的特殊实例,唯一的区别在于 reward 函数和超参数值的不同选择。

除了对已有算法进行全新诠释以外,该统一视角还推动了新算法的开发。研究人员展示了一个新算法,随着训练的进行,新算法对 reward 函数和超参数值退火,从而逐渐扩展探索空间。退火实际上就是在已有算法中进行动态插值。在机器翻译和文本摘要任务上的实验表明,该插值算法比已有的方法有显著提升。

通用框架

该研究提出的通用框架旨在用常见的数学公式统一上述算法。该框架基于策略优化,策略优化即在模型分布下最大化期望奖励。大量关于熵正则化策略优化(ERPO)的研究通过用信息论正则化项增强策略优化来稳定学习。Petuum 研究人员提出一个 ERPO 的通用公式。假设变量分布为 q(y|x),则我们采用以下目标函数:

b0db8a5da655229afabc54fb345e1720.png

其中 (x, y*) 表示训练数据对,y 指在 q(y|x) 分布中采样的句子,KL(·||·) 表示 KL 散度,H(·) 是香农熵,α 和 β表示相应项的均衡权重,pθ 指用 θ 进行参数化的序列生成模型。

使用拉格朗日乘子法,该目标函数可以通过类似 EM 算法的步骤分别优化 q 和θ。在第 n 次迭代时:

027ed64503264c3b99ba396d3aa33655.png

现有算法是特殊实例

我们可以将已有的序列生成算法表示为该框架的特殊实例。

最大似然估计(MLE)

使 (R = Rδ, α → 0, β = 1)。如果 y = y*,则 ERPO 的 E-step 中 q(y|x) = 1,反之结果为 0。因此 M-step 与以下公式等价:

8c447ee2a6d87b134bf9548722178ea3.png

可见上式精确地还原了 MLE 的目标函数。

也就是说,MLE 可以看做带有 δ 奖励及上述权重值的策略优化算法的一个实例。任何不能精确匹配数据 y* 的样本 y 都将收到负无穷奖励,从而永远不对模型学习做出贡献。

奖励增强最大似然(RAML)

如果用 MLE δ 奖励取代 e(y|y*) 中的任务奖励 R,则 RAML 目标函数就将等同于原版 MLE 目标函数。MLE 和 RAML 之间的这种关系在 ERPO 中仍然存在。与在 ERPO 中还原 MLE 的方法类似,使 (α → 0, β = 1),但将 R 设置为任务度量奖励,则 ERPO 的 M-step 精确地等同于最大化上述 RAML 目标函数。

数据加噪

数据加噪也可以作为 ERPO 框架中的特殊实例。从取 (R = Rδ, α → 0, β = 1) 的 MLE 的 ERPO 重公式化开始,数据加噪可以用上述一元松弛 Rδ 进行公式化。

Softmax 策略梯度(SPG)

SPG 可以轻松兼容 ERPO 框架。将 SPG 目标函数的梯度设为 θ,我们可以立即得到与 ERPO 相同的更新规则,(α = 1, β = 0, R = common reward)。

注意,SPG 和 RAML 配置中唯一的区别在于现在 α = 1。与 RAML 相比,SPG 利用奖励分布和模型分布使探索空间更向前了一步。从理论上来讲,在训练阶段进行充分的探索将提高测试阶段的性能。然而,随着训练难度的增加,必须使用额外的复杂优化及近似技术(Ding & Soricut, 2017),使训练更加可行。

ec88d5c1dec232ffe907eb36a2b372dd.png

图 2:不同学习算法的统一表述。每个算法对通用 ERPO 框架来说都是一个特例,采用了超参数 (R, α, β) 的某些特定取值。

应用:插值算法

在广义 ERPO 框架中,一系列常用学习算法都可以被理解为具有三个特定规格超参数 (R, α, β) 的实例。每个算法都可以被视为超参数空间(图 1)中的一个点。通常,具有更受限的奖励函数 R 和非常小的 α 的点具有更小的有效探索空间,并且允许高效学习(如 MLE),相比之下,带有平滑 R 和较大 α 的点将导致更难的学习问题,但允许更高效的探索和更好的测试性能(如 (softmax) 策略梯度)。研究人员在论文中还探索了一种对现有算法进行插值的示例算法。

该插值算法从最受限但最简单的配置 (MLE) 开始学习,并逐渐扩展探索空间以减少和测试阶段之间的差异——由易到难的学习范式。由于已经将常用算法映射到超参数空间中的点,因此插值变得非常简单,只需超参数值的退火。

实验结果

研究人员在机器翻译和文本摘要任务上评估了上述插值算法。如下图所示,与之前的方法相比,该算法达到了更好的效果。

f296cda5445a1241a05cefa5e5f8fd85.png
f948894bc5a93bf11ec9160efb173b19.png

图 3:上图是不同学习算法在机器翻译任务上的收敛曲线。下图是与 MLE 相比,该算法在文本摘要任务上的提升。

论文:Connecting the Dots Between MLE and RL for Sequence Generation

6bbbe98d1370202ef97e83f72ae2fece.png
  • 论文链接:https://arxiv.org/abs/1811.09740
  • 代码:https://github.com/asyml/texar/tree/master/examples/seq2seq_exposure_bias

该研究的代码实现基于 Texar,一个通用、易用的文本生成工具库。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/566824.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot 集成redis_一文详解Spring Boot 集成 Redis

redis设置:修改redis服务器的配置文件vim /usr/local/redis/bin/redis.confbind 0.0.0.0 protected-mode no重新启动redissystemctl restart redis.service #重新启动服务注意:服务器的话需要设置安全组开放端口1.导入依赖org.springframework.boot …

计算机用手机的网络,电脑做热点让手机上网_电脑开热点给手机用

2016-11-26 12:00:20你好!很高兴为你解答,有两个解决办法:1.在每台机的本地连接--属性--常规--internet协议(TCP/IP)--常规里,设置成"自动获取IP地址"2.在每台机的本地连接--...2017-01-06 14:44:121.打开任务栏右下角的网络连接,在弹出的界面…

shell开启飞行模式_原来手机飞行模式有这么多用处!99%的深圳人都不知道...

相信大家都知道我们的手机里有个功能叫「飞行模式」(又称航空模式)它可以关掉手机收发信号的装置避免手机信号对飞机飞行造成干扰来源:网络那么对于不常坐飞机的人来说「飞行模式」功能是不是毫无用处呢?当然不是今天易小姐就带大家解锁关于「飞行模式」…

联想微型计算机启天e4300,戴尔轻薄商务本Latitude E4200/E4300开卖

戴尔随迅驰2平台的发布全面更新了自己的Latitude商用笔记本产品线,之前15和14寸的E6000/E5000系列已经上市销售,今天两款轻薄型号E4300/E4200也摆上了戴尔美国官网的货架。13.3寸的E4300目标直指联想ThinkPad X300/X301系列,虽然在轻薄程度上…

医疗小程序源码_不懂商城小程序源码,如何快速创建小程序商城?

小程序在近来发展十分迅速,从微信小程序游戏出发,到现在渗透到各种功能类型,甚至已经扩展到了其他的应用程序上。那么如今很多的小程序商城应该怎么创建呢?不懂商城小程序源码也可以自己制作吗?当然可以,下…

计算机快捷键任务管理器,任务管理器快捷键,小编告诉你电脑如何打开任务管理器...

电脑系统的任务管理器是Windows提供有关计算机性能的信息,并显示了计算机上所运行的程序和进程的详细信息,从这里可以查看到当前系统的进程数、CPU使用比率、更改的内存、容量等数据。那么,任务管理器怎么样打开呢?下面&#xff0…

python webdriver 等待网页已登录_python基础编程:python+selenium实现163邮箱自动登陆的方法...

本文介绍了让我们先来预览一下代码运行效果吧:首先分析163邮箱登陆页面的网页结构(按F12或单击鼠标右键选择审查元素)1、定位到登陆框(注意登录框是一个iframe,如果不定位到iframe的话是无法找到之后的邮箱地址框和密码输入框的)2、定位到邮箱地址框(nam…

长沙计算机中级职称分数公布,大家所期待的2020年湖南省长沙中级职称评审公示...

原标题:大家所期待的2020年湖南省长沙中级职称评审公示年底了,各大考试差不多都快结束了。唯一就是湖南长沙的土建中级职称评审结果待公示,湖南岳阳,湘潭等地方也相继公示。2019年湖南省中级职称评审(长沙市)12月24号公示&#xf…

android平台上持久化存储3种手段_深入学习Redis :持久化

前言在上一篇文章中,介绍了Redis的内存模型,从这篇文章开始,将依次介绍Redis高可用相关的知识——持久化、复制(及读写分离)、哨兵、以及集群。本文将先说明上述几种技术分别解决了Redis高可用的什么问题;然后详细介绍Redis的持久…

自动驾驶芯片_自动驾驶芯片“争夺战”

伴随着智能汽车时代的加速到来,自动驾驶芯片“争夺战”也越演越烈。继奥迪、宝马、长安、广汽、小鹏等汽车厂商“摩拳擦掌”L3级自动驾驶后,近日本田扔出了一个大消息,L3级自动驾驶汽车将于明年3月正式开售。至此,全球已经进入L3级…

r语言将百分数化为小数_「淮南师出」教师资格/招聘小学数学:《百分数与小数的互化》...

教学目标:1、利用已有知识迁移、类推、发现百分数和小数互化的规律和方法。2、理解、掌握百分数和小数互化的方法,并能熟练运用,进一步体会数学之间的内在联系,增强思维的深刻性。3、通过合作交流、探索发现等数学学习活动教给学生…

wps表格里面计算机在哪里,WPS的Word居然还有计算神器?在哪里能找到又是怎么进行计算呢?...

说到计算器,恐怕好多小伙伴第一时间会想到WPS的Excel和微软的Excel表格,其实,WPS的Word也有计算器,只是隐藏了起来好多人不知道而已。只要找到它,我们在Word里也能进行加减乘除的计算了,下面白豆芽就给大家…

深入浅出:Go 语言中值传递与引用传递的原理解析

深入浅出:Go 语言中值传递与引用传递的原理解析 引言Go 语言中的值传递什么是值传递?Go 语言中值传递的工作原理代码示例 Go 语言中的引用传递什么是引用传递?Go 语言中引用传递的工作原理代码示例 值传递与引用传递的比较优势和劣势应用场景…

专科学数控还是计算机,盘点适合专科男生学的专业 哪些专业好就业

正所谓:男怕入错行,女怕嫁错郎。对于专科男生来说,哪些专业好就业呢?下面和小编一起来看看吧!1、数控加工专业随着数控制造增多,我国对于数控加工专业人才严重缺乏。选择学数控加工专业的专科男生在毕业后&…

红米note2能刷机没显示无服务器,红米note2怎么刷机 红米note2刷机教程

大家应该知道吧!现在手机市场已经被智能手机垄断了,走到哪儿智能手机都跟我们形影不离。虽然像三星、 苹果 一样的大牌手机比较出名,但是我们的国产手机这几年发展的也是很不错的,就好比国内最火爆的 小米 手机,这个品牌的手机上市…

花瓣长度和花瓣宽度散点图鸢尾花_基于python的鸢尾花简单聚类模型分析

1、导入数据#导入花萼数据 from sklearn.datasets import load_iris irisload_iris() iris.data前四列为花萼长度,花萼宽度,花瓣长度,花瓣宽度等4个用于识别鸢尾花的属性2、建模#创建kmeans聚类 from sklearn.cluster import KMeans kmeansKM…

ajax结构图,Vuex结构图及用法

Vuex 是一个专为 Vue.js应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex结构图下图是我总结的Vuex结构图。Vuex用法以一个Vue项目中的商家信息搜索功能为例,记录Vuex的使…

qq饥荒联机版服务器没有响应,饥荒联机版专用服务器卡顿原因及解决方法汇总...

饥荒联机版中自己的专用服务器会经常卡顿,那么是什么原因造成的呢?相信很多玩家都不太了解,下面带给大家的是饥荒联机版专用服务器卡顿原因汇总。饥荒联机版专用服务器卡顿原因汇总①猪人兔人鱼人房卡顿等级:高 解决难度:低普通服务器地上同屏可以放20个…

php验证密码后跳转_php-laravel框架用户验证(Auth)模块解析(四)忘记密码

一、忘记密码模块路由二、控制器解析跟注册、登录的控制器一样,大部分的逻辑使用trait引入。ForgotPasswordController:负责忘记密码页面,以及邮件发送四、扩展开发:自定义的忘记密码行为忘记密码有多种处理方式,这里默…

MBSE系统工程是什么

MBSE(基于模型的系统工程)是现代系统工程的最新发展结果。 曾经的产品设计师利用纸笔绘制图版来制作产品和设计,在CAD这类三维建模软件的出现,让工程师们甩掉了图板和图纸,带来的效益大家都能理解。 目前系统工程师们…