文献阅读笔记:Unsupervised Cross-lingual Representation Learning at Scale(XLM-R)

0. 背景

机构:Facebook
作者:Alexis Conneau、Kartikay Khandelwal
面向任务:跨语言理解
论文地址:https://arxiv.org/abs/1911.02116
论文代码:https://github.com/pytorch/fairseq
官方介绍:https://ai.facebook.com/blog/-xlm-r-state-of-the-art-cross-lingual-understanding-through-self-supervision/

0.1 摘要

本文的XLM-R(XLM-RoBERTa)证明了使用大规模多语言预训练的模型可以显著提高跨语言迁移任务的性能。XLM-R使用100种语言、2.5 TB文本数据(CommonCrawl项目爬取的)进行训练。

战绩如下:
XLM-R在四个跨语言理解基准测试中取得了迄今为止最好的结果。这4个任务包括了跨语言的分类、序列标注和问答
(1)在XNLI跨语言自然语言推理数据集上的平均准确率,高于多语言BERT(mBERT)13.8%,分别高出此前先进结果 Unicoder (Huang et al., 2019) 和 XLM (MLM+TLM) 4.7% 和 5%。
(2)在最近推出的MLQA问题回答数据集上,XLM-R在在平均F1得分和准确率上分别比mBERT高出12.3%和10.6%。XLM-R比此前最先进模型在F1上高出了8.4%。
(3)在NER数据集的平均F1得分上,XLM-R比此前最先进模型高出了2.1%。
(4)XLM-R模型在低资源数据上的表现如下:
1)在XNLI的Swahili 上,XLM-R在准确率上比mBERT高出11.8%
2)在XNLI的Urdu 上,XLM-R在准确率上比mBERT高出9.2%

此外,本文还对提升模型性能的关键因素进行了详细的实证评估。主要包括:
(1)正向迁移和能力稀释(capacity dilution)之间的权衡
(2)高资源语言和低资源语言在语料尺度上的权衡

最后,本文模型首次实现了在不牺牲每种语言性能的情况下进行多语言建模的可能性。

1. 介绍

跨语言理解领域的早期工作已经证明了多语言掩码语言模型(multilingual masked language models) 在跨语言理解方面的有效性,但是诸如XLM和multilingual BERT这样的模型(都在Wikipedia上预训练)在学习低资源语言的有用表示方面仍然能力有限。
本文首先在规模上对多语言模型的利弊和局限性进行了全面的分析。在实验中我们衡量了高资源和低资源语言之间的权衡以及语言抽样和词汇量的影响。实验结果表明在固定模型参数下对语言数量的权衡:在一定程度上,更多的语言可以提高低资源语言的跨语言性能,超过这个临近点后,在单语和跨语言基准测试上的整体性能将下降。我们将这种现象称为"多语言诅咒"(curse of multilinguality)。通过简单地增大模型,可以有效地缓解多语言诅咒。然而,我们认为,这仍然是未来跨语言理解(XLU)系统的一个重要限制。

相比于 XLM 和 mBERT,XLM-R有以下几个方面改进:
(1)在XLM和RoBERTa中使用的跨语言方法的基础上,我们在新模型中增加了语种数量训练数据集的数量,具体来说使用超过2TB的已经预处理过的CommonCrawl数据集,以自监督的方式训练跨语言表征。这包括为低资源语言生成新的未标记语料库,并将用于这些语言的训练数据量扩大2个数量级。

(2)在fine-tuning期间,基于多语言模型的能力来使用多语言的标记数据,以改进下游任务的性能。这使我们的模型能够在跨语言基准测试中获得state-of-the-art的结果,同时超过了单语言BERT模型在每种语言上的性能。

(3)调整了模型的参数,以抵消以下不利因素:使用跨语言迁移来将模型扩展到更多的语言时限制了模型理解每种语言的能力。我们的参数更改包括在训练和词汇构建过程中对低资源语言进行上采样,生成更大的共享词汇表,以及将整体模型增加到5.5亿参数量。

