在微软和英伟达的共同努力下, Turing NLG 17B 和 Megatron-LM 模型的继承者诞生了:5300 亿参数,天生强大,它的名字叫做「Megatron-Turing」。

机器之心报道,编辑:蛋酱、小舟。

刚刚,微软和英伟达联合推出了训练的「迄今为止最大、最强大的 AI 语言模型」:Megatron-Turing (MT-NLP)。

从公开披露的角度来看,MT-NLP 应该是现存最大的公共模型。

作为两家公司 Turing NLG 17B 和 Megatron-LM 模型的继承者,MT-NLP 包含 5300 亿个参数,并在一系列广泛的自然语言任务中表现出了「无与伦比」的准确性,包括阅读理解、常识推理和自然语言推理。

大规模语言模型

近年来,自然语言处理 (NLP) 中基于 Transformer 的语言模型在大规模计算、大型数据集以及用于训练这些模型的高级算法和软件的推动下发展迅速。具有大量参数、更多数据和更多训练时间的语言模型可以获得更丰富、更细致的语言理解。

因此,它们可以很好地泛化为有效的零样本(zero-shot)或少样本(few-shot)学习器,在许多 NLP 任务和数据集上具有很高的准确性。NLP 领域的下游任务包括文本摘要、自动对话生成、翻译、语义搜索、代码自动生成等。当前,SOTA NLP 模型中的参数数量呈指数增长,如下图 1 所示。

图 1. SOTA NLP 模型的大小随时间变化的趋势

然而,训练此类模型具有挑战性,主要有两个原因:

  • 即使使用最大的 GPU,也不再可能在内存中拟合这些模型的参数。
  • 如果不特别优化算法、软件和硬件堆栈,所需的大量计算操作可能会导致不切实际的极长训练时间。

近来 AI 领域的大量创新和突破使训练 MT-NLG 变得可行。在英伟达和微软合作的一个项目中,研究者们通过将最先进的 GPU 加速训练基础设施与顶尖的分布式学习软件堆栈结合,实现了前所未有的训练效率,用数千亿的 token 构建了高质量的自然语言训练语料库,并开发了提高优化效率和稳定性的解决方案。

下面我们来详细看下该研究的训练的各个方面和该方法的结果。

大规模训练的基础设置

由英伟达 A100 Tensor Core GPU 和 HDR InfiniBand 网络支撑的 SOTA 超级计算集群(例如英伟达的 Selene 和微软的 Azure NDv4) 有足够的计算能力在合理的时间范围内训练具有数万亿个参数的模型。然而,要充分发挥这些超级计算机的潜力,需要在数千个 GPU 之间实现并行,在内存和计算上都高效且可扩展。

然而现有的并行策略(例如数据、pipeline 或 tensor-slicing)在内存和计算效率方面存在以下权衡,无法用于训练这种规模的模型:

  • 数据并行实现了良好的计算效率,但它复制了模型状态并且无法利用聚合分布式内存。
  • tensor-slicing 需要 GPU 之间的大量通信,因此单个节点以外的计算效率受限,使得高带宽 NVLink 不可用。
  • pipeline 并行可以实现跨节点高效扩展。然而,为了提高计算效率,它需要大批量、粗粒度的并行以及完美的负载平衡,这在规模上是不可能的。

软件设计

微软的 DeepSpeed 与英伟达的 Megatron-LM 合作,创建了一个高效且可扩展的 3D 并行系统,将数据、pipeline 和基于 tensor-slicing 的并行结合在了一起。

具体地说,该系统使用来自 Megatron-LM 的 tensor-slicing 来扩展节点内的模型,并使用来自 DeepSpeed 的 pipeline 并行来跨节点扩展模型。

例如,对于 5300 亿参数的模型,每个模型副本(replica)跨越 280 个英伟达 A100 GPU,具有节点内的 8 路 tensor-slicing 和跨节点的 35 路 pipeline 并行。然后再使用 DeepSpeed 的数据并行进一步扩展到数千个 GPU。

硬件系统

模型训练是在基于英伟达 DGX SuperPOD 的 Selene 超级计算机上以混合精度完成的,该超级计算机由 560 个 DGX A100 服务器提供支持,这些服务器以完满的胖树配置用 HDR InfiniBand 联网。每个 DGX A100 有 8 个英伟达 A100 80GB Tensor Core GPU,并通过 NVLink 和 NVSwitch 实现相互之间的全连接。微软在 Azure NDv4 云超级计算机中使用了类似的架构。

系统吞吐量

研究者度量了该系统在 Selene 上的 280、350 和 420 DGX A100 服务器上,批大小为 1920 的 5300 亿参数模型的端到端吞吐量。其迭代时间分别为 60.1、50.2 和 44.4 秒,对应于每个 GPU 126、121 和 113 teraFLOP/s。

数据集和模型配置

研究者使用了 Transformer 解码器架构,它是一个从左到右生成的基于 Transformer 的语言模型,由 5300 亿个参数组成。层数、隐藏维度和注意力头数量分别为 105、20480 和 128 个。

