本文作者:李上杰, 澜舟科技算法实习生,天津大学硕士一年级,研究方向为多言语机器翻译、无监督机器翻译,邮箱:sj_li@tju.edu.cn。纸上得来终觉浅,绝知此事要躬行。

写在前面

机器翻译作为最成熟的 NLP 应用方向之一,现已进入千家万户,小到同学们看论文写论文不可或缺的帮手,大到跨国商务协作、促进世界人民交流,机器翻译一直发挥着至关重要的作用。但是,全世界的 7000 多种言语中,绝大部分的言语没有充足的平行语料数据,没有数据,如何建模呢?多言语模型或许是一个挑选,多言语模型运用具有丰富资源的言语对的数据,能够协助低资源乃至无资源言语的机器翻译功能得到提高,使得树立掩盖巨大言语对的机器翻译体系成为或许。

而预练习技能作为 2018 年开端开展起来的重要技能,敏捷席卷了整个 NLP 范畴,在很多 NLP 使命上展示了令人振奋的功能提高。随着多言语预练习技能的进一步开展,多言语预练习为跨言语生成使命供给了优良的参数初始化,当多言语预练习之风吹向机器翻译范畴,又将发生怎样有趣的化学反应?

下文会针对这个热门研究问题进行整理,为咱们带来这方面的最新进展,并同享一篇近期在 ACL2022 上宣布的论文——《Universal Conditional Masked Language Pre-trainingfor Neural Machine Translation》,该论文提出了针对机器翻译的预练习模型 CeMAT,该模型的解码器根据双向掩码预练习,一起引进了两种掩码手段,比较 MRASP 和 MBART 而言功能愈加优异。

论文标题

Universal Conditional Masked Language Pre-training for Neural Machine Translation

作者机构

华为诺亚方舟试验室、澳大利亚莫纳什大学

论文链接

arxiv.org/abs/2203.09…

多言语预练习的办法

这篇论文关于多言语预练习作业的特色做了一个简略的概括,如下图所示:

论文领读| 面向机器翻译的多语言预训练技术哪家强?最新进展一睹为快!

图 1 与现有一些预练习办法的比较

从预练习模型的架构来看,由于机器翻译模型常常是根据 Encoder-Decoder 架构,因而能够分为根据编码器预练习和 Seq2Seq 的预练习。早期的预练习模型,如 mBERT[1]、XLM[2]、XLM-R[3] 等模型,往往是只在一个编码器结构下进行言语模型练习,这种预练习办法适合 NLU(Natural Language Understanding)使命,而关于 NLG(Natural Language Generation)使命,尤其是 Seq2Seq 办法的生成使命而言,无法对 Decoder 中的 Cross-Attention 层进行初始化。因而,近年来,如 MASS[4]、mBART[5]、mRASP[6] 等预练习模型都在预练习阶段就引进 Decoder 模块,希望经过这种办法为下游使命供给更好的参数初始化,这篇文章提出的 CeMAT[7] 相同是根据 Encoder-Decoder 架构。

从预练习运用的数据来看,针对机器翻译这种跨言语使命,运用双语数据进行预练习成为一个趋势。早期的预练习模型,除了 XLM 引进了 TLM(Translation Language Modeling),将双语数据拼接进行 MLM(Masked Language Modeling) 言语建模之外,运用单语数据进行预练习更为常见,这种根据自编码的练习方针和翻译的方针存在不同 [6],并且无法对高资源言语的翻译功能进行提高,以及在微调阶段存在的 Catastrophic Forgetting 问题 [8]。而 CeMAT 表明,不管是单语数据仍是双语数据,我全都要。CeMAT 在 Encoder 端履行 MLM 练习使命,在 Decoder 端履行 CMLM(Conditional MLM)[9] 使命,然后得到更好的多言语表明。

最后,从解码器的预练习办法来看,以 GPT[10] 为代表的 CLM(Causal Language Model) 预练习模型能够使得解码器具有很强的生成才能,但在 XLM[2] 的论文试验中就发现,运用根据 MLM 方针练习的预练习模型初始化解码器,要比运用 CLM 的功能更强,运用 CLM 初始化有时甚至不如对解码器进行随机初始化。根据这个现象,CeMAT 的作者揣度,在翻译中解码器的表明才能或许比生成才能更为重要。根据这个考虑,在预练习时运用 CMLM 对 Decoder 进行练习,然后增强 Decoder 的语义表明才能。

