NLP之PLUG:阿里达摩院发布最大中文预训练语言模型PLUG的简介、架构组成、模型训练、使用方法之详细攻略

本文涉及的产品
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_基础版,每接口每天50万次
NLP自然语言处理_高级版,每接口累计50万次
简介: NLP之PLUG:阿里达摩院发布最大中文预训练语言模型PLUG的简介、架构组成、模型训练、使用方法之详细攻略


目录

PLUG的简介

PLUG的得分

PLUG的特点

PLUG的架构组成

PLUG的模型训练

PLUG的使用方法

1、demo测试


PLUG的简介

       2021年4月19日,阿里达摩院发布了 270 亿参数、1TB + 训练数据、全球最大中文预训练语言模型 PLUG,并以 80.614 的分数刷新了中文语言理解评测基准 CLUE 分类榜单历史纪录。阿里达摩院发布的中文社区最大规模预训练语言模型 PLUG(Pre-training for Language Understanding and Generation)。该模型集语言理解与生成能力于一身,在小说创作、诗歌生成、智能问答等长文本生成领域表现突出。可用在小说续写、专业文稿撰写、生活常识解答、零样本学习、诗词生成、菜谱生成、自由创作等。

  • 超大模型规模:在多项大规模分布式训练优化技术加持下,我们模型的参数规模达到270亿,是目前最大规模的中文纯文本预训练模型
  • 海量中文数据:超大规模模型采用了1T以上高质量中文文本训练数据,涵盖新闻、小说、诗歌、问答等广泛类型及领域
  • 零样本生成:模型在不需要任何下游任务标注数据的情况下,就可以实现多种生成任务

PLUG的得分

        PLUG对比 GPT-3,主要的改进是,PLUG 设计了一个简洁的模型框架,集成了达摩院自研的语言理解及语言生成双模型,通过构建输入文本双向理解能力,显著提升了输出文本的相关性。

  • 在语言理解任务上,PLUG 以 80.614 的分数刷新了 CLUE 分类榜单记录,刷新了 Chinese GLUE 分类榜单的新记录排名第一;
  • 在语言生成(NLG)任务上,PLUG 多项应用数据较业内最优水平提升了 8% 以上。

PLUG的特点

        对比GPT-3 等其他大规模生成模型,PLUG 具备以下独特优势

  • PLUG 是目前中文社区最大规模纯文本预训练语言模型;
  • PLUG 集语言理解与生成能力于一身
  • PLUG 可为目标任务做针对性优化,通过利用下游训练数据微调模型使其在特定任务上生成质量达到最优,弥补之前其它大规模生成模型 few-shot inference 的生成效果不足,可应用于实际生成任务上;
  • PLUG 采用了大规模的高质量中文训练数据(1TB 以上),同时,PLUG 采用 encoder-decoder 的双向建模方式,因此,在传统的 zero-shot 生成的表现上,无论是生成的多样性、领域的广泛程度,还是生成长文本的表现,较此前的模型均有明显的优势。

PLUG的架构组成

        达摩院机器智能实验室自研的 NLU 语言模型 StructBERT(多模态语言模型 ) 与 NLG 语言模型 PALM(生成式语言模型)均在各自领域取得了 SOTA 的效果。

  • StructBERT 模型通过加强句子级别(Sentence Structural Objective)和词级别(Word Structural Objective)两个层次的训练目标对语言结构信息的建模,加强模型对语法的学习能力;
  • PALM 模型则结合了 Autoencoding 和 Autoregression 两种预训练方式,引入 Masked LM 目标来提升 encoder 的表征能力,同时通过预测文本后半部分来提升 decoder 的生成能力。

        此次大规模语言模型PLUG的训练,达摩院团队汲取二者所长,提出了一个简单的框架,用来进行 NLU&NLG 联合训练。相比于 GPT 系列模型,该大规模生成模型以 StructBERT 作为 encoder,具有很强的输入文本双向理解能力,从而可以生成和输入更相关的内容。

PLUG的模型训练

        PLUG 采用了 1TB 以上高质量中文文本训练数据,涵盖新闻、小说、诗歌、问答等广泛类型及领域,其模型训练依托了阿里云 EFLOPS 高性能 AI 计算集群。接下来,PLUG 将扩大参数规模至 2000 亿级,并进一步提升文本生成质量。整个训练流程分为两个阶段:

  • 第一阶段,达摩院团队训练了一个 24 layers/8192 hidden size 的标准 StructBERT 模型作为 encoder。这个过程共计训练了 300B tokens 的训练数据,规模与 GPT-3 的训练规模相当;
  • 第二阶段,达摩院团队将这个 encoder 用于生成模型的初始化,并外挂了一个 6 layers / 8192 hidden size 的 decoder,在训练生成模型的过程中,在 encoder 端和 decoder 端均随机确定长度 [32, 512] 进行数据采样,确保适应下游广泛的生成任务。这一阶段共计训练了 100B tokens 的训练数据,前 90% 的训练中,团队保留了 Masked LM 任务以保持模型的 NLU 能力,后 10% 的训练中,去掉 MLM 任务进行微调,以使得生成的 PPL 降到更低,能取得更好的生成效果。

