热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

中文版GPT3来了?智源、清华发布清源CPM——以中文为核心的大规模预训练模型

2020-11-1823:43:21清源CPM(ChinesePretrainedModels)是北京智源人工智能研究院和清华大学研究团队合作开展的大规模预训练模型开源计划

2020-11-18 23:43:21

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

清源 CPM(Chinese Pretrained Models)是北京智源人工智能研究院和清华大学研究团队合作开展的大规模预训练模型开源计划,清源计划是以中文为核心的大规模预训练模型。首期开源内容包括预训练中文语言模型和预训练知识表示模型,可广泛应用于中文自然语言理解、生成任务以及知识计算应用,所有模型免费向学术界和产业界开放下载,供研究使用。

1 背景介绍

语言模型是指对自然语言文本进行概率建模的模型,它不仅可以估计任意一个给定文本序列的概率,也可以用来预测文本序列中某个位置上词的出现概率,是自然语言处理中最基本的问题。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

2018年以来,预训练语言模型 (Pretrained Langauge Model, PLM) 的研究风起云涌。与此前有监督学习范式不同的是,预训练语言模型能够充分利用大规模的无标注数据学习通用的语言模型,然后再使用下游任务的少量有标注数据进行模型微调。与直接训练具体任务模型相比,在预训练语言模型基础上微调得到的模型在自然语言处理各大任务上均取得了显著的性能提升。

 

在 GPU 多机多卡并行算力和海量无标注文本数据的双重支持下,预训练模型实现了参数规模与性能齐飞的局面,取得了人工智能和深度学习领域的革命性突破。国际著名互联网企业和研究机构互相竞争,将模型规模和性能不断推向新的高度。BERT之后,短短两年时间,最新发布的 GPT-3 已经达到1750亿参数规模、上万块 GPU 的惊人训练规模。在人工智能与深度学习领域围绕超大规模预训练模型展开的“军备竞赛”日益白热化,成为对海量数据、并行计算、模型学习能力的全方位考验。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

预训练模型规模以平均每年10倍的速度增长 (最后一列计算时间为使用单块NVIDIA V100 GPU训练的估计时间。M-百万,B-十亿)

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

预训练模型研究发展图

在这一态势下,亟需建立以中文为核心的超大规模预训练模型。为此,北京智源人工智能研究院和清华大学研究团队合作开展大规模预训练模型,并发布清源 CPM (Chinese Pretrained Models) 研究计划,旨在推动中文自然语言处理的研究与应用。清源 CPM 计划将依托智源研究院新建的人工智能算力平台,建立以中文为核心的超大规模预训练模型,进行基于超大规模预训练语言模型的少次学习能力以及多任务迁移能力研究,探索更具通用能力的语言深度理解技术。2020 年 11 月中旬,CPM 开放第一阶段的26 亿参数规模的中文语言模型 (CPM-LM) 和217亿参数规模的结构化知识表示模型 (CPM-KM) 下载,以及相应的系统演示。

关于预训练模型的大量实验表明,更大的模型参数和更多的预训练数据,通常能够带来更好的下游任务效果,这类模型被证明在各种少样本学习 NLP 任务中十分有效。传统预训练模型往往需要经过有监督训练数据微调 (Fine-tuning),才能解决各种自然语言处理任务。而第一版 CPM 中文语言模型与 GPT-3 等预训练模型类似,仅需要通过少次、单次学习甚至零次学习,就能完成不同自然语言处理任务,具备一定的常识和认知的泛化能力。CPM 模型从大规模的中文语料库中学习了通用的语言模式,有望显著提升中文自然语言处理各任务的性能。初步的实验表明,CPM 模型能够用于问题解答、摘要和对话以及生成各种文本包括随笔、小说、代码、电子表格等。

 


2模型特点

与已有的中文预训练模型相比,本次发布的清源 CPM 大规模预训练模型具有以下特点:

1. 学习能力强:能够在多种自然语言处理任务上,进行零次学习或少次学习达到较好的效果。

2. 语料丰富多样:收集大量丰富多样的中文语料,包括百科、小说、对话、问答、新闻等类型。

3. 行文自然流畅:基于给定上文,模型可以续写出一致性高、可读性强的文本,达到现有中文生成模型的领先效果。

