0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Multilingual多语言预训练语言模型的套路

深度学习自然语言处理 来源:圆圆的算法笔记 作者:圆圆的算法笔记 2022-05-05 15:23 次阅读

Multilingual是NLP中的研究热点之一,其中的一个研究方向是如何构建多语言预训练语言模型,实现不同语言的在隐空间的对齐,一个模型支持多语种的NLP任务,同时利用数据丰富的语言提升数据较少的语言效果。这篇文章就为大家整理了Multilingual多语言预训练语言模型的套路,包括XLM、XLM-R、ERNIE-M、Unicoder、ALM等5个经典模型,以及这些模型之间的演进关系。

1XLM:多语言预训练的起点

随着BERT、GPT预训练语言模型的兴起,这些方法也被自然而然的用在了多语言预训练任务上。通过在BERT、GPT等成熟的NLP模型结构上同时学习多个语言的语料,并设计多语言对齐任务,实现了Multilingual预训练语言模型,应用到下游各种语言的任务中。

Facebook在Crosslingual language model pretraining(NIPS 2019)一文中提出XLM预训练多语言模型,整体思路基于BERT,并提出了针对多语言预训练的3个优化任务。后续很多多语言预训练工作都建立在XLM的基础上,我们来详细看看XLM的整体训练过程。

首先,需要构造一个多语言的vocabulary list。XLM让所有语言共用同一个词表,利用Byte Pair Encoding (BPE)的方法从所有语言中采样文本构造词典。为了提升low-resource语言采样比例,缓解预训练模型偏向high-resource语言,在采样过程中会对各个语言采样比例做一定的矫正。通过多种语言共用一个BPE词表的方法,便于不同语言的token embedding在隐空间对齐,也能提取到不同语言共用的token。

模型预训练主要包括两个任务,分别是MLM和TLM。其中MLM和BERT中采用的方式类似,mask部分token进行预测。TLM是Translation Language Model,这个任务为了引入多语言的对齐关系,将两种语言的文本拼接到一起采用mask token的方式预测。这样在预测过程中,既可以根据本语言的信息预测,也可以根据另一种语言的信息预测。此外,XLM引入了language embedding,用来标明每个位置上的token属于哪个语言。XLM的两个预训练任务如下图所示。

04e82eea-cbbd-11ec-bce3-dac502259ad0.png

2XLM-R:更细致的XLM

Unsupervised cross-lingual representation learning at scale(ACL 2019)在XLM的基础上进一步分析了影响多语言预训练模型效果的因素,提出在100多种语言上预训练得到的XLM-R模型。下面列举了本文中的核心实验结论,揭示了不同的多语言训练方式对效果的影响。

图2显示了随着预训练过程引入语言种类的变化,low resource语言的效果先上升后下降。这是因为在模型capacity一定的情况下,引入多种语言一方面会让low resource语言获得可迁移的知识,另一方面过多的语言也稀释了模型的capacity,每种语言能够使用的capacity减少,导致效果下降。而high resource语言的效果随着引入语言数量的增加是持续下降的。图4显示,增加模型尺寸可以缓解多语言稀释capacity的问题(7种语言和30种语言效果对比),但是引入100种语言后即使增加模型尺寸效果仍然不佳。

图5展示了不同语言采样权重变化的效果影响,low resource和high resource语言之间存在一定的矛盾性,因此随着采样偏向于high resource语言,low resource语言的效果越来越差。图6则展示了词典尺寸大小对效果的影响,词典尺寸增大,对应embedding层尺寸增加,可以比较明显的提升多语言预训练模型效果。

051388ba-cbbd-11ec-bce3-dac502259ad0.png

基于以上这些实验的分析,作者提出了基于RoBerta的XLM-R,在100余种语言、2.5T的数据上预训练,取得了在XNLI数据集上相比基础版XLM模型15%的效果提升。相比于XLM,XLM-R最大的区别之一是没有使用TLM这个预训练任务,所有预训练数据都是单语言的,不包括两个语言对齐的数据。

3ERINE-M:回译的引入

