在WMT21竞赛中,微信AI团队在模型结构、数据增强、训练优化和集成搜索方面继续探索,验证和使用了多项有效技术,同时也提出了多项有效的创新技术。
当前主流的神经网络机器翻译模型通常基于Transformer结构,往年一些有效的结构变种主要是增加模型深度和模型宽度。今年,我们在此基础上验证并使用了几项有效的模型变种,同时也提出了一些改进的模型结构,在明显提升翻译效果的同时,大幅增加了模型之间的多样性。在集成实验中,我们仅使用少量的改进后的变种模型就超越了几十个更深和更宽的Transformer模型集成效果。
前人研究表明,通过改进模型的初始化方法,可以有效缓解深层Post-Norm Transformer训练失败的问题。我们引入了修改后的初始化方法,成功训练了深层Post-Norm Transformer,并在集成中得到了明显收益。
■Talking-Heads Attention Transformer
前人研究表明,在多头注意力计算中加入额外的线性映射,加强头和头之前的信息流动,来增强注意力机制的性能和多样性。
■ Average Attention Transformer
Average Attention Network
平均注意力模型将Transformer解码器的多头自注意力机制(Multi-Head Self-Attention)替换成平均注意力机制(Average Attention),在没有明显损失性能的条件下,加速了模型速度。同时,因为注意力机制的不同,Average Attention模型在模型集成中提供了很好的多样性。
■ Weighted Attention Transformer
Weighted Attention Network
进而,我们对 Average Attention Network (AAN) 的权重计算进行了修改,通过对距离越远的历史赋予越低的权重,模型的性能得到了进一步提升,效果超过了普通的深层Transformer。
Mix-AAN Transformer
因为Average Attention和Multi-Head Self-Attention表现出良好的多样性,我们将两者在模型Decoder端进行混合,通过串行或并行的方式顺序排列,得到一系列单模型性能强劲且多样性很好的模型。在我们的模型集成实验中,这类模型变种带来了很大的收益。
为了构建更好的伪数据,我们在大量的源端和目标端单语数据中过滤出高质量的数据。通过迭代回译和知识蒸馏,来生成伪双语数据。我们还使用了多粒度(子词、词、短语)的噪声加入方式和动态Top-p采样,进一步增加了伪数据的多样性,构建了大规模的通用领域伪数据。
当我们把模型微调至目标领域(新闻领域)后,我们集成多个不同结构的模型,将大量源语言的单语数据翻译至目标语言。这样,我们的领域知识就被迁移到了大规模的伪数据中。我们再在包含领域知识的伪数据上重新训练模型,将领域相关的知识迁移到了模型中,迭代地执行这个过程。
我们提出了三种改进的训练算法,来缓解暴露偏差的问题。
■ 基于模型置信度的调度采样算法(Confidence-Aware Scheduled Sampling)
基于模型置信度的调度采样算法(https://aclanthology.org/2021.findings-acl.205.pdf)是微信AI团队近期提出的一种有效缓解暴露偏差问题的训练方法。训练过程中,基于模型置信度设计调度采样策略,从第一阶段Decoder的输出历史和标准历史中采样,作为第二阶段Decoder的输入,在训练中模拟真实的翻译推导场景。论文已被ACL2021-Findings收录。
■ 针对目标端输入的抗噪训练(Target Denoising)
在训练过程中,我们延用去年参赛的经验(https://aclanthology.org/2020.wmt-1.24.pdf),将Decoder的输入随机替换成句子中的其他单词,来模拟模型翻译时容易产生的乱序的问题。
■渐进的标签平滑技术(Graduated Label Smoothing)
为了缓解模型在领域微调时产生的过拟合问题,我们对置信度较高的单词给与更大的惩罚,给置信度较低的单词不给予惩罚,以加强数据分布中低频词的训练。
模型集成是一个有效提升模型性能的方案,但是如何在大量的候选模型中,选出最优的模型组合是一个耗时非常大,非常棘手的问题。常用的方法是通过贪心算法进行搜索,并引入一些随机性的策略,来得到一个较优的结果。
我们去年在WMT20上曾提出一种基于Self-BLEU的集成搜索算法,有效的提升了模型集成搜索效率。在本次WMT21竞赛中,我们进一步改进了该搜索算法,同时兼顾了单个模型的多样性和模型在开发集上的效果(BLEU),对模型重要性进行排序。再基于候选模型和集成模型的平均Self-BLEU进行贪心搜索,最终搜索时间减少了95%以上,搜索得到的模型集成效果也明显优于简单的贪心搜索。
目前,微信翻译已成为一个日翻译百亿级字符的大型多语言机器翻译引擎,支持多语种间的双向翻译,在翻译质量上达到业界领先水平。我们新提出的部分技术已上线微信翻译,服务场景涵盖微信聊天翻译、朋友圈翻译、图片翻译、网页翻译、扫一扫翻译、QQ邮箱、QQ音乐、微信读书、腾讯小微等,后续会陆续应用于更多的场景。
此外,微信翻译团队还是腾讯内部开源协同组织TencentMT Oteam的主要成员之一,TencentMT Oteam的成立旨在融合公司内多个翻译团队的优势,集中资源深度优化核心技术模块,打造强大的翻译引擎和服务。