4. 模型规模大:本次发布的 CPM-LM 的参数规模为 26 亿,预训练中文数据规模100 GB,使用了 64 块 V100 GPU 训练时间约为 3 周。CPM-KG 的参数规模分别为217亿,预训练结构化知识图谱为 WikiData 全量数据,包含近 1300 个关系、8500万实体、4.8 亿个事实三元组,使用了 8 块 V100 GPU 训练时间约为 2 周。

 


3模型训练方法

目前预训练模型的模型参数与数据规模均在不断增长,给训练任务带来极大的挑战。具体而言,数据规模的增大导致训练时间成倍数增长,模型参数规模的增大导致单卡无法容纳整个模型的参数。面对这些挑战,则需要设计高效的大规模训练框架,能够支持庞大的训练规模并有效降低训练时间。

本次发布的大规模预训练模型,单块 GPU 上的存储与计算单元难以承受其训练过程。因此,需要将模型在多个 GPU 之间分配参数,进行并行化训练。CPM 模型预训练过程分布在多块 GPU 上,采用层内并行的方法进行训练,并基于当前已有的成熟技术,减少同步提高通讯速率。

在硬件设施方面,为训练该 CPM 模型,共有 64 块 V100 显卡投入使用。经过预训练的 CPM 模型可以用来促进诸多下游中文任务,例如对话,论文生成,完形填空和语言理解等等。

当前主流的并行策略主要分为数据并行、模型并行和流水并行,具体来说:

● 数据并行是将每一批次的数据切分成几部分,分别发送到模型的多个镜像中进行训练。这些模型的参数保持一致,且在计算梯度时进行同步,保证梯度更新之后参数的一致性。数据并行主要解决了训练数据过大,单个设备无法存放的问题。

● 模型并行主要是为解决模型参数规模过大无法被单卡存放的问题。模型并行会将模型中的参数矩阵切分成几块,分别存放在不同的设备上,同时将训练中的超大规模矩阵计算分布到多块卡上。通过对模型中矩阵操作的分块,一方面可以降低单个设备上的模型存储负担;另一方面,并行执行也能极大优化计算时间,减少每张卡的计算量。

● 流水并行则是针对训练批次进行优化,将训练数据在不同层间的计算流水化,以提高计算集群的利用效率。在实际的训练中,以上三种并行模型常常会一起使用。与模型并行相比,流水并行能够降低并行执行过程中产生的设备之间的通信量,降低通信时间。

在利用上述三种成熟优化的基础上,CPM计划对模型并行中的通信进行进一步优化,削减通信时间,提升运行效率。这部分优化将在下一阶段工作中体现。

 


4模型实验结果

清源 CPM 使用新闻、百科、对话、网页、故事等不同类型中文语料数据进行预训练。在多个公开的中文数据集上的实验表明,清源 CPM 在少样本或无样本的情况下都能够达到较好的效果。

4.1. 中文成语填空 ChID

ChID 是 2019 年清华大学对话交互式人工智能实验室(CoAI)收集的中文成语填空数据集,其目标是对于给定的段落,在 10 个候选项中选择最符合段意的成语进行填空。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

其中有监督设定是指在 ChID 的训练集上进行训练,随后在测试集上测试;无监督设定是指不经过任何额外训练,直接使用预训练模型进行测试。具体做法是,将候选项依次填入段落中,计算填充后段落的困惑度 (Perplexity),选择困惑度最小的候选项作为预测结果。表中汇报了预测的准确率,可以看到,CPM(大) 在无监督的设定下甚至达到了比有监督的 CPM (小) 更好的结果,反应了清源 CPM 强大的中文语言建模能力。

4.2. 对话生成 STC

STC 是2015年华为诺亚方舟实验室提出的短文本对话数据集,要求在给定上文多轮对话的条件下预测接下来的回复。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

其中 CDial-GPT 是清华大学对话交互式人工智能(CoAI)实验室 2020 年提出的中文对话预训练模型。用于衡量多样性的 Dist-n 指标的两个数字分别是所有不重复的 N-Gram 的数量及占所有 N-Gram 的比例。可以看到,在无监督的设定下,清源 CPM 具有更好的泛化性,在有监督设定下,清源 CPM 能达到比 CDial-GPT 更优的效果,尤其在多样性指标上表现更佳。以下为生成的对话样例。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

4.3. 文本分类

