Tie-Yan Liu等作者Panda编译

用强化学习做神经机器翻译:中山大学&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 汉英翻译上确实实现了当前最佳。

理论强化学习机器翻译刘铁岩微软亚洲研究院中山大学
1
相关数据
神经网络技术
Neural Network

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

神经机器翻译技术
Neural Machine Translation

2013 年,Nal Kalchbrenner 和 Phil Blunsom 提出了一种用于机器翻译的新型端到端编码器-解码器结构 [4]。该模型可以使用卷积神经网络(CNN)将给定的一段源文本编码成一个连续的向量,然后再使用循环神经网络(RNN)作为解码器将该状态向量转换成目标语言。他们的研究成果可以说是神经机器翻译(NMT)的诞生;神经机器翻译是一种使用深度学习神经网络获取自然语言之间的映射关系的方法。NMT 的非线性映射不同于线性的 SMT 模型,而且是使用了连接编码器和解码器的状态向量来描述语义的等价关系。此外,RNN 应该还能得到无限长句子背后的信息,从而解决所谓的「长距离重新排序(long distance reordering)」问题。

最大似然估计技术
Maximum Likelihood Estimation

极大似然估计是统计学中用来估计概率模型参数的一种方法

机器翻译技术
Machine translation

机器翻译(MT)是利用机器的力量「自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)」。机器翻译方法通常可分成三大类:基于规则的机器翻译(RBMT)、统计机器翻译(SMT)和神经机器翻译(NMT)。

目标函数技术
Objective function

目标函数f(x)就是用设计变量来表示的所追求的目标形式,所以目标函数就是设计变量的函数,是一个标量。从工程意义讲,目标函数是系统的性能标准,比如,一个结构的最轻重量、最低造价、最合理形式;一件产品的最短生产时间、最小能量消耗;一个实验的最佳配方等等,建立目标函数的过程就是寻找设计变量与目标的关系的过程,目标函数和设计变量的关系可用曲线、曲面或超曲面表示。

强化学习技术
Reinforcement learning

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

权重技术
Weight

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

深度学习技术
Deep learning

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

推荐文章