PLUG的使用方法

1、demo测试

测试地址https://nlp.aliyun.com/portal#/plug

       我们训练了业内规模最大的中文理解和生成模型PLUG,参数达270亿,在中文的多个下游理解和生成任务上,该模型效果达到state-of-the-art水平。本页面的所有生成展示,均是基于PLUG预训练模型的零样本生成,没有经过任何下游任务数据训练。

      从技术上来看,阿里达摩院的 PLUG 与 GPT-3 类似,有望广泛应用于文本生成领域,成为「万能写作神器」。PLUG 生成模型有着很强的长文本生成和建模能力,相比于 GPT 系列模型的单向建模,PLUG 对输入的理解是双向建模的,因此能够在给定小段输入的条件下,生成和输入内容相关且信息量丰富的长文本。


相关文章
|
3月前
|
Kubernetes 调度 算法框架/工具
NVIDIA Triton系列02-功能与架构简介
本文介绍了NVIDIA Triton推理服务器的功能与架构,强调其不仅适用于大型服务类应用,还能广泛应用于各类推理场景。Triton支持多种模型格式、查询类型和部署方式,具备高效的模型管理和优化能力,确保高性能和系统稳定性。文章详细解析了Triton的主从架构,包括模型仓库、客户端应用、通信协议和推理服务器的核心功能模块。
117 1
NVIDIA Triton系列02-功能与架构简介
|
3月前
|
存储 分布式计算 Hadoop
Hadoop-33 HBase 初识简介 项目简介 整体架构 HMaster HRegionServer Region
Hadoop-33 HBase 初识简介 项目简介 整体架构 HMaster HRegionServer Region
75 2
|
3月前
|
存储 SQL 消息中间件
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
64 0
|
3月前
|
人工智能 自然语言处理
【NLP自然语言处理】NLP中的常用预训练AI模型
【NLP自然语言处理】NLP中的常用预训练AI模型
|
5月前
|
自然语言处理
【NLP】如何实现快速加载gensim word2vec的预训练的词向量模型
本文探讨了如何提高使用gensim库加载word2vec预训练词向量模型的效率,提出了三种解决方案:保存模型以便快速重新加载、仅保存和加载所需词向量、以及使用Embedding工具库代替word2vec原训练权重。
323 2
|
5月前
|
机器学习/深度学习 存储 自然语言处理
【NLP-新闻文本分类】3 Bert模型的对抗训练
详细介绍了使用BERT模型进行新闻文本分类的过程,包括数据集预处理、使用预处理数据训练BERT语料库、加载语料库和词典后用原始数据训练BERT模型,以及模型测试。
95 1
|
5月前
|
机器学习/深度学习 自然语言处理
自然语言处理 Paddle NLP - 预训练语言模型及应用
自然语言处理 Paddle NLP - 预训练语言模型及应用
47 0
|
5月前
|
机器学习/深度学习 数据采集 自然语言处理
【NLP】讯飞英文学术论文分类挑战赛Top10开源多方案–4 机器学习LGB 方案
在讯飞英文学术论文分类挑战赛中使用LightGBM模型进行文本分类的方案,包括数据预处理、特征提取、模型训练及多折交叉验证等步骤,并提供了相关的代码实现。
67 0
|
6月前
|
自然语言处理 PyTorch API
`transformers`库是Hugging Face提供的一个开源库,它包含了大量的预训练模型和方便的API,用于自然语言处理(NLP)任务。在文本生成任务中,`transformers`库提供了许多预训练的生成模型,如GPT系列、T5、BART等。这些模型可以通过`pipeline()`函数方便地加载和使用,而`generate()`函数则是用于生成文本的核心函数。
`transformers`库是Hugging Face提供的一个开源库,它包含了大量的预训练模型和方便的API,用于自然语言处理(NLP)任务。在文本生成任务中,`transformers`库提供了许多预训练的生成模型,如GPT系列、T5、BART等。这些模型可以通过`pipeline()`函数方便地加载和使用,而`generate()`函数则是用于生成文本的核心函数。
|
6月前
|
机器学习/深度学习 自然语言处理 PyTorch
【机器学习】自然语言处理(NLP)领域革命性突破的模型——Transformer
【机器学习】自然语言处理(NLP)领域革命性突破的模型——Transformer