清源 CPM 使用头条新闻标题分类 (TNEWS,采样为4分类),IFLYTEK应用介绍分类 (IFLYTEK,采样为4分类),中文自然语言推断 (OCNLI,3分类) 任务作为文本分类任务的基准。具体做法是,先输入分类样本,再输入“该文章的类别为/该介绍的类别为/两句话的关系为”,要求模型直接生成标签,四个标签中概率最高的标签作为预测结果。在无监督设定下,不同规模的清源 CPM 在文本分类任务上的精确度如下表所示。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

清源 CPM 能够在无监督的设定下达到比随机预测 (TNEWS/IFLYTEK/OCNLI 随机预测精确度分别为0.25/0.25/0.33) 好得多的精确度。

4.4. 自动问答

CPM 使用 DuReader 和CMRC2018 作为自动问答任务的基准,要求模型从给定的段落中抽取一个片段作为对题目问题的答案。其中DuReader 由百度搜索和百度知道两部分数据组成。在无监督的设定下,不同规模的 CPM 模型的表现如下表所示。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

其中单样本是指在测试时,从数据集中随机抽取一个正确的 “(段落,问题,答案)” 三原组,插入到用于评价的样例前,作为 CPM 模型生成答案的提示。零样本是指直接使用 CPM 模型预测给定段落和问题的答案。在单样本设定下,CPM 能从给定的样本中学习到生成答案的模式,因此效果总是比零样本设定更好。由于模型的输入长度有限,多样本输入的场景将在未来进行探索。

4.5. 实体生成

CPM 采用 XLORE 中的几种常见的关系三元组作为实体生成任务的基准。在少样本设定 (把少量真实样本拼在待预测样本前作为提示) 下,不同规模的 CPM 模型的 BLEU-1 值如下表所示。我们针对同一种关系类别 (表格中的类别) ,给定 N 个三元组 (实体,关系,实体),再拼接待预测样本,让模型预测对应的尾实体。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

表格汇报了 XLORE 中十种常见关系模型预测结果的 BLEU-1 值,可以看出参数量越大时,模型对于预测实体效果越好。同时,模型在给定 2 个样本时就可以达到不错的效果,大部分时候 N=2 和 N=4 的效果是接近的。

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

 


5样例展示

这里提供一些模型生成文本的样例,更直观地展示清源 CPM 第一阶段预训练中文语言模型和知识表示模型的效果。

在“故事生成”演示中,用户可以任意填写一段初始文本,让模型去预测后续内容。这些初始文本可以是任意文体:例如小说、说明文、议论文、天气预报、体育报道、新闻报道,甚至是对话、知识问答以及数字推理,清源 CPM 都能仿照前文的风格和规律行文如流。在此举几个例子验证此单一预训语言练模型的多功能性:

CPM 预训练语言模型只需要对一个常识性问题的学习,就能依照规律提问和正确回答:

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

能够根据前文真实的天气预报,像模像样地继续报道天气预报(不保证正确性):

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

还能做一定的数理推理,模型的自动推理特性完全可以应用在电子表格软件中:

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

甚至可以续写红楼梦片段:

中文版GPT-3来了?智源、清华发布清源 CPM——以中文为核心的大规模预训练模型

 


6团队介绍与研究计划

清源 CPM 计划由北京智源人工智能研究院 (简称“智源研究院”) 和清华大学研究团队合作开展。智源研究院是在科技部和北京市委市政府的指导和支持下,由北京市科委和海淀区政府于2018年11月推动成立的新型研发机构。智源研究院通过设立“智源学者计划”,在多个重大研究方向重点支持人工智能科学家挑战人工智能最基础的问题和最关键的难题。

“自然语言处理”是智源研究院重点支持的重大研究方向之一。近年来,该研究方向的智源学者在预训练模型方面积累了丰富的研究成果,如清华大学孙茂松、刘知远团队和李涓子、唐杰团队提出了知识指导的预训练模型 ERNIE 和 KEPLER,循环智能杨植麟团队提出了性能显著优于 BERT 的 XLNet 模型,清华大学朱小燕和黄民烈团队提出了面向情感分析的预训练模型 SentiLARE,融合常识知识的预训练语言生成模型 StoryGPT,面向中文对话生成的 CDial-GPT模型,等等。

