EMNLP 2018 | 用强化学习做神经机器翻译:中山大学&MSRA填补多项空白
人工深度学习和神经网络已经为机器翻译带来了突破性的进展,强化学习也已经在游戏等领域取得了里程碑突破。中山大学数据科学与计算机学院和微软研究院的一项研究探索了强化学习在神经机器翻译领域的应用,相关论文已被 EMNLP 2018 接收,相关代码和数据集也已开源。
- 论文地址:https://arxiv.org/abs/1808.08866
- 开源项目:https://github.com/apeterswu/RL4NMT
神经机器翻译(NMT)[Bahdanau et al., 2015; Hassan et al., 2018; Wu et al., 2016; He et al., 2017; Xia et al., 2016, 2017; Wu et al., 2018b,a] 近来变得越来越受欢迎了,因为这种方法表现更优,而且无需繁重的人工工程工作。其训练过程通常是:通过取源句子和之前已有的(基本真值)目标 token 作为输入,以最大化目标句子中每个 token 的似然。这样的训练方法被称为最大似然估计(MLE)[Scholz, 1985]。尽管易于实现,但在训练阶段的 token 层面的目标函数与 BLEU [Papineni et al., 2002] 等序列层面的评估指标却并不一致。
为了解决不一致的问题,强化学习(RL)方法已经在序列层面的目标优化上得到了应用。比如,研究者已将 REINFORCE [Ranzato et al., 2016; Wu et al., 2017b] 和 actor-critic [Bahdanau et al., 2017] 等策略优化方法用在了包括 NMT 在内的序列生成任务上。在机器翻译领域,也有相似的方法被提出——被称为「最小风险训练」[Shen et al., 2016]。所有这些研究都表明强化学习技术可以有效地用于 NMT 模型 [Wu et al., 2016].
但是,之前还没有将强化学习有效应用于现实世界 NMT 系统的研究成果。首先,大多数研究(甚至可能全部研究)都是基于浅的循环神经网络(RNN)模型验证他们的方法。但是,为了得到当前最佳的表现,利用近期发展起来的深度模型 [Gehring et al., 2017; Vaswani et al., 2017] 将至关重要,这些模型的能力要强大得多。
其次,强化学习方法存在相当一些众所周知的局限性 [Henderson et al., 2018],比如梯度估计方差高 [Weaver and Tao, 2001] 以及目标不稳定 [Mnih et al., 2013],因此要让强化学习实现有效的实际应用,其实并不容易。因此,之前的研究提出了一些技巧。但是,如何将这些技巧应用于机器翻译?这一点仍还不够明朗,研究者也没有达成共识。举个例子,[Ranzato et al., 2016; Nguyen et al., 2017; Wu et al., 2016] 等研究建议使用的基准奖励方法 [Weaver and Tao, 2001] 并没有得到 [He and Deng, 2012; Shen et al., 2016] 等研究的采纳。
第三,研究已经表明,使用 MLE 训练时,大规模数据(尤其是单语言数据集)能为翻译质量带来显著提升 [Sennrich et al., 2015a; Xia et al., 2016]。但如何在 NMT 中将强化学习与单语言数据结合起来?这方面几乎仍是研究真空。
我们希望能通过这篇论文填补这些空白;我们还研究了可以如何应用强化学习来得到强大的 NMT 系统,使其能取得有竞争力的表现,甚至达到当前最佳。我们对强化学习训练的不同方面执行了几项综合研究,以便了解如何:1)设置有效的奖励;2)以不同的权重结合 MLE 和强化学习,从而实现训练过程的稳定;3)降低梯度估计的方差。
此外,因为利用单语言数据在提升翻译质量上是有效的,所以我们进一步提出了一种将强化学习训练的能力和源/目标单语言数据结合起来的新方法。就我们所知,这是在使用强化学习方法训练 NMT 模型方面探索单语言数据的效果的首个研究尝试。
我们在 WMT17 汉英翻译(Zh-En)、WMT17 英汉翻译(En-Zh)和 WMT14 英德翻译(En-De)任务上执行了实验,并得到了一些有用的发现。比如,多项式采样在奖励计算方面优于波束搜索,强化学习和单语言数据的结合能显著提升 NMT 模型的表现。我们的主要贡献总结如下。
- 我们立足于相当有竞争力的 NMT 模型,提供了首个对强化学习训练不同方面的全面研究,比如如何设置奖励和基准奖励。
- 我们提出了一种能有效利用大规模单语言数据的新方法,可在使用强化学习训练 NMT 模型时使用,并且这些单语言数据来自源语言和目标语言都可以。
- 将我们的这些研究发现和新方法结合到一起,我们在 WMT17 汉英翻译人上取得了当前最佳的表现,超越了强基准(Transformer 大模型+反向翻译)近 1.5 BLEU。此外,我们在 WMT14 英德翻译和 WMT17 英汉翻译任务上也得到了足以媲美最佳的结果。
我们希望我们的研究和发现将有助于社区更好地理解和利用强化学习来开发强大的 NMT 模型,尤其是在面临着深度模型和大量训练的现实世界场景中(包括有双语对应的数据和单语言数据)。
为此,我们开源了所有的代码和数据集以帮助其他人再现这一研究成果:https://github.com/apeterswu/RL4NMT。
表 1:不同的奖励计算策略的结果。beam 表示波束搜索,multinomial 表示多项式采样。在通过波束搜索生成 yˆ 时,我们所用的宽度为 4。shaping 是指使用了奖励塑造(reward shaping),而 terminal 表示没有使用。
表 7:表现差不多的不同端到端 NMT 系统的结果比较。SougouKnowing 的结果来自 http://matrix.statmt.org/matrix/systems_list/1878.
最后,作为对我们的实验结果的总结,我们将几种有代表性的端到端 NMT 系统与我们的研究成果进行了比较,如表 7 所示,其中包含 Transformer [Vaswani et al., 2017] 模型,使用以及没使用反向翻译的方法 [Sennrich et al., 2015a],以及在 WMT17 汉英翻译挑战赛上表现最好的 NMT 系统(SougouKnowing-ensemble)。结果清楚地表明,在将源侧和目标侧的单语言数据与强化学习训练结合到一起之后,我们能得到当前最佳的 BLEU 分数 26.73,甚至超过了在 WMT17 汉英翻译挑战赛上最佳的集成模型。
论文:一项将强化学习用于神经机器翻译的研究
论文链接:https://arxiv.org/abs/1808.08866
摘要:近期的研究已经表明,强化学习(RL)方法可以有效提升神经机器翻译(NMT)系统的表现。但是,由于不稳定,成功完成强化学习训练是很困难的,尤其是在使用了深度模型和大型数据集的现实世界系统中。在这篇论文中,我们使用了几个大规模翻译任务作为测试平台,系统性地研究了使用强化学习训练更好的 NMT 模型的方法。我们对强化学习训练领域的几个重要因素(比如基准奖励、奖励塑造)进行了全面的比较。此外,之前我们也不清楚强化学习能否助益仅使用单语言数据的情况。为了填补这一空白,我们提出了一种利用强化学习通过使用源/目标单语言数据来进一步提升 NMT 系统的表现的新方法。通过整合我们所有的发现,我们在 WMT14 英德翻译、WMT17 英汉翻译和 WMT17 汉英翻译任务上取了媲美最佳的结果,尤其是在 WMT17 汉英翻译上确实实现了当前最佳。
EMNLP 2018 | 用强化学习做神经机器翻译:中山大学&MSRA填补多项空白的更多相关文章
- ICML 2018 | 从强化学习到生成模型:40篇值得一读的论文
https://blog.csdn.net/y80gDg1/article/details/81463731 感谢阅读腾讯AI Lab微信号第34篇文章.当地时间 7 月 10-15 日,第 35 届 ...
- Flink + 强化学习 搭建实时推荐系统
如今的推荐系统,对于实时性的要求越来越高,实时推荐的流程大致可以概括为这样: 推荐系统对于用户的请求产生推荐,用户对推荐结果作出反馈 (购买/点击/离开等等),推荐系统再根据用户反馈作出新的推荐.这个 ...
- temporal credit assignment in reinforcement learning 【强化学习 经典论文】
Sutton 出版论文的主页: http://incompleteideas.net/publications.html Phd 论文: temporal credit assignment i ...
- (待续)【转载】 DeepMind发Nature子刊:通过元强化学习重新理解多巴胺
原文地址: http://www.dataguru.cn/article-13548-1.html -------------------------------------------------- ...
- 【Machine Translation】CMU的NMT教程论文:最全面的神经机器翻译学习教程
这是一篇CMU发的神经机器翻译教程论文,很全很详细,适合新手阅读,即使没有什么MT.DNN.RNN的基础知识. 另外它还配套了CMU自己的一个框架DyNet的练习. 全文共9章,从统计语言模型到DNN ...
- (转) 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文)
本文转自:http://mp.weixin.qq.com/s/aAHbybdbs_GtY8OyU6h5WA 专题 | 深度强化学习综述:从AlphaGo背后的力量到学习资源分享(附论文) 原创 201 ...
- 【转】强化学习(一)Deep Q-Network
原文地址:https://www.hhyz.me/2018/08/05/2018-08-05-RL/ 1. 前言 虽然将深度学习和增强学习结合的想法在几年前就有人尝试,但真正成功的开端就是DeepMi ...
- 强化学习论文(Scalable agent alignment via reward modeling: a research direction)
原文地址: https://arxiv.org/pdf/1811.07871.pdf ======================================================== ...
- DRL强化学习:
IT博客网 热点推荐 推荐博客 编程语言 数据库 前端 IT博客网 > 域名隐私保护 免费 DRL前沿之:Hierarchical Deep Reinforcement Learning 来源: ...
随机推荐
- 第二篇 makefile的基本结构
makefile用于定义并描述源文件之间的依赖关系,用于说明如何编译各个源文件并生成最终的可执行文件,规则是makefile中的基本组成部分. 一个最基本的依赖规则如下所示: targets代表这个规 ...
- 【机器学习算法】cascade classifier级联分类器
前言 参考 1.级联分类器: 完
- opencv-python教程学习系列10-颜色空间转换
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍颜色空间转换,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 系 ...
- hdu2098 分拆素数和 素数筛
将一个偶数拆成两个素数的和,欧拉筛暴力 #include<stdio.h> #include<string.h> #define N 10001 ]; ]; ,j; void ...
- Python类之魔术方法
一.什么是魔术方法? 在Python的方法,我们经常会遇见__XXX__(),这样的方法,我们一般称为"魔术方法",赶紧搬个小板凳,我们一起来看看魔术方法有啥神奇的地方,这些方法又 ...
- BT601. BT709色彩空间
参考:http://blog.csdn.net/mao0514/article/details/16958873
- stenciljs 学习四 组件装饰器
stenciljs 可以方便的构建交互式组件 支持以下装饰器 component prop watch state method element component 说明 component 包含ta ...
- oracle 、sql server 、mysql 复制表数据
我们知道在oracle 中复制表数据的方式是使用 create table table_name as select * from table_name 而在sql server 中是不能这么使用的 ...
- 【转】每天一个linux命令(50):crontab命令
原文网址:http://www.cnblogs.com/peida/archive/2013/01/08/2850483.html 前一天学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划 ...
- WIN7\win10下使用批处理配置JAVA环境变量
我找了很多环境变量批处理的教程,都不太满意,因此综合修改了下,拼凑出了这么一个版本. 下面这个是我主要参考的博客,大部分的代码都是来自这里: http://blog.csdn.net/lpy36543 ...