基于开源数据集集合 The Pile,研究者构建了训练数据集。The Pile 共 835GB,是 22 个较小数据集的集合,涵盖学术资源(例如,Arxiv、PubMed)、社区(StackExchange、Wikipedia)、代码存储库(Github)等,微软和英伟达还引入了 Common Crawl 的大量网页快照,包括新闻报道和社交媒体帖子。

最终的训练集包括 15 个数据集,总共有 3390 亿个 token。研究者在训练期间根据图 2 中给出的可变采样权重将数据集混合到异构批次中,将重点放在更高质量的数据集上,在 2700 亿个 token 上训练了模型。

表 1:用于训练 MT-NLG 模型的数据集。

训练结果

近期语言模型方面的工作表明,强大的预训练模型通常可以在不进行微调的情况下,在众多 NLP 任务中表现出色。

为了理解扩大语言模型如何增强其零样本学习或小样本学习能力,研究者评估了 MT-NLG ,并证明它在几类 NLP 任务中实现了新的 SOTA。为确保评估的全面性,研究者选择了跨越五个不同领域的八项任务:

  • 在文本预测任务 LAMBADA 中,模型预测给定段落的最后一个词;
  • 在阅读理解任务 RACE-h 和 BoolQ 中,模型根据给定的段落生成问题的答案;
  • 在常识推理任务 PiQA、HellaSwag 和 Winogrande 中,每个任务都需要一定程度的常识水平,超出语言的统计模式才能解决;
  • 对于自然语言推理,ANLI-R2 和 HANS 两个基准,针对过去模型的典型失败案例;
  • 词义消歧任务 WiC ,从上下文评估多义词的理解。

为了增强可复现性,研究者基于开源项目 lm-evaluation-harness 设置了评估,并针对特定任务进行了适当的更改。研究者在零样本、单样本和少样本设置中以没有搜索最优值的方法评估了 MT-NLG。

表 2 展示了准确率度量的结果。如果测试集是公开可用的,研究者会在测试集上进行评估,否则即报告开发集上的值。最终公开的是 LAMBADA、RACE-h 和 ANLI-R2 上的测试集和开发集上的其他任务。

表 2:MT-NLG 在 PiQA 开发集和 LAMBADA 测试集的所有设置上都实现了 SOTA(用 * 表示),并且在其他类别的类似单体模型中同样表现出色。

除了基准任务的指标外,研究者还对模型输出进行了定性分析。可以观察到,即使符号被严重混淆(示例 2),该模型也可以从上下文中推断出基本的数学运算(示例 1)。虽然称不上拥有了算术能力,但该模型似乎超越了仅记忆算术的水平。

表 3:MT-NLG 在不同句法结构下的数学运算推理和自然语言推理的样本。

讨论:问题与应用

虽然大规模语言模型推动了语言生成技术的发展,但它们也存在偏见、有害性等问题。AI 社区的成员们也一直在积极研究、理解和消除语言这些模型中的问题。

微软和英伟达表示,MT-NLG 模型从它所训练的数据中提取了刻板印象和偏见。他们正在解决这个问题,也鼓励帮助量化模型偏差的后续研究。

今天,人工智能技术的进步正在超越摩尔定律的极限。新一代的 GPU 以闪电般的速度互连,不断升级算力。与此同时,AI 模型的扩展带来了更好的性能,而且似乎前景无限。

MT-NLG 就是一个例子,它展示的是:当像 NVIDIA Selene 或 Microsoft Azure NDv4 这样的超级计算机与 Megatron-LM 和 DeepSpeed 的软件创新一起用来训练大型语言 AI 模型时,可能会发生什么?

微软和英伟达表示,DeepSpeed 和 Megatron-LM 的创新将助力未来更多的 AI 模型开发,并使大型 AI 模型的训练成本更低、速度更快。

尽管如此,大模型的成本问题仍然是不可忽视的。像 MT-NLP、华为的盘古α、Naver 的 HyperCLOVA、智源研究院的悟道 2.0 等巨模型的搭建成本并不便宜。比如说,OpenAI 的 GPT-3 的训练数据集大小为 45 TB,足以填满 90 个 500GB 硬盘。

人工智能训练成本在 2017 年至 2019 年间降低到了原有的百分之一,但这仍超过大多数初创公司在计算方面的预算。这种不平等牺牲了小企业获得资源的机会,反而巩固了巨头原本就具备的优势。

举一个极端的例子,据 CrowdStorage 统计,特斯拉自动驾驶团队的一个数据集(1.5 PB 的视频片段)在 Azure 中存储三个月的成本,就超过了 67500 美元。

正如 Huggingface 联合创始人 Julien Chaumond 所说:「比起 5300 亿参数的大模型,我更感兴趣的是能让 5.3 亿人使用或研究的模型。」

参考链接:https://developer.nvidia.com/blog/using-deepspeed-and-megatron-to-train-megatron-turing-nlg-530b-the-worlds-largest-and-most-powerful-generative-language-model/

