MindSpore开源框架加持,如何「炼出」首个千亿参数、TB级内存的中文预训练语言模型?

网友投稿 686 2022-05-28

近段时间,中文大规模预训练语言模型圈有些热闹。26 亿参数量的「悟道 · 文源」, 270 亿参数量的 PLUG,以及华为云发布的千亿级别「盘古」NLP 大模型,预训练语言模型已经成长到仅加载就需要 TB 级的内存或显存。

我们可以直观地想到,「盘古」效果理应更好,但计算量需求也更大,训练起来更困难。

MindSpore开源框架加持,如何「炼出」首个千亿参数、TB级内存的中文预训练语言模型?

然而「盘古」实际上是这样一次探索:开源框架 MindSpore,昇腾基础软硬件平台,加上超大规模中文预训练模型,意味着基础设施已然完善了。

这项工作由华为以及北京大学相关技术团队联手完成,在昇腾基础软硬件平台,以及 MindSpore 框架自动并行等黑科技的帮助下,训练出当前最大的中文预训练模型。

那么量级不断拔高的盘古大模型是如何训练出来的?

接下来,让我们细致解读下「盘古」背后的关键技术。

千亿参数,TB 级内存的模型

以盘古 2000 亿为例,如果我们训练时权重都用标准的 FP32 数据格式,那么算下来,权重占的空间就达到了 750GB,训练过程中内存开销还会数倍上升。这 750GB 参数,不是放在硬盘上,也不是加载到内存中,而是需要移到昇腾Atlas训练服务器 HBM(High Bandwidth Memory 高带宽存储器)内存中,以利用昇腾Atlas训练服务器训练模型。

模型大 ,意味着数据也大,而且都需要是高质量数据。为了满足数据需求,研发团队从互联网爬取了 80 TB 文本,并最后清洗为 1TB 的中文数据集。

这样的模型与数据,已经不是我们几台服务器能加载上的了,更不用说进行训练。好在研发团队会提供 API,一般算法工程师直接调用接口就能试试效果。

可以说,目前盘古是业界首创的千亿规模中文预训练模型,其中最高参数量达 2000 亿。

超大规模自动并行,算法工程师的福音

MindSpore 机器学习

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:vi中跳到文件的第一行和最后一行
下一篇:华为云中国-香港区域和亚太-新加坡区域的普通IO云硬盘于2020年03月31日 20:00(北京时间)停售通知
相关文章