正是意识到预训练模型对中文自然语言处理研究和应用的重要意义,智源研究院和清华大学研究团队在已有研究的基础上,决定联合开展以中文为核心的预训练模型研究和开源共享,研究团队包括清华大学自然语言处理与社会人文计算实验室 (THUNLP)、对话交互式人工智能课题组 (CoAI)、清华大学并行与分布式计算机系统实验室 (PACMAN)、清华大学知识工程研究室 (THUKG)。研究团队将在智源研究院大规模算力平台的支持下,开展以中文为核心的超大规模预训练模型研究,包括跨语言学习、文本生成、知识融合、模型并行和压缩等前沿课题,并将相关模型及时通过智源社区开源共享。

清源 CPM 未来一年的研究和开源计划为:

● 阶段1 (2020年10月-12月):中文大规模预训练语言模型,含约 30 亿参数,训练数据包括 100GB 中文数据。

● 阶段2 (2021年01月-06月):以中文为核心多语言大规模预训练语言模型,含约 200 亿参数,训练数据包括 500GB 以中文为核心的多语言数据。

● 阶段3 (2021年07月-09月):知识指导的大规模预训练语言模型,含约 1000 亿参数,训练数据包括 1TB 以中文为核心的多语言数据和亿级实体关系图谱。

清源 CPM 计划将积极配备算力、数据和人力,注重开展原创研究,尽早实现与国际顶尖机构在超大规模预训练模型技术方面并跑,提升中文自然语言的深度理解和生成能力。在此基础上,清源 CPM 计划探索超大规模预训练模型学习机制与人脑学习机制之间的联系与区别,支持认知神经科学、心理学和语言学等跨学科交叉研究,从数据驱动深度学习无法回避的可解释性差、鲁棒性差、容易受到攻击的瓶颈入手,以离散符号表示的知识指导与数据驱动的神经网络有机融合、人脑认知机制启发等原始创新为突破口,建立下一代人工智能的技术体系。

与此同时,基于清源 CPM 模型的文本深度理解和智能生成能力,智源研究院也将积极与产业界合作,在智能客服、个性推荐、文本生成、自动编程等方面,探索新型的人工智能应用和商业模式。

相关资源:

清源CPM 主页:https://cpm.baai.ac.cn/

清源CPM Github 托管代码主页:https://github.com/TsinghuaAI/

预训练模型必读论文列表:https://github.com/thunlp/PLMpapers

相关论文:

[1] ERNIE: Enhanced Language Representation with Informative Entities. ACL 2019.

[2] KEPLER: A Unified Model for Knowledge Embedding and Pre-trained Language Representation. TACL 2020.

[3] A Knowledge-Enhanced Pretraining Model for Commonsense Story Generation. TACL 2020.

[4] SentiLARE: Sentiment-Aware Language Representation Learning with Linguistic Knowledge. EMNLP 2020.

[5] Train No Evil: Selective Masking for Task-Guided Pre-Training. EMNLP 2020.

[6] A Large-Scale Chinese Short-Text Conversation Dataset. NLPCC 2020.

[7] Language Generation with Multi-Hop Reasoning on Commonsense Knowledge Graph. EMNLP 2020.