https://venturebeat.com/2021/10

5300亿参数的「威震天-图灵」,微软、英伟达合力造出超大语言模型相关推荐

  1. powerbuilder TriggerEvent 参数_NLP界“威震天”袭来!英伟达1小时83亿参数打造史上最大语言模型...

    [新智元导读]英伟达一举创造了2个壮举!训练出了世界上最大的语言模型--MegatronLM,包含83亿参数,比BERT大24倍,比GPT-2大5.6倍:还打破了实时对话AI的记录,仅耗时53分钟即可 ...

  2. 用「我的世界」自动生成「现实世界」:英伟达展示AI脑补新技术

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 来自:机器之心 Minecraft 里面自建像素风世界不够过瘾?英伟达:那就让 AI ...

  3. 5300亿NLP模型“威震天-图灵”发布,由4480块A100训练,微软英伟达联合出品

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI 5300 ...

  4. 5300亿参数,SOTA屠榜!最大NLP预训练模型新王登基,微软英伟达联手称霸

    来自:新智元 [导读]微软和英伟达联合发布了迄今为止最大.最强的人工智能语言模型:Megatron-Turing自然语言生成模型(MT-NLG).其包含5300亿个参数,在一系列自然语言任务包括阅读理 ...

  5. AI性能基准测试从此有了「中国标准」!英伟达、谷歌可以试试

    2020-11-10 15:56:02 金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 在秀算力这件事上,近几年一个叫MLPerf的AI性能基准测试,经常跃入人们的视线. 为了拿这个标准证 ...

  6. AI性能基准测试从此有了「中国标准」!英伟达、谷歌可以试试这套算力卷

    金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 在秀算力这件事上,近几年一个叫MLPerf的AI性能基准测试,经常跃入人们的视线. 为了拿这个标准证明实力,英伟达.谷歌等「算力」大厂的表现 ...

  7. 30亿美金投入!一文读懂英伟达性能凶残的Tesla V100牛在哪?

    来源:智东西 概要:AI已无处不在,两股力量正推动计算机领域的未来. GTC CHINA 2017大会上,英伟达创始人兼CEO黄仁勋表示,AI已无处不在,两股力量正推动计算机领域的未来.第一.摩尔定律 ...

  8. 27亿参数的「野生版」GPT-3开源,GitHub项目2.9K Star量

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 OpenAI 著名的语言模型 GPT-3 可以懂数学.翻译文字,还能写论文拿到及格成绩 ...

  9. 黄仁勋最新演讲:创立「英伟达」的3个故事

    AI为我们带来了巨大的机遇,反应敏捷的企业将利用AI技术提升竞争力,而未能善用AI的企业将面临衰退. 很多企业家,包含今天在场的许多人,未来将会开创新公司. 内容来自:经济日报 英伟达执行长黄仁勋27 ...

最新文章

  1. java arraylist 构造_Java基础五:构造方法、ArrayList
  2. 关于理解Perl的fork函数的一个范例
  3. Java拆分字符串的函数——split
  4. AtCoder AGC019E Shuffle and Swap (DP、FFT、多项式求逆、多项式快速幂)
  5. 虚拟主机搭建微信公众号服务器,建web服务器同时如何搭建虚拟主机?方法有几种?...
  6. 负债十五万左右,信用卡十万,网贷四五万,怎么上岸?
  7. 如何像Uber一样给工程师派单,解放外包生产力?
  8. python django 是啥_python的django做什么的
  9. CodeForces 570B,C
  10. 是引进外部函数吗_使用PowerBI的这两个函数,灵活计算各种占比
  11. Ansible 入门:安装 简例 playbook应用
  12. compilation targetFrameworkMoniker=.NETFramework,Version=v4.0
  13. 联合分布及其随机变量
  14. STM32F103C8T6最小系统
  15. PWM的基本原理及如何产生PWM
  16. 解决: The server encountered an internal error that prevented it from fulfilling this request.
  17. python如何连redis_Python连接Redis的基本配置方法
  18. html怎么调颜色的饱和度,css – LESS:色调,饱和度和亮度 – 如何使用?
  19. 读书笔记—水煮三国(纪念版)
  20. Docker--网络模式

热门文章

  1. [盘点]从《行者无疆》开始了解欧洲
  2. 惠普鼠标g260_惠普g260鼠标怎么样 惠普鼠标怎么样?
  3. 强强联合!智源x清华AIR,共启 AI 健康研究新篇章
  4. 兰艳艳:SIGIR十年趋势(附视频)
  5. 《结网》十年,《结网2》开启产品经理的无限游戏
  6. LaTex排版技巧:[15]公式太长如何换行
  7. 基于TensorFlow打造强化学习API:TensorForce是怎样炼成的?
  8. TensorFlow练习9: 生成妹子图(PixelCNN)
  9. Github上的10个数据科学和机器学习知识库
  10. 干货 | 手把手教你用115行代码做个数独解析器!(附代码)