办法

CeMAT 预练习模型主要分为三个模块:条件掩码言语模型 CMLM、Aligned Code-Switching & Masking 与 Dynamic Dual-Masking,接下来咱们逐个介绍这三个模块。

论文领读| 面向机器翻译的多语言预训练技术哪家强?最新进展一睹为快!
图 2 CeMAT 架构图

1. CMLM

条件掩码言语模型 CMLM 来自于非自回归论文 Mask-predict[9],主要思维是给定一对双语语句 (XmX_m,YnY_n),隐瞒YnY_n中必定份额的词语,被隐瞒的词聚集记为ynmasky_n^{mask},练习时,在 Encoder 端输入XmX_m语句,在 Decoder 端输入隐瞒后的YnY_n语句 (隐瞒部分运用 [mask] token 代替),关于每一个被隐瞒的方位,猜测其实在词汇的概率:

论文领读| 面向机器翻译的多语言预训练技术哪家强?最新进展一睹为快!

这与之前的 Seq2Seq 自编码式的言语建模使命不同,如 MBART,其在 Decoder 端依然是自回归式的,猜测词汇时只能看到 Encoder 端和 Decoder 端已生成的词,即”上文”,引进 CMLM,使得 Decoder 不止能看到”上文”,还能看到”下文”,提高 Decoder 的语义表明才能。

2. Aligned Code-Switching & Masking

这个模块的主要思维是在给定一组双语语句的情况下,首先确定双语语句中的对齐信息,即源端语句中的词汇与方针端语句词汇对齐的方位信息,然后经过词替换的办法,根据一份多言语词典,将源端词汇替换为任意一种言语中的近义词,将方针端相应方位的词汇进行掩码。如图2 所示,源端标红的词汇是指Aligned Code-Switching & Masking办法涉及的词汇,英文词汇 “dance” 被替换为法语中的近义词 “danse” ,而方针端德语语句中的相应词汇 “tanzen” 被掩码,练习方针便是猜测实在词汇 “tanzen” 。关于单语数据,由于源端和方针端语句完全相同,只需求掩码相同方位的词汇即可。

词替换办法结构的 Code-Switching 语句,使得不同言语的词汇能够潜在地具有类似的上下文,由于单词的表明取决于上下文,因而不同言语中类似的词汇能够同享类似的表明,然后加强多言语空间的统一性。词替换办法也在之前的许多预练习作业中呈现,如 CSP[11]、MRASP[6]、MRASP2[12],这种运用词等级的对齐信息,引导表明对齐的办法,在多言语预练习技能中也十分流行。

3. Dynamic Dual-Masking

由于词典的规划所限,作者发现词替换的份额仅占数据集中词汇的 6%。因而,作者进一步提出了 Dynamic Dual-Masking 办法,该办法有两个关键的特性,一个是 Dynamic,即动态,指的是掩码的份额是一个区间,而不像 BERT 等模型是一个固定的份额;另一个是对偶掩码,即一起掩码源端语句和方针端语句。

关于双语数据,作者设置了随机变量v∈[0.2,0.5]v\in [0.2,0.5],用来对方针端语句进行动态的掩码,关于源端语句,设置了份额规划∈[0.1,0.2]\mu\in[0.1,0.2],作者严厉控制v≥v\geq\mu ,是为了让 Decoder 端愈加依靠 Encoder 的信息进行猜测,强化了 Cross-Attention 的参数练习。

关于单语数据,由于单语数据的源端和方针端语句相同,为了防止模型”走捷径”直接仿制,CeMAT 对源端和方针端进行相同的掩码。

Dynamic Dual-Masking 办法的示意图见上图标蓝的词汇,双语数据掩码方位无需严厉相同,单语数据需求严厉相同防止”窥屏”。作者相同设置了一个动态的掩码份额区间,v=∈[0.3,0.4]v=\mu\in[0.3,0.4]

