microsoft开源了零冗余优化器版本2(zero-2),这是一种分布式深度学习优化算法,可根据集群大小进行超线性扩展。与以前的分布式学习技术相比,microsoft使用zero-2培训了10倍的1000亿参数自然语言处理(nlp)模型。
程序经理rangan majumder和杰出的工程师wang junhua在博客中写道,描述了该算法及其实验。zero-2是microsoft开源deepspeed库的一部分,用于深度学习培训优化。zero-2优化了训练过程中的内存消耗,允许对多达1,700亿个参数的模型进行分布式训练。该算法还减少了分布式集群中工作节点之间的通信,实现了超线性并行加速,从而将培训时间减少了多达10倍。deepspeed团队在1,024个gpu的集群上使用zero-2,达到了创纪录的44分钟的时间来训练bert自然语言模型,比nvidia的结果提高了30%以上。
nlp研究的最新趋势表明,通过在较大数据集上训练的较大模型,可以提高准确性。openai提出了一套“缩放定律”,表明模型精度与模型大小具有幂律关系,并且最近通过创建具有1750亿个参数的gpt-3模型对该想法进行了测试。由于这些模型太大而无法容纳单个gpu的内存,因此对其进行训练需要一堆机器和模型并行训练技术,以在整个集群中分配参数。有几种实现有效的模型并行性的开源框架,包括gpipe和nvidia的megatron,但是由于集群节点之间的通信开销,它们具有次线性加速,并且使用框架通常需要模型重构。
zero-2使用以下三种策略来减少训练所需的内存:减少模型状态内存需求,将层激活卸载到cpu以及减少内存碎片。zero-2可以通过在并行进程之间划分梯度和参数,将模型状态内存需求减少多达8倍。层激活值是从前向训练过程中保存的,以便稍后在后向过程中使用,但是zero-2将它们暂时从gpu的内存移动到主机cpu的内存。最后,即使可用内存不连续,即使内存可用,内存分配也可能失败。zero-2通过为连续用途(例如激活和渐变)预先分配连续的内存块来减少碎片。
配电柜操作流程
华为P30Pro开箱照曝光 包装盒上经典徕卡标识亮眼
东软集团在智能驾驶上的布局,似乎并非一时之想
为什么博卡、美管加、美自这些美业系统大牛们都上线了小程序?
摩托车后挡泥板三维扫描改装设计3D建模逆向工程服务
Microsoft开源了零冗余优化器版本2(ZeRO-2)
一种新型的中红外超紧凑型由石墨烯超表面组成的光调制器
cc1101无线模块
俊知为全球的毫米波客户提供最佳解决方案
区块链与物联网结合,打造最新科技世界
8月国家发布多项政策鼓励新能源汽车产业发展
高光谱、多光谱、超光谱成像技术的区别
固态硬盘专业知识:名词篇(二)
行深无人物流车采用高效电源模块助推物流行业发展
CMOS图像传感器在ALEXA数码摄影机设计中的应用
小米6最新消息:小米6出现各种问题,官方坦诚回应,华为无奈中枪!
【笔记】自己用的16种代码规范
比亚迪再度打破巴西新能源汽车销量纪录
单向节流阀作用
索尼对外发布VISION-S首辆原型车,融合索尼的成像和传感技术