2. 相关工作

3. 模型和数据

Masked Language Models:
主体模型还是Transformer,训练目标是多语种的MLM objective,基本和XLM一样,欢迎查阅此前对于XLM的解读。我们从每个语种中采样出文本,再预测出被masked掉的tokens。我们用带有 unigram 语言模型的model Sentence Piece 对原始文本数据进行 Sentence Piece 。从各语种中采样出batches的方法与XLM中相同,只是本文这里的 α = 0.3 \alpha=0.3 α=0.3。另一个与XLM不同的是,本文不使用语言嵌入。本文的词典大小是250k,训练了两个模型: X L M − R B a s e XLM-R_{Base} XLMRBase (L= 12, H = 768, A = 12, 270M params ) 和 X L M − R XLM-R XLMR(L = 24, H = 1024, A = 16, 550M params)。更详细的模型细节可以参考原始论文的附件B。

Scaling to a hundred languages
XLM-R的预训练是基于100种语言,Figure 1 展示了XLM-R和XLM-100共享的88种语言:

在这里插入图片描述

从Figure 1 也可以看出训练数据集的规模也大幅度扩增。

4. 评测

评测过程使用以下4个benchmarks:
(1)Cross-lingual Natural Language Inference(XNLI)
(2)Named Entity Recognition
(3)Cross-lingual Question Answering
(4)GLUE Benchmark

5. 结果与分析

5.1 多语言Masked Language Models

过往的跨语言模型如mBERT和XLM都是集中分析固定预训练模型在下游任务中的性能。本文这里分析大规模多语种预训练模型的重要因素。当我们扩展到100种语言时,我们强调了这些模型的优缺点。

Transfer-dilution的权衡和多语言诅咒:
对于一个固定大小的模型,即模型参数量固定,随着参与训练的语种数量的增加,模型在每个语种上的性能表现会下降。虽然低资源语言的性能可以通过在预训练中添加类似的高资源语言来提高,但是总体下游性能受到这种能力稀释(capacity dilution)的影响。正向迁移和能力稀释之间需要做一个权衡。

Figure 2 中展示了语种数量和模型能力稀释之间的实验结果。
在这里插入图片描述

当语种数量在7~15种时,模型确实能够从多个语种中收益,即迁移能力是正向的。这种收益对于低资源语种更为显著。超过这一点,多语言的诅咒就开始了,并降低了所有语言的性能。特别地,对比从XLM-7到XLM-100的模型,XNLI整体准确性从71.8%下降到67.7%。这种趋势在更大的 CommonCrawl 语料上也是一样的。

上述的情况在模型小的时候会愈加突出。在Wikipedia Data上依次训练 7, 30 和 100 个语种。随着语种数量的增加,我们将Transformer分别扩大到从768、960、1152。Figure 4 可以看出扩大模型使得XLM-30 差不多与XLM-7不相伯仲,如此看来通过扩大模型似乎是可以解决多模型诅咒问题的。但是我们再来看XLM-100,即使扩大模型也难以拯救其颓势。其能力稀释更可能源于词典的稀释,在Wikipedia中我们使用的固定词典大小是150k。

High-resource/Low-resource 权衡:
跨语言模型由几个参数控制:
(1)训练集大小
(2)共享的subword 字典大小
(3)对每个语种的训练集采样率
我们这里探讨高资源语种(English 和 French)、 低资源语种(Swahili 和 Swahili)的采样率对于XLM-100(在Wikipedia上预训练)的影响。(PS:我们在构建 subword 字典上也观测到类似的趋势。)
采样率的影响结果见于 Figure 5:

在这里插入图片描述

我们可以看出,对于高资源的语种,采样率越高,结果性能越高,而低资源语种则是采样率越低,结果性能越好。为了兼顾整体性能,最终选择采样率值为0.3。即对于XLM-R,选用的采样率也是0.3。