推荐阅读
  • 通过使用CIFAR-10数据集,本文详细介绍了如何快速掌握Mixup数据增强技术,并展示了该方法在图像分类任务中的显著效果。实验结果表明,Mixup能够有效提高模型的泛化能力和分类精度,为图像识别领域的研究提供了有价值的参考。 ... [详细]
  • 表面缺陷检测数据集综述及GitHub开源项目推荐
    本文综述了表面缺陷检测领域的数据集,并推荐了多个GitHub上的开源项目。通过对现有文献和数据集的系统整理,为研究人员提供了全面的资源参考,有助于推动该领域的发展和技术进步。 ... [详细]
  • 独家解析:深度学习泛化理论的破解之道与应用前景
    本文深入探讨了深度学习泛化理论的关键问题,通过分析现有研究和实践经验,揭示了泛化性能背后的核心机制。文章详细解析了泛化能力的影响因素,并提出了改进模型泛化性能的有效策略。此外,还展望了这些理论在实际应用中的广阔前景,为未来的研究和开发提供了宝贵的参考。 ... [详细]
  • 【图像分类实战】利用DenseNet在PyTorch中实现秃头识别
    本文详细介绍了如何使用DenseNet模型在PyTorch框架下实现秃头识别。首先,文章概述了项目所需的库和全局参数设置。接着,对图像进行预处理并读取数据集。随后,构建并配置DenseNet模型,设置训练和验证流程。最后,通过测试阶段验证模型性能,并提供了完整的代码实现。本文不仅涵盖了技术细节,还提供了实用的操作指南,适合初学者和有经验的研究人员参考。 ... [详细]
  • 能够感知你情绪状态的智能机器人即将问世 | 科技前沿观察
    本周科技前沿报道了多项重要进展,包括美国多所高校在机器人技术和自动驾驶领域的最新研究成果,以及硅谷大型企业在智能硬件和深度学习技术上的突破性进展。特别值得一提的是,一款能够感知用户情绪状态的智能机器人即将问世,为未来的人机交互带来了全新的可能性。 ... [详细]
  • 从2019年AI顶级会议最佳论文,探索深度学习的理论根基与前沿进展 ... [详细]
  • 在稀疏直接法视觉里程计中,通过优化特征点并采用基于光度误差最小化的灰度图像线性插值技术,提高了定位精度。该方法通过对空间点的非齐次和齐次表示进行处理,利用RGB-D传感器获取的3D坐标信息,在两帧图像之间实现精确匹配,有效减少了光度误差,提升了系统的鲁棒性和稳定性。 ... [详细]
  • 利用PaddleSharp模块在C#中实现图像文字识别功能测试
    PaddleSharp 是 PaddleInferenceCAPI 的 C# 封装库,适用于 Windows (x64)、NVIDIA GPU 和 Linux (Ubuntu 20.04) 等平台。本文详细介绍了如何使用 PaddleSharp 在 C# 环境中实现图像文字识别功能,并进行了全面的功能测试,验证了其在多种硬件配置下的稳定性和准确性。 ... [详细]
  • 图像分割技术在人工智能领域中扮演着关键角色,其中语义分割、实例分割和全景分割是三种主要的方法。本文对这三种分割技术进行了详细的对比分析,探讨了它们在不同应用场景中的优缺点和适用范围,为研究人员和从业者提供了有价值的参考。 ... [详细]
  • Milvus 获邀参加 2020 开源软件供应链峰会,探讨大数据领域的创新应用与实践
    2020年11月14日至15日,由中国科学软件研究所和openEuler社区联合主办的开源软件供应链峰会在南京玄武苏宁诺富特酒店隆重召开。作为开源社区的重要成员,Milvus受邀参加了此次盛会,与业界专家共同探讨了大数据领域的创新应用与实践经验。会上,Milvus分享了其在高性能向量搜索引擎方面的最新进展和技术突破,为大数据处理和分析提供了新的解决方案。 ... [详细]
  • Dense Matrix Inversion Results in Segmentation Fault: Causes and Solutions ... [详细]
  • 本文深入探讨了数据库性能优化与管理策略,通过实例分析和理论研究,详细阐述了如何有效提升数据库系统的响应速度和处理能力。文章首先介绍了数据库性能优化的基本原则和常用技术,包括索引优化、查询优化和存储管理等。接着,结合实际应用场景,讨论了如何利用容器化技术(如Docker)来部署和管理数据库,以提高系统的可扩展性和稳定性。最后,文章还提供了具体的配置示例和最佳实践,帮助读者在实际工作中更好地应用这些策略。 ... [详细]
  • 从用户转型为开发者:一场思维升级的旅程 | 专访 StarRocks Committer 周威
    从用户转变为开发者,不仅是一次角色的转换,更是一场深刻的思维升级之旅。本次专访中,StarRocks Committer 周威分享了他如何在这一过程中逐步提升技术能力与思维方式,为开源社区贡献自己的力量。 ... [详细]
  • 视觉图像的生成机制与英文术语解析
    近期,Google Brain、牛津大学和清华大学等多家研究机构相继发布了关于多层感知机(MLP)在视觉图像分类中的应用成果。这些研究深入探讨了MLP在视觉任务中的工作机制,并解析了相关技术术语,为理解视觉图像生成提供了新的视角和方法。 ... [详细]
  • NVIDIA最新推出的Ampere架构标志着显卡技术的一次重大突破,不仅在性能上实现了显著提升,还在能效比方面进行了深度优化。该架构融合了创新设计与技术改进,为用户带来更加流畅的图形处理体验,同时降低了功耗,提升了计算效率。 ... [详细]
author-avatar
zc163com
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有