注意到 Dynamic Dual-Masking 步骤的掩码或许会影响 Aligned Code-Switching & Masking 的成果,CeMAT 防止这种情况的发生,Dynamic Dual-Masking 不会挑选现已进行过 Aligned Code-Switching & Masking 的词汇。

将上述三个模块结合起来,总的丢失函数为:

L=−∑(Xm,Ym)∈D∑ynj∈ynmasklogP(ynj∣Xm,Yn)+(1−)∑xmi∈xmmasklogP(xmi∣Xm)L=-\sum_{(\hat{X}_m,\hat{Y}_m)\in \hat{D}}\lambda \sum_{y^j_n\in y_n^{mask}}logP(y^j_n|\hat{X}_m,\hat{Y}_n) + (1-\lambda)\sum_{x^i_m\in x^{mask}_m}logP(x^i_m|\hat{X}_m)

上式前半部分是解码端的 CMLM 丢失,Xm\hat{X}_mYm\hat{Y}_m 都经过了 Aligned Code-Switching & Masking 与 Dynamic Dual-Masking 的处理,后半部分是编码端 MLM 丢失。论文中设置 \lambda 为 0.7,用来调理两个丢失的权重。

试验成果

1. 翻译功能

CeMAT 运用了与 mRASP 相同的双语数据集 PC32,一起又从 common crawl 中收集了一批单语数据,共包括 21 种言语进行试验,主要的试验成果如下图所示:

论文领读| 面向机器翻译的多语言预训练技术哪家强?最新进展一睹为快!

CeMAT 根据练习数据规划,将不同的言语分为 low、medium、high、extr-high 四个等级,从成果上看,CeMAT 比较 mRASP 存在全面的提高,比较于 Direct(直接练习),经过多言语预练习的模型能够为低资源言语供给很强的常识迁移,在 En-Tr 的低资源使命上提高达到了 14.4 的 BLEU。试验对比了 CeMAT 与 MBART 和 mRASP,与 MBART 比较,mRASP 和 CeMAT 由于运用了双语数据进行预练习,显着比仅根据单语数据预练习的 MBART 更适合翻译这种跨言语使命,即使在 extr-high 的设置下依然有显着的提高。CeMAT 的规划相同适协作为非自回归翻译的预练习模型,作者相同对非自回归翻译功能的提高做了详细的试验,这部分的内容感兴趣的小伙伴能够自行去了解~

2. 融化试验

看到 CeMAT 的优异功能,咱们肯定想赶紧了解一下,CeMAT 中各个部分对终究的功能提高的重要性如何?

论文领读| 面向机器翻译的多语言预训练技术哪家强?最新进展一睹为快!

从作者进行的融化试验,Aligned CS masking 带来的提高平均为 0.5 个 BLEU,而动态掩码带来的提高达到了 2.1 个 BLEU。Aligned CS masking 由于只平均替换了 6%的词汇,因而带来的作用较动态掩码显着要低得多,如果能进行更多有用的词替换,以被替换的词作为锚点,能够想见对编码器的跨言语对齐会有更大的提高。这个表中的第三行表明不进行词替换、一起将动态掩码改为静态掩码、按照 15%的份额进行掩码。掩码的份额巨细对功能的影响是十分大的,如 MBART 中的掩码份额设置为 35%,过低的掩码份额会使得模型更轻易地猜测被掩盖的词,然后无法学到真实重要的东西。

总结

在最后,我想总结一下当前面向机器翻译的多言语预练习模型的特色:

运用双语数据预练习,供给充沛的跨言语信息。 MBART 预练习关于低资源言语有比较显着的提高,而关于高资源言语的提高并不显着,这在之前的针对单语预练习的作业中就有所提及 [6],笔者认为,单语预练习使命经过促进了单言语内部的言语建模,有用提高了低资源言语表明的质量,但并没有直接的跨言语对齐信息 (存在隐式的编码器参数同享),在高资源的情况下关于跨言语使命没有显着协助,咱们能够看到在 En-De 的言语对上 mBART 初始化功能甚至稍弱于随机初始化 (Direct)。运用很多高资源双语数据进行预练习能够为后续的机器翻译使命供给有用的初始化。

