摘要
本论文表明,在大规模预训练多语言语言模型能够显著提升多种跨语言迁移任务的性能。我们基于 Transformer 训练了一种掩码语言模型(MLM),覆盖 100 种语言,并使用超过 2TB 经过筛选的 CommonCrawl 数据。我们提出的模型 XLM-R 在多个跨语言基准测试中明显优于多语言 BERT(mBERT),包括 XNLI 平均准确率提升 14.6%,MLQA 平均 F1 分数提升 13%,NER(命名实体识别)F1 分数提升 2.4%。XLM-R 在低资源语言上表现尤为出色,例如在斯瓦希里语 XNLI 任务上提升 15.7% 的准确率,在乌尔都语上提升 11.4%。此外,我们对影响性能提升的关键因素进行了详细的实证分析,包括(1)正向迁移与容量稀释之间的权衡,(2)在大规模训练时,高资源语言和低资源语言的表现差异。最后,我们首次证明了多语言建模可以不以单语言性能为代价: X L M − R XLM-R XLM−R 在 GLUE 和 XNLI 基准测试中与强大的单语言模型表现相当。我们将公开代码、数据和模型。
1 引言
本研究旨在提升跨语言理解(XLU),通过深入研究在大规模数据上训练无监督跨语言表示的影响。我们提出了一种基于 Transformer 的多语言掩码语言模型 XLM-R,该模型在跨语言分类、序列标注和问答任务上达到了最先进水平。
多语言掩码语言模型(MLM),如 mBERT(Devlin 等,2018)和 XLM(Lample 和 Conneau,2019),通过在多个语言上联合预训练大型 Transformer 模型(Vaswani 等,2017),极大推动了跨语言理解任务的发展。这些模型在多个基准测试中实现了有效的跨语言迁移,如跨语言自然语言推理(XNLI)、问答(SQuAD、MLQA)和命名实体识别(NER)。然而,所有这些研究都基于 Wikipedia 预训练,而 Wikipedia 规模相对有限,特别是对于低资源语言。
本论文首先对大规模多语言模型的权衡和局限性进行了全面分析,借鉴了近期单语言模型扩展的研究(Liu 等,2019)。我们测量了高资源语言与低资源语言之间的权衡,以及语言采样和词汇量大小的影响。实验发现,当在固定模型容量下增加训练语言数量时,低资源语言的跨语言性能初始会有所提升,但超过一定阈值后,单语言和跨语言任务的整体性能开始下降。我们称之为“多语言的诅咒”,并证明可以通过增加模型容量来缓解该问题。然而,对于计算预算有限的未来 XLU 系统来说,这仍然是一个重要的限制。
我们的最佳模型 XLM-RoBERTa( X L M − R XLM-R XLM−R)在低资源语言的跨语言分类任务上比 mBERT 提高了最多 23% 的准确率,并在 XNLI 任务上比此前最优模型提高 5.1% 的平均准确率,在 NER 任务上提高 2.42% 的 F1 分数,在跨语言问答任务上提高 9.1% 的 F1 分数。此外,在 GLUE 和 XNLI 基准测试上, X L M − R XLM-R XLM−R 经过单语言微调后,在单语言任务上表现与最先进的单语言模型(如 RoBERTa)相当。这些结果首次证明了可以通过单一大型模型同时支持所有语言,而不会影响单语言性能。我们将公开代码、模型和数据,以促进多语言自然语言处理(NLP)和低资源语言理解的研究。
2 相关工作
从预训练词嵌入(Mikolov 等,2013b;Pennington 等,2014),到预训练上下文表示(Peters 等,2018;Schuster 等,2019),再到基于 Transformer 的语言模型(Radford 等,2018;Devlin 等,2018),无监督表示学习极大提升了自然语言理解的表现。并行的跨语言理解研究(Mikolov 等,2013a;Schuster 等,2019;Lample 和 Conneau,2019)扩展了这些系统至更多语言,并应用于跨语言场景,其中模型可以在一种语言上训练,并迁移到其他语言上使用。
近期,Devlin 等(2018)和 Lample & Conneau(2019)分别提出了 mBERT 和 XLM,二者都是在多个语言上训练的掩码语言模型,不依赖任何跨语言监督信号。Lample 和 Conneau(2019)提出了翻译语言建模(TLM),利用平行数据提升跨语言自然语言推理(XNLI)任务的表现,并展示了无监督机器翻译和序列生成预训练的显著改进。Wu 等(2019)发现单语言 BERT 表示在不同语言间具有很强的相似性,这在一定程度上解释了多语言表示的自然涌现。Pires 等(2019)则证明了多语言模型(如 mBERT)在序列标注任务上的有效性。Huang 等(2019)通过跨语言多任务学习提升了 XLM 的效果,而 Singh 等(2019)则展示了跨语言数据增强在跨语言 NLI 任务上的有效性。然而,这些研究在训练数据规模上相对有限,与本研究相比仍有较大差距。
研究表明,通过增加模型规模和训练数据规模来扩展语言模型预训练可以显著提升性能。例如,在单语言场景下,Jozefowicz 等(2016)发现,当在数十亿个标记上训练大规模 LSTM 语言模型时,其性能显著提升。GPT(Radford 等,2018)强调了增加数据规模的重要性,而 RoBERTa(Liu 等,2019)表明在更大数据集上训练 BERT 更长时间会带来明显的性能提升。受到 RoBERTa 的启发,我们发现 mBERT 和 XLM 训练不足,并证明了在无监督 MLM 学习过程中,简单改进训练策略即可大幅提高性能。此外,我们使用了经过清理的 CommonCrawl 数据(Wenzek 等,2019),使低资源语言的数据量平均增加了两个数量级。类似数据已被证明可用于训练高质量的多语言词嵌入(Grave 等,2018)。