微软推 ZeRO++ 新系统:减少大模型训练时间和成本

发布时间:2023-06-26 18:40:53
来源:动点科技


(相关资料图)

微软研究人员推出了名为 ZeRO++ 的新系统,用于优化训练大型 AI 模型,以应对高数据传输开销和有限带宽的难题。

ZeRO++ 建立在现有的 ZeRO 优化的基础上,并提供增强的通信策略,以提高训练效率,减少训练时间和成本。

像 Turing-NLG、ChatGPT 和 GPT-4 这样的大型模型的训练需要跨多个 GPU 设备占用大量内存和计算资源。DeepSpeed 开发的 ZeRO++ 引入了通信优化策略,以克服在每个 GPU 上批量大小较小时或在低带宽集群上进行训练时 ZeRO 的限制。

ZeRO 优化系列包括 ZeRO-Inference,它使用 GPU 的集体内存和计算能力,将模型状态分割在多个 GPU 之间。然而,在训练过程中,ZeRO 可能会产生较高的通信开销。ZeRO++ 通过整合三组通信优化来解决这个问题 : 量化权重通信(qwZ)、分层权重分割 ( hpZ ) 和量化梯度通信 ( qgZ ) 。

为了减少参数通信量,ZeRO++ 对权重进行量化,利用基于块的量化方法来保持训练精度。这种优化的量化过程比基本量化更快更准确。为了在反向传播过程中尽量减少通信开销,ZeRO++ 通过在每台机器上保持完整的模型副本,以 GPU 内存换取通信。梯度通信方面,ZeRO++ 引入了一种新的量化梯度通信范式 qgZ,可以减少跨节点的流量和延迟。

这些通信优化大大减少了通信量。与 ZeRO 相比,ZeRO++ 实现了减少高达 4 倍的通信量,提高了训练吞吐量和效率。当在每个 GPU 上使用小批量大小时,在高带宽集群中,ZeRO++ 相比 ZeRO-3 的吞吐量提高了 28% 至 36%。在低带宽集群中,与 ZeRO-3 相比,ZeRO++ 实现了平均 2 倍的加速,使得大模型训练在更多种类的集群上更为可行。

ZeRO++ 不仅限于训练场景,还可应用于对话模型中使用的人类反馈强化学习(RLHF)训练。通过将 ZeRO++ 与 DeepSpeed-Chat 集成,RLHF 训练可以获得更好的生成和训练吞吐量,生成吞吐量提高了高达 2.25 倍,训练吞吐量提高了 1.26 倍,超过了 ZeRO。

DeepSpeed 已经发布了 ZeRO++,以使大型模型的训练在 AI 社区更加高效和可访问。该系统旨在加快训练速度,减少通信开销,并实现更大的批量大小,从而节省时间和资源。研究人员和实践者可以利用 ZeRO++ 更有效地训练像 ChatGPT 这样的模型,并在 AI 领域探索新的可能性。

来源:站长之家

更多相关文章