【大规模训练】ZeRO 的思路与实现
文 @ 不愿透露姓名的小 P 同学 前言 本次大规模训练技术系列分享之 ZeRO,主要对微软 ZeRO Optimizer 的思路和实现进行介绍,全文包含以下四个部分: 大规模训练的技术挑战 & 现有的并行训练方式 ZeRO Optimizer 的三个不同级别 ZeRO-3 具体实现思路和方式 ZeRO 的局限与大模型训练的未来 训练大模型的挑战 随着人工智能技术在全球的推广应用,自动驾驶、人脸识别、自然语言处理等越来越多领域通过深度学习大大提升了算法的整体性能和表现,GPU 也成为了训练模型不可或缺的基础计算设备。 然而,随着模型规模的不断增大,加之模型训练的数据量也越来越大,单个 GPU 的计算能力完全无法满足大规模网络的训练需求。 在密集型训练的代表——自然语言处理中,OpenAI 在 2020 年 6 月发布的第三代语言模型 GPT-3 的参数量达到了 1700 亿,相比于之前 GPT-2 的最大版本 15 亿个参数增长了百倍以上。 2021 年 4 月 25 日,华为云也发布了盘古系列超大预训练模型,其中包含 30 亿参数的全球最大视觉 (CV) 预训练模型,以及与循...
