订阅
纠错
加入自媒体

中科院计算所副研究员冯洋:神经机器翻译的训练改进和解码提速

2020-04-07 16:18
将门创投
关注

训练

1. 计划采样

对上面提到的问题进行一个小总结:训练预测过程中Ground Truth的未知导致的Exposure Bias 问题交叉熵损失函数的逐词匹配所导致对于所有的非Ground Truth 一视同仁的问题。解码Beam Search 的Beam Size 会引入大量的计算成本自回归解码导致的无法并行问题。

首先,针对于Exposure Bias问题,我们采用的是进化采样的方法,这个就是我们2019ACL Best Paper的工作。针对与训练和测试时context不一致的情况,我们的解决方法的主要思想是,在训练的时候模仿测试时候可能会碰到的情况,这样在测试的时候就会发现,当前碰到的情况在训练的时候都碰到过,这样模型就可以应对了。

具体的做法是我们在每一步,模拟上一步的翻译结果,就是slides中的oracle,其中带*的是就是Ground Truth,在每一步,我们都会随机的选择是Oracle还是Ground Truth来作为当前步的上一步词输入。

使用上述方法,我们需要解决的三个关键问题是:1)如何生成Oracle翻译,2)Oracle和Ground Truth如何进行采样,3) 如何训练模型。

对于Oracle的生成,我们有两种方法,一个是生成词级别的Oracle,另一个是生成句级别的Oracle。词级Oracle即每一步都会选择最优,句子级别Oracle需要考虑到整个句子的最优。

由于RNN Search会在生成oracle的算法中会用到。在讲生成oracle的算法之前,先大体介绍一下RNN Search模型。RNN Search在当前步翻译的时候,会输入历史的隐状态信息,同时也会将上一步翻译的结果输入进去,经过一系列的变换,会得到当前步的一个隐状态,该隐状态再经过几层全连接的计算,最终输入到softmax层得到词表中每一个词的归一化的分数。

在生成词级oracle的时候,我们会在softmax归一化分布之前加上一个Gumble Noise。Gumble Noise 的公式如slides中所示,其中  表示一个均匀分布。式子中的 表示温度,当非常大的时候,相当于argmax,当  比较小的时候,相当于均匀分布。

对于句级Oracle,我们首先采用Beam Search生成前K个候选译文,然后对选定的K个候选译文进行排序,这里的排序可以根据K个候选译文和Ground Truth计算一个BLUE值,还可以用一些其它的方法进行排序,最终选取得分最高的译文作为句级的Oracle。词级Oracle和句级Oracle 是一个局部最优和全局最优的一个区别。

对于采样,具体是怎么操作的呢?首先考虑到一点就是在刚开始训练的时候,模型的效果不怎么好,这样,无论是词级oracle的生成还是句级oracle的生成效果肯定都不是很理想,如果这时候使用oracle来引导模型训练的话, 可能会使得模型收敛的比较慢。一个比较合理的做法是,刚开始我们尽量选用Ground Truth的词,当模型快收敛的时候,我们再加大Oracle翻译的采样比例。这里的采样概率公式如slides所示,其中,随着epoch的增长,系统越来越倾向于选择oracle label。

对于训练的话,同样的采用最大化log likelihood的方式。

实验结果:除了对比Transformer 和 RNN-Search,也对比了另外两个系统,SS-NMT 和 MIXER。其中,SS-NMT也是通过计划采样的方式。MIXER的loss分为两个部分,一个部分是传统的Transformer使用的交叉熵损失函数,另外一部分是将BLEU值作为reward,然后通过policy gradient的方法对模型进行训练。

这个是在中英文新闻数据上的结果,可以看到,在RNN-Search的系统上, 我们相比于Baseline能够提升2.3个点。在Transformer系统上,相比于Baseline能够提升1.5个点。

在英德新闻数据结果上,基于RNN-Search的系统比baseline高了1.6个点,基于Transformer的系统比baseline高了1.3个点。

<上一页  1  2  3  4  5  下一页>  
声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

人工智能 猎头职位 更多
扫码关注公众号
OFweek人工智能网
获取更多精彩内容
文章纠错
x
*文字标题:
*纠错内容:
联系邮箱:
*验 证 码:

粤公网安备 44030502002758号