ERNIE-M: Enhanced multilingual representation by aligning cross-lingual semantics with monolingual corpora(EMNLP 2019)基于XLM-R提出了ERNIE-M模型,主要是在MMLM、TLM两个任务以外,新引入了CAMLM(Cross-attention Masked Language Modeling)和BTMLM(Back-translation Masked Language Modeling)两个额外的任务。其中CAMLM任务和TLM任务类似,都是用翻译文本对作为输入,预测被mask的token,区别在于TLM在预测一个mask token时可以同时参考两种语言的所有信息,而CAMLM在预测source句子中被mask的token时,只能使用target句子的信息;在预测target句子中被mask的token时,只能使用source句子的信息。实现上做了一个mask的操作,强制让模型只能用另一种语言的context预测本语言的mask token,提升模型的多语言对齐能力。CAMLM和MMLM、TLM等任务的区别如下图所示。

0537bff0-cbbd-11ec-bce3-dac502259ad0.png

0551fa5a-cbbd-11ec-bce3-dac502259ad0.png

不论是TLM还是CAMLM,都需要使用parallel的句子,如果可用的parallel数据较少,就会影响对齐效果。因此,文中提出了第二个任务BTMLM,利用CAMLM学到的多语言之间的对齐关系,将回译任务融入到预训练中。核心思路是,使用CAMLM预训练好的模型,根据单语言语料生成另一种语言的伪数据,利用这个伪数据作为输入,构造parallel句子作为输入。BTMLM的示意图如下。第一步将单语言输入后面接mask,利用CAMLM预训练多语言模型生成mask部分的token,得到伪样本(即隐空间中当前样本在另一种样本下的翻译)。接下来,将伪样本作为输入,以MLM为目标,同时使用源句子和伪样本预测被mask掉的token。这种方式相当于一种数据增强手段,通过模型自动生成parallel数据,缓解了parallel数据不足的问题。

0580b502-cbbd-11ec-bce3-dac502259ad0.png

4Unicoder:多语言对齐任务的优化

Unicoder: A Universal Language Encoder by Pre-training with Multiple Crosslingual Tasks(ACL 2019)提出了多语言预训练模型Unicoder。在XLM中,模型的训练任务主要是单语言的,Unicoder提出了3种新的多语言对齐任务来提升预训练多语言模型效果。

第一个任务是Cross-lingual Word Recovery,输入是两种语言的语句pair对(X,Y),然后利用attention的方法将X用Y表示,再利用这些表示还原X。这其实类似于一个基于attention的翻译任务,实现了不同语言之间的word alignment。

第二个任务是Cross-lingual Paraphrase Classification,是一个分类任务。输入同样是两个语言的句子对,预测这两个句子是否表达的是同一个含义。数据集的构造方法上,正样本采用机器翻译数据集的数据构造正样本。为了构造hard负样本,即语义在一定程度上相似但不是互为翻译的文本对,作者采用了Effective Parallel Corpus Mining using Bilingual Sentence Embeddings(2018)提出的hard negatives构造方法。先使用随机采样的负样本构造简单负样本训练一个baseline模型,再利用这个模型计算当前样本和所有负样本相似度,取相似度最高且又不是正样本的负样本,作为hard negatives。

第三个任务是Cross-lingual Masked Language Model,将一些文档级别翻译较好的数据集的两种语言进行重组,得到多语言document,在这种多语言document上以Mask Language Model为优化目标训练。三种不同的预训练任务如下图所示。

05ae38ba-cbbd-11ec-bce3-dac502259ad0.png

5ALM:样本构造上的创新

Alternating Language Modeling for Cross-Lingual Pre-Training(AAAI 2020)提出一种新的多语言模型预训练方式。之前的做法如XLM都是将多语言文本对拼接到一起,而本文提出的ALM方法通过将源语言中的部分短语替换成另一种语言,生成了多语言交替的样本作为训练样本,以Transformer为基础在这种样本上进行Mask Language Model的学习。这种方法强制让每次预测被mask掉的单词时,都要参考其他语言的信息,进一步缩小了不同语言在隐空间的距离。

05ed04b4-cbbd-11ec-bce3-dac502259ad0.png

6总结

以上就是多语言预训练中5个经典模型的介绍。除了本文介绍的预训练语言模型外,对比学习、meta-learning等方法在Multilingual中也有很多应用。多语言任务还是非常重要的,尤其当今很多企业都展开国际化战略,拓展海外市场,多语言建模技术更成为不可缺少的能力。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 语言模型
    +关注

    关注

    0

    文章

    546

    浏览量

    10361
  • 数据集
    +关注

    关注

    4

    文章

    1211

    浏览量

    24890
  • nlp
    nlp
    +关注

    关注

    1

    文章

    489

    浏览量

    22131

