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

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

3天内不再提示

一种基于乱序语言模型的预训练模型-PERT

深度学习自然语言处理 来源:NLP工作站 作者:刘聪NLP 2022-05-10 15:01 次阅读

写在前面

今天分享给大家一篇哈工大讯飞联合实验室的论文,一种基于乱序语言模型的预训练模型-PERT,全名《PERT: PRE-TRAINING BERT WITH PERMUTED LANGUAGE MODEL》。该篇论文的核心是,将MLM语言模型的掩码词预测任务,替换成词序预测任务,也就是在不引入掩码标记[MASK]的情况下自监督地学习文本语义信息,随机将一段文本的部分词序打乱,然后预测被打乱词语的原始位置。

PERT模型的Github以及对应的开源模型其实年前就出来了,只是论文没有放出。今天一瞬间想起来去看一眼,这不,论文在3月14号的时候挂到了axirv上,今天分享给大家。

paper:https://arxiv.org/pdf/2203.06906.pdf
github:https://github.com/ymcui/PERT

介绍

预训练语言模型(PLMs)目前在各种自然语言处理任务中均取得了优异的效果。预训练语言模型主要分为自编码和自回归两种。自编码PLMs的预训练任务通常是掩码语言模型任务,即在预训练阶段,使用[MASK]标记替换原始输入文本中的一些token,并在词汇表中恢复这些被[MASK]的token。

常用预训练语言模型总结:https://zhuanlan.zhihu.com/p/406512290

那么,自编码PLMs只能使用掩码语言模型任务作为预训练任务吗?我们发现一个有趣的现象“在一段文本中随机打乱几个字并不会影响我们对这一段文本的理解”,如下图所示,乍一看,可能没有注意到句子中存在一些乱序词语,并且可以抓住句子的中心意思。该论文探究了是否可以通过打乱句子中的字词来学习上下文的文本表征,并提出了一个新的预训练任务,即乱序语言模型(PerLM)。e8d52ce8-cf96-11ec-bce3-dac502259ad0.png

模型

PERT模型结构如上图所示。PERT模型结构与BERT模型结构相同,仅在模型输入以及预训练目标上略有不同。

PERT模型的细节如下:

  • 采用乱序语言模型作为预训练任务,预测目标为原始字词的位置;
  • 预测空间大小取决于输入序列长度,而不是整个词表的大小(掩码语言模型预测空间为词表);
  • 不采用NSP任务;
  • 通过全词屏蔽和N-gram屏蔽策略来选择乱序的候选标记;
  • 乱序的候选标记的概率为15%,并且真正打乱顺序仅占90%,剩余10%保持不变。

由于乱序语言模型不使用[MASK]标记,减轻了预训练任务与微调任务之间的gap,并由于预测空间大小为输入序列长度,使得计算效率高于掩码语言模型。PERT模型结构与BERT模型一致,因此在下游预训练时,不需要修改原始BERT模型的任何代码与脚本。注意,与预训练阶段不同,在微调阶段使用正常的输入序列,而不是打乱顺序的序列。

中文实验结果与分析

预训练参数

  • 数据:由中文维基百科、百科全书、社区问答、新闻文章等组成,共5.4B字,大约20G。
  • 训练参数:词表大小为21128,最大序列长度为512,batch大小为416(base版模型)和128(large版模型),初始学习率为1e-4,使用 warmup动态调节学习率,总训练步数为2M,采用ADAM优化器。
  • 训练设备:一台TPU,128G。

机器阅读理解MRC任务

在CMRC2018和DRCD两个数据集上对机器阅读理解任务进行评测,结果如下表所示。e8e7ca9c-cf96-11ec-bce3-dac502259ad0.png
PERT模型相比于MacBERT模型有部分的提高,并且始终优于其他模型。

文本分类TC任务

在XNLI、LCQMC、BQ Corpus、ChnSentiCorp、TNEWS和OCNLI 6个数据集上对文本分类任务进行评测,结果如下表所示。e901a50c-cf96-11ec-bce3-dac502259ad0.png

在文本分类任务上,PERT模型表现不佳。推测与MRC任务相比,预训练中的乱序文本给理解短文本带来了困难。

命名实体识别NER任务

在MSRA-NER和People’s Daily两个数据集上对命名实体识别任务进行评测,结果如下表所示。e922c94e-cf96-11ec-bce3-dac502259ad0.png

PERT模型相比于其他模型均取得最优的效果,表明预训练中的乱序文在序列标记任务中的良好能力。

对比机器阅读理解、文本分类和命名实体识别三个任务,可以发现,PERT模型在MRC和NER任务上表现较好,但在TC任务上表现不佳,这意味着TC任务对词语顺序更加敏感,由于TC任务的输入文本相对较短,有些词语顺序的改变会给输入文本带来完全的意义变化。然而,MRC任务的输入文本通常很长,几个单词的排列可能不会改变整个文章的叙述流程;并且对于NER任务,由于命名实体在整个输入文本中只占很小的比例,因此词语顺序改变可能不会影响NER进程。

语法检查任务

在Wikipedia、Formal Doc、Customs和Legal 4个数据集上对文本分类任务进行评测语法检查任务进行评测,结果如下表所示。e938f854-cf96-11ec-bce3-dac502259ad0.png

