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 来源: ...
随机推荐
- 一起来点React Native——常用组件之Image
一.前言 在开发中还有一个非常重要的组件Image,通过这个组件可以展示各种各样的图片,而且在React Native中该组件可以通过多种方式加载图片资源. 二.Image组件的基本用法 2.1 从当 ...
- C语言基础:枚举.宏 分类: iOS学习 c语言基础 2015-06-10 22:01 20人阅读 评论(0) 收藏
枚举:一组有符号的整型常量,一 一列举所有的状态 枚举常和switch连用 enum week{ monday=1, tuesday, wednesday, thursday, friday, sat ...
- Texas Instruments matrix-gui-2.0 hacking -- menubar.php
<?php /* * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ * * * Redistrib ...
- STM32 输入捕获配置
在STM32 的定时器,除了 TIM6 和 TIM7,就是通过检测 TIMx_CHx 上的 边沿信号,在边沿信号发生跳变(比如上升沿/下降沿)的时候, 将当时定时器 的值(TIMx_CNT) 存放到对 ...
- HDU 3342:Legal or Not(拓扑排序)
Legal or Not Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- ARP命令详解
ARP是一个重要的TCP/IP协议,并且用于确定对应IP地址的网卡物理地址.实用arp命令,我们能够查看本地计算机或另一台计算机的ARP高速缓存中的当前内容.此外,使用arp命令,也可以用人工方式输入 ...
- ace 在线编辑器 知识点
ace 常用方法: 功能 语句 设置值 editor.setValue("the new text here"); // or session.setValue 获取值 edito ...
- java中字符与字节的编码关系
在 GB 2312 编码或 GBK 编码中,一个英文字母字符存储需要1个字节,一个汉字字符存储需要2个字节. 在UTF-8编码中,一个英文字母字符存储需要1个字节,一个汉字字符储存需要3到4个字节. ...
- VS2010/MFC编程入门系列教程 (转)
http://www.jizhuomi.com/school/ 鸡啄米编程课堂 http://www.jizhuomi.com/software/257.html http://blog.csdn. ...
- ES(5): ES Cluster modules settings
ES cluster 提供了针对不同模块的参数设置,可通过修改集群上各个节点的elasticsearch.yml文件,也可在集群运行时通过api接口来更新(https://www.elastic.co ...