微软开源深度学习优化库 DeepSpeed,可训练 1000 亿参数的模型


人工智能的最新趋势是,更大的自然语言模型可以提供更好的准确性,但是由于成本、时间和代码集成的障碍,较大的模型难以训练。

微软日前开源了一个深度学习优化库 DeepSpeed,通过提高规模、速度、可用性并降低成本,可以在当前一代的 GPU 集群上训练具有超过 1000 亿个参数的深度学习模型,极大促进大型模型的训练。

微软开源深度学习优化库 DeepSpeed,可训练 1000 亿参数的模型

根据微软的介绍,DeepSpeed 库中有一个名为 ZeRO(零冗余优化器,Zero Redundancy Optimizer)的组件,这是一种新的并行优化器,它可以大大减少模型和数据并行所需的资源,同时可以大量增加可训练的参数数量。

研究人员利用这些突破创建了图灵自然语言生成模型(Turing-NLG),这是最大的公开语言模型,参数为 170 亿。

ZeRO 作为 DeepSpeed 的一部分,是一种用于大规模分布式深度学习的新内存优化技术,它可以在当前的 GPU 集群上训练具有 1000 亿个参数的深度学习模型,其吞吐量是当前最佳系统的 3 到 5 倍。

它还为训练具有数万亿个参数的模型提供了一条清晰的思路。

ZeRO 具有三个主要的优化阶段,分别对应于优化器状态、梯度和参数分区。

微软开源深度学习优化库 DeepSpeed

ZeRO 克服了数据并行和模型并行的局限性,同时实现两者的优点,它通过跨数据并行进程将模型状态划分为上图所示的参数、梯度和优化器状态分区,而不是复制它们,从而消除了数据并行进程之间的内存冗余。

在训练期间使用动态通信规划(dynamic communication schedule),在分布式设备之间共享必要的状态,以保持数据并行的计算粒度和通信量。

目前实施了 ZeRO 的第一阶段,即优化器状态分区(简称 ZeRO-OS),具有支持 1000 亿参数模型的强大能力,此阶段与 DeepSpeed 一起发布。

DeepSpeed 与 PyTorch 兼容,DeepSpeed API 是在 PyTorch 上进行的轻量级封装,这意味着开发者可以使用 PyTorch 中的一切,而无需学习新平台。

此外,DeepSpeed 管理着所有样板化的 SOTA 训练技术,例如分布式训练、混合精度、梯度累积和检查点,开发者可以专注于模型开发。

同时,开发者仅需对 PyTorch 模型进行几行代码的更改,就可以利用 DeepSpeed 独特的效率和效益优势来提高速度和规模。

DeepSpeed 在以下四个方面都表现出色:

微软开源深度学习优化库 DeepSpeed

微软DeepSpeed相关博客:https://www.microsoft.com/en-us/research/blog/zero-deepspeed-new-system-optimizations-enable-training-models-with-over-100-billion-parameters/

相关阅读 >>

微软打磨细节 让windows 11任务管理器更好用了

微软支持的行业组织推动ai监管:呼吁在立法基础

微软发布了windows holographic 21h2功能更新

又一经典系列谢幕!微软撤掉官网surface book分类入口

不想依赖英伟达!微软发布两款自研ai芯片,可训

微软尴尬不已:绝大多数美国人竟不知道win11将发布

美股周二:三大股指全线上涨,meta涨超7%,微软

微软改进了windows 11的隐私审计功能

微软ceo纳德拉:ai像是互联网那样的巨浪 改变了

美国含泪痛失一员大将?微软副总裁毅然回国!带回千万亿高新科技

更多相关阅读请进入《微软》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...