PERT模型相比于其他模型均取得最优的效果,这是由于下游任务与预训练任务非常相似导致的。

预训练的训练步数对PERT模型的影响

不同的下游任务的最佳效果可能出现在不同的预训练步骤上,如下图所示。e98c68c2-cf96-11ec-bce3-dac502259ad0.png

我们发现对于MRC和NER任务,随着预训练步数的增加,下游任务也会随之提高。然而,对于TC任务,不同数据的指标在不同的步数上取得最优。如果考虑到特定任务的效果,有必要在早期训练中保存部分模型。

不同的打乱粒度对PERT模型的影响

不同粒度间的打乱,可以使使输入文本更具可读性。通过在不同粒度内乱序输入文本来比较性能,如下表所示。e9a25be6-cf96-11ec-bce3-dac502259ad0.png

我们发现,在各种打乱粒度中,无限制乱序的PERT模型在所有任务中都取得了最优的效果;而选择最小粒度(词语之间)的模型,效果最差。可能原因是,虽然使用更小的粒度的乱序可以使输入文本更具可读性,但是对预训练任务的挑战性较小,使模型不能学习到更好地语义信息。

不同预测空间对PERT模型的影响

将PERT模型使用词表空间作为预测目标是否有效?如下表所示。

e9b7dda4-cf96-11ec-bce3-dac502259ad0.png

实验结果表明,PERT模型不需要在词表空间中进行预测,其表现明显差于在输入序列上的预测;并且将两者结合的效果也不尽如人意。

预测部分序列和预测全部序列对PERT模型的影响

ELECTRA模型的实验发现预测完全序列的效果比部分序列的更好,因此ELECTRA模型采用RTD任务对判别器采用完全序列预测。但通过本论文实验发现,预测完全序列在PERT模型中并没有产生更好的效果。表明在预训练任务中使用预测全部序列并不总是有效的,需要根据所设计的预训练任务进行调整。e9db0a7c-cf96-11ec-bce3-dac502259ad0.png

总结

PERT模型的预训练思路还是挺有意思的,并在MRC、NER和WOR任务上均取得了不错的效果。并且由于结构与BERT模型一致,因此在下游任务使用时,仅修改预训练模型加载路径就实现了模型替换,也比较方便。当打比赛或者做业务时候,可以不妨试一试,说不定有奇效。(ps:我在我们自己的MRC数据集上做过实验,效果不错呦!!)


审核编辑 :李倩



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

    关注

    0

    文章

    523

    浏览量

    10273
  • 自然语言处理

    关注

    1

    文章

    618

    浏览量

    13554

原文标题:PERT:一种基于乱序语言模型的预训练模型

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

收藏 人收藏

    评论

    相关推荐

    什么是大模型、大模型是怎么训练出来的及大模型作用

    ,基础模型。   大模型个简称,完整的叫法,应该是“人工智能训练模型”。
    的头像 发表于 11-25 09:29 1307次阅读
    什么是大<b class='flag-5'>模型</b>、大<b class='flag-5'>模型</b>是怎么<b class='flag-5'>训练</b>出来的及大<b class='flag-5'>模型</b>作用

    语言模型训练

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

    llm模型训练般用什么系统

    LLM(Large Language Model,大型语言模型)是近年来在自然语言处理领域取得显著成果的一种深度学习模型。它通常需要大量的计
    的头像 发表于 07-09 10:02 406次阅读

    llm模型有哪些格式

    Representations from Transformers):BERT是一种双向训练模型,通过大量文本数据进行
    的头像 发表于 07-09 09:59 616次阅读

    llm模型和chatGPT的区别

    基于Transformer架构的训练语言模型,它可以生成连贯、自然的文本。ChatGPT使用GPT模型作为基础,通过微调和
    的头像 发表于 07-09 09:55 1054次阅读

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

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

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

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

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

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

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

    数据格式的转换、数据字段的匹配和整合等。通过数据级净化,可以进步提高数据的质量和可用性,为后续的数据分析和建模提供更有价值的数据支持。 在得到了大语言模型的数据之后,就是对其进行
    发表于 05-07 17:10

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

    模型架构奠定基础。然后,引介些经典的训练模型,如BERT、GPT等。最后,解读ChatGPT和LLaMA系列
    发表于 05-05 12:17

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

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

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

    学习能力。这些模型以生成能力强和灵活性强为特点,逐渐演变成一种通用计算平台。其参数多样性、生成能力和涌现性使其不仅在自然语言处理领域表现出色,还能适应多种复杂任务。参数多样性让模型能学
    发表于 05-04 23:55

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

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

    谷歌模型训练软件有哪些功能和作用

    谷歌模型训练软件主要是指ELECTRA,这是一种新的训练方法,源自谷歌AI。ELECTRA不仅拥有BERT的优势,而且在效率上更胜
    的头像 发表于 02-29 17:37 785次阅读

    语言模型推断中的批处理效应

    随着开源训练大型语言模型(Large Language Model, LLM )变得更加强大和开放,越来越多的开发者将大语言
    的头像 发表于 01-04 12:32 632次阅读
    大<b class='flag-5'>语言</b><b class='flag-5'>模型</b>推断中的批处理效应