原文标题:Multilingual预训练的那些套路

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    相关推荐

    ChatGPT 的多语言支持特点

    )技术迎来了巨大的挑战和机遇。ChatGPT,作为一个领先的语言模型,其多语言支持的特点成为了它在众多应用场景中不可或缺的优势。 1. 多语言理解能力 ChatGPT 的
    的头像 发表于 10-25 17:30 963次阅读

    科大讯飞发布讯飞星火4.0 Turbo大模型及星火多语言模型

    ,科大讯飞以其一贯的创新精神,开创性地发布了星火多语言模型。这一创新之举不仅进一步巩固了科大讯飞在中文和英文处理领域的领先地位,更将语言的支持范围大幅扩展,涵盖了俄语、日语、阿拉伯语、韩语、法语、西班牙语、葡萄牙语以及
    的头像 发表于 10-24 13:58 501次阅读

    语言模型训练

    能力,逐渐成为NLP领域的研究热点。大语言模型训练是这一技术发展的关键步骤,它通过在海量无标签数据上进行训练,使
    的头像 发表于 07-11 10:11 594次阅读

    训练模型的基本原理和应用

    训练模型(Pre-trained Model)是深度学习和机器学习领域中的一个重要概念,尤其是在自然语言处理(NLP)和计算机视觉(CV)等领域中得到了广泛应用。
    的头像 发表于 07-03 18:20 3292次阅读

    语言模型:原理与工程时间+小白初识大语言模型

    语言模型进行训练,此处训练为自然语言处理领域的
    发表于 05-12 23:57

    【大语言模型:原理与工程实践】大语言模型的应用

    。 关于大语言模型是否具备与人类“系统2”相似的能力,存在广泛的争议。然而,随着模型参数量的增加和大规模训练的实施,大
    发表于 05-07 17:21

    【大语言模型:原理与工程实践】大语言模型的评测

    至关重要。 在大语言模型应用中,翻译类评测任务主要聚焦于两大核心要求:高质量翻译和多语言适应性。高质量翻译作为跨文化和跨地域信息传播的基础,对全球化背景下的商业活动、科研合作和多元文化交流具有至关重要
    发表于 05-07 17:12

    【大语言模型:原理与工程实践】大语言模型训练

    语言模型的核心特点在于其庞大的参数量,这赋予了模型强大的学习容量,使其无需依赖微调即可适应各种下游任务,而更倾向于培养通用的处理能力。然而,随着学习容量的增加,对
    发表于 05-07 17:10

    【大语言模型:原理与工程实践】大语言模型的基础技术

    全面剖析大语言模型的核心技术与基础知识。首先,概述自然语言的基本表示,这是理解大语言模型技术的前提。接着,详细介绍自然
    发表于 05-05 12:17

    【大语言模型:原理与工程实践】核心技术综述

    的复杂模式和长距离依赖关系。 训练策略: 训练是LLMs训练过程的第一阶段,模型在大量的
    发表于 05-05 10:56

    【大语言模型:原理与工程实践】揭开大语言模型的面纱

    Transformer架构,利用自注意力机制对文本进行编码,通过训练、有监督微调和强化学习等阶段,不断提升性能,展现出强大的语言理解和生成能力。 大语言
    发表于 05-04 23:55

    【大语言模型:原理与工程实践】探索《大语言模型原理与工程实践》

    处理中训练架构Transformer,以及这些技术在现实世界中的如何应用。通过具体案例的分析,作者展示了大语言模型在解决实际问题中的强大能力,同时也指出了当前技术面临的挑战和局限性。
    发表于 04-30 15:35

    这个多语言包 怎么搜不到

    大家好,这个多语言包怎么搜不到 seven language lib 谁有离线包不 感谢分享,
    发表于 03-24 10:06

    语言模型(LLMs)如何处理多语言输入问题

    研究者们提出了一个框架来描述LLMs在处理多语言输入时的内部处理过程,并探讨了模型中是否存在特定于语言的神经元。
    发表于 03-07 14:44 730次阅读
    大<b class='flag-5'>语言</b><b class='flag-5'>模型</b>(LLMs)如何处理<b class='flag-5'>多语言</b>输入问题

    语言模型中的语言与知识:一种神秘的分离现象

    自然语言处理领域存在着一个非常有趣的现象:在多语言模型中,不同的语言之间似乎存在着一种隐含的对齐关系。
    发表于 02-20 14:53 612次阅读
    大<b class='flag-5'>语言</b><b class='flag-5'>模型</b>中的<b class='flag-5'>语言</b>与知识:一种神秘的分离现象