模型大小和词典大小的重要性:
XLM-100(在Wikipedia上预训练)使用不同的共享词典,从Figure 6 可以看出,共享词典越大确实可以提升性能。固定模型大小下,当词典从32k变大到256k时,XNLI的平均准确率上升了2.8%。这表明多语言模型,可以从分配较高比例参数的嵌入层中获益(词典变大,在模型大小固定的前提下,则嵌入层也变大,获得更多的参数),即使这会缩小Transformer的大小。为了简单起见和算力上的考虑,本文这里对于XLM-R统一采用250k大小的字典。

用大规模数据集进行训练的重要性:
Figure 3 展示了同一个 B E R T b a s e BERT_{base} BERTbase模型在CC语料上的训练结果能够全面超过基于Wikipedia的。更大规模的训练也是可以提升性能,在Figure 7 可以看出增大batch size带来的性能提升。从Figure 7中也可以看出Sentence Piece model(SMP)并没有明显逊色于BPE,为简单起见,本文选用SMP进行multilingual tokenization。

5.2 跨语言理解的实验结果

XNLI:
Table 1 展示了在 XNLI 上进行跨语言分类的实验结果:
在这里插入图片描述

NER:
XLM-R 和 mBERT 在CoNLL-2002和CoNLL-2003数据集上的实验结果如 Table 2 所示:
在这里插入图片描述

问答:
MLQA跨语言问答benchmark的实验结果如 Table 3 所示:
在这里插入图片描述

5.3 多语言 Vs 单语种

GLUE:XLM-R versus RoBERTa

Table 4 展示了 XLM-R、BERT 和 RoBERTa 在GLUE上的实验结果:
在这里插入图片描述

可以看出,XLM-R超出 B E R T l a r g e BERT_{large} BERTlarge 1.3%,达到接近 X L N e t l a r g e XLNet_{large} XLNetlarge的性能。此时的XLM-R仅逊色于RoBERTa 1.3%。在未来有希望通过缓解多语言诅咒和模型能力稀释从而进一步缩减二者差距。这些结果证明使用从多个语种中学习到的单一模型依旧可以对每个语种的下游任务保持较强的性能结果。

XNLI: XLM versus BERT

多语言模型常常招致的一个批评是其性能低于同行的单语种模型。本文这里的实验结果确实令人刮目,竟然可以超越单语种BERT。具体对比结果参见 Table 5:
在这里插入图片描述

如果单从跨语种迁移上来看的话,单语种的BERT确实超过XLM-7,具体体现在Wikipedia 和 CC数据集的平均准确率上分别超出1.6% 和 1.3%。但是如果充分利用多语种训练(translate-train-all)和多语种训练集,XLM-7是可以反超BERT。在CC数据集上,XLM-7在7种语言上的平均准确率是80%,而BERT在CC数据集上训练后只能取得77.5%的准确率。这说明,多语种模型的潜力在多语种数据集上得到开发,且在一定程度上可以克服模型能力稀释问题,从而获得更好的整体性能。

5.4 在低资源语种上的表现

继续看 Table 5, 可以看出在低资源语种Swahili 和 Urdu 上基于Wikipedia数据集的BERT表现与模型随机初始化差不多,而使用CC数据集预训练后可以直接提升大概10个点。这证实了我们的假设,即mBERT和XLM-100严重依赖于跨语言迁移能力,但不像XLM-R那样对低资源语言进行建模。具体地说,在XLM模型的translate-train-all设置中,对于Swahili和Urdu语种,使用CC数据集相比于使用Wikipedia数据集性能最大提升分别为7%和4.8%

6. 总结

提出XLM-R,在2.5TB、100个语种数据集上预训练,并在多个跨语言benchmark上刷新了记录。XLM-R在跨语言分类、序列标注和问答任务上以较大优势超过mBERT和XLM,可喜!同时探讨了高资源和低资源语种之间的平衡,多语言诅咒问题,模型核心超参数的重要影响。PS:老实说,并没有令人虎躯一震的技术惊喜,就是超级大的数据量堆砌出来的,有钱真好,说错了,有富丽堂皇的资源真好!

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值