当前最优的 NMT 模型都遵循结合注意力的 seq2seq 模型的范式,但与用于文本和视觉任务的卷积模型相比,NMT 模型仍然太浅。来自 Google AI 的研究者提出对注意力机制进行修改,其类似于创建沿着编码器层的加权残差连接,使误差信号可以同时沿着编码器层和时间进行传播。「透明注意力」使得更深层 NMT 模型的训练成为可能,并使模型在 WMT'14 英语-德语翻译和 WMT'15 捷克语-英语翻译任务上取得了 0.7-1.1 的 BLEU 值提升。
近年来,机器翻译系统的质量突飞猛进,这要归功于神经序列到序列模型的出现。尽管当前最优的几个模型各不相同,包括 Transformer (Vaswani et al., 2017)、卷积 seq2seq 模型 (Gehring et al., 2017) 和 LSTM (Chen et al., 2018),但所有这些模型都遵循注意力机制 (Bahdanau et al., 2015) 结合 seq2seq 模型的范式。
尽管变革性新架构为机器翻译系统的质量提升做出了很大贡献,但更大模型容量的重要性不容忽视。机器翻译转向神经模型后,NMT 质量的第一个重大改进就是由于模型容量的巨大提升 (Zhou et al., 2016; Wu et al., 2016)。尽管存在多种方法可以提升模型容量,但事实证明更深的模型能够提取更具表达性的特征 (Mhaskar et al., 2016; Telgarsky, 2016; Eldan and Shamir, 2015),给视觉任务带来之前数年未曾有过的显著提升 (He et al., 2015; Srivastava et al., 2015)。
尽管深层模型很明显是一条康庄大道,但这方面的研究通常受限于计算能力的约束。此外,深层模型常常受到梯度消失或爆炸等训练问题的困扰。这些问题在循环架构中捕捉长距离依赖的语境中得到了研究 (Pascanu et al., 2012; Hochreiter et al., 2001),但在多于 8 层的 Transformer 或 LSTM seq2seq 模型中解决这些缺陷尚未得到充分研究 (Wang et al., 2017; Barone et al., 2017; Devlin, 2017)。
这篇论文为基于 Transformer 和 LSTM 的模型训练极端深层编码器,从而在训练用于翻译的深层模型方面迈出了第一步。随着编码器深度逐渐增加,原始 Transformer 模型完全无法训练。研究者还观察了 LSTM 模型的次优性能,认为其与训练方面的问题有关。为便于优化,研究者提出对注意力机制进行增强,实现对更深层模型的训练,该方法在 WMT'14 英语-德语翻译和 WMT'15 捷克语-英语翻译任务上取得了一致进展。
论文:Training Deeper Neural Machine Translation Models with Transparent Attention
论文链接:https://arxiv.org/pdf/1808.07561v1.pdf
摘要:尽管当前最优的 NMT 模型(如 RNN seq2seq 和 Transformer)拥有大量参数,但与用于文本和视觉任务的卷积模型相比,它们仍然太浅。本研究尝试训练深度为原来 2-3 倍的 Transformer 和 Bi-RNN 编码器用于机器翻译任务。我们提出对注意力机制进行简单的修改,以简便更深模型的优化,这种修改使得模型在基准 WMT'14 英语-德语翻译和 WMT'15 捷克语-英语翻译任务上取得了 0.7-1.1 的 BLEU 值提升。
透明注意力(Transparent Attention)
注意力对前向传播的影响因直观的可视化和语言学阐释而受到广泛关注,但它对梯度流的影响却常常被忽略。考虑没有注意力机制的原始 seq2seq 模型。为了将解码器最后一层的误差信号传播到编码器的第一层,信号必须穿过解码器中的多个时间步,通过编码器-解码器瓶颈,再穿过编码器中的多个时间步,才能到达需要更新的参数。每个时间步都会有一定量的信息损失,尤其是在训练早期。注意力 (Bahdanau et al., 2015) 创建了一条从解码器到达编码器第一层的直接路径,确保信号随时间的高效传播。这一内部连接性的增强显著缩短了信用分配(credit assignment)路径 (Britz et al., 2017),使得网络不易受到梯度消失等优化问题的影响。
但对于更深的网络,误差信号还需要通过编码器层。为此我们提出了一种注意力机制的扩展,类似于创建沿着编码器深度的加权残差连接,这使得误差信号可以同时沿着编码器层和时间进行传播。使用可训练权重,这一「透明」注意力可使模型根据训练阶段灵活调节编码器中不同层的梯度流。
实验设置
我们在标准 WMT'14 英语-德语数据集上进行模型训练。在将句子分解成类似于 (Sennrich et al., 2016) 的子词单元之前,先使用 Moses 分词器将对每个句子执行分词操作。我们对每个语言对使用一个包含 32k 个单元的共享词汇表。我们报告了该方法在 newstest 2014 上的所有结果,并使用 newstest 2012 和 newstest 2013 的组合作为验证集。为了验证结果,我们还在 WMT'15 捷克语-英语翻译任务上评估了该模型。这里我们使用 newstest 2013 作为验证集,newstest 2015 作为测试集。为评估模型,我们计算了 tokenized、true-case 输出的 BLEU 值。我们报告了 21 个检查点窗口的平均收敛后得分(mean postconvergence score),该得分按照 (Chen et al., 2018) 的方法使用开发性能获取。
基线实验
我们的研究基于两个架构:Transformer (Vaswani et al., 2017) 和 RNMT+ (Chen et al., 2018)。我们选择了二者的较小规模版本,以在单个 GPU 上拟合层数多达 20 层的深层编码器。我们的所有模型都在 8 个 P100 GPU 上进行同步训练,并使用 Adam (Kingma and Ba, 2014) 进行优化。我们对这两个架构各训练了四个模型:具备 6、12、16、20 个编码器层。我们对所有的 Transformer 和 RNMT+ 模型分别使用 6 和 8 个解码器层。我们还报告了标准 Transformer Big 和 RNMT+ 的性能(详见 (Chen et al., 2018)),便于与更高容量的模型进行对比。
Transformer:我们使用 Transformer 基础模型的最新版本,(Chen et al., 2018) 的实现。我们修改了学习率方案,将学习率设置为 3.0,使用了 40000 个预热步。
RNMT+:我们基于 (Chen et al., 2018) 的设置实现了英语-德语 RNMT+ 模型的较小版本,编码器和解码器各有 512 个 LSTM 节点。
图 1:在 WMT 14 En→De 上训练的 6 层 Transformer(蓝色)与 20 层 Transformer(红色)的 Grad-norm ratio (r_t) vs 训练步 (t) 曲线。
图 2:在 WMT 14 En→De 训练的 6 层 RNMT+(蓝色)与 20 层 RNMT+(红色)的 Grad-norm ratio (r_t) vs 训练步 (t) 曲线。
表 1:各种版本的 Transformer 模型在 En→De newstest 2014 任务上取得的 BLEU 值。* 表示模型无法训练。
表 2:各种版本的 Transformer 模型在 Cs→En newstest 2015 任务上取得的 BLEU 值。* 表示模型无法训练。
图 3:使用透明注意力的 20 层 Transformer 模型的 Grad-norm ratio (r_t) vs 训练步 (t) 曲线。
图 4:训练过程中,20 层 Transformer 编码器学得的注意力权重 s_i,6 的变化。
表 3:RNMT+ 模型在 En→De newstest 2014 任务上取得的 BLEU 值。* 表示模型无法训练。
表 4:RNMT+ 模型在 Cs→En newstest 2015 任务上取得的 BLEU 值。* 表示模型无法训练。