运用词替换技能,为不同言语的语句供给相同的上下文,促进多言语空间的交融。 从 CSP 到 mRASP,再到 CeMAT,词替换技能在预练习中成为了一个低成本高效的挑选,关于一个新言语而言,获取词典的难度会更小,无监督词典生成方面也有许多研究,如 VecMap[13],经过单语 Embedding 空间的映射对齐得到词典,比较于传统词典能够更灵敏地获取子词等级的对齐。

运用 MLM-style 的预练习方针练习解码器。 早期的 XLM 运用 MLM 练习的预练习模型来初始化翻译模型的解码器,微软的 DeltaLM[14] 运用预练习的编码器,交织地初始化解码器,然后再进行统一的单语+双语预练习,还有该论文介绍的 CeMAT 运用的 CMLM 使命。近期的翻译预练习模型越来越注重解码器的语义表明才能,由于 MLM-style 的预练习方针与解码器生成时的自回归办法有所抵触,或许咱们能够考虑挑选运用非自回归的解码办法,由于 CeMAT 在非自回归翻译上功能的提高也十分显著。

参考文献

[1] Devlin, J. , Chang, M. W. , Lee, K. , & Toutanova, K. . (2018). Bert: pre-training of deep bidirectional transformers for language understanding..

[2] Lample, G. , & Conneau, A. . (2019). Cross-lingual language model pretraining.

[3] Conneau, A. , Khandelwal, K. , Goyal, N. , Chaudhary, V. , & Stoyanov, V. . (2020). Unsupervised Cross-lingual Representation Learning at Scale. Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics.

[4] Song, K. , Tan, X. , Qin, T. , Lu, J. , & Liu, T. Y. . (2019). Mass: masked sequence to sequence pre-training for language generation.

[5] Yinhan Liu, Jiatao Gu, Naman Goyal, X. Li, Sergey Edunov, Marjan Ghazvininejad, M. Lewis, and Luke Zettlemoyer. 2020. Multilingual denoising pretraining for neural machine translation. In TACL.

[6] Lin, Z. , Pan, X. , Wang, M. , Qiu, X. , & Li, L. . (2020). Pre-training multilingual neural machine translation by leveraging alignment information. Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP).

[7] Pengfei Li, Liangyou Li, Meng Zhang, Minghao Wu, Qun Liu: Universal Conditional Masked Language Pre-training for Neural Machine Translation. ACL (1) 2022: 6379-6391

[8] Jiacheng Yang, Mingxuan Wang, Hao Zhou, Chengqi Zhao, Weinan Zhang, Yong Yu, Lei Li: Towards Making the Most of BERT in Neural Machine Translation. AAAI 2020: 9378-9385

[9] Marjan Ghazvininejad, Omer Levy, Yinhan Liu, Luke Zettlemoyer: Mask-Predict: Parallel Decoding of Conditional Masked Language Models. EMNLP/IJCNLP (1) 2019: 6111-6120

[10] Alec Radford and Karthik Narasimhan. 2018. Improving language understanding by generative pretraining.

[11] Zhen Yang, Bojie Hu, Ambyera Han, Shen Huang, Qi Ju: CSP: Code-Switching Pre-training for Neural Machine Translation. EMNLP (1) 2020: 2624-2636

[12] Xiao Pan, Mingxuan Wang, Liwei Wu, Lei Li: Contrastive Learning for Many-to-many Multilingual Neural Machine Translation. ACL/IJCNLP (1)

[13] Mikel Artetxe, Gorka Labaka, Eneko Agirre: A robust self-learning method for fully unsupervised cross-lingual mappings of word embeddings. ACL (1) 2018: 789-798

[14] Shuming Ma, Li Dong, Shaohan Huang, Dongdong Zhang, Alexandre Muzio, Saksham Singhal, Hany Hassan Awadalla, Xia Song, Furu Wei:DeltaLM: Encoder-Decoder Pre-training for Language Generation and Translation by Augmenting Pretrained Multilingual Encoders. CoRR abs/2106.13736 (2021)