百度飞桨人工智能产业赋能中心 顶级全球最权威AI性能基准 百度飞桨为分布式训练树立了标杆
大模型时代,飞桨产业级平台的优势开始显现。从问答、翻译、作画再到写论文,最近一段时间,实现各种神奇能力的 AI 总有个「大模型」的称号。在工业界,大模型也被视为重要的发展方向,它既可以减少机器学习训练
顺晟科技
2023-02-23 10:11:16
126
大比例模型时代,螺旋桨的工业级平台优势开始显现。
从问答、翻译、绘画到写论文,成就了各种神奇能力的AI,最近总是被冠以“大模特”的名号。
在业界,大模型也被视为一个重要的发展方向,不仅可以降低机器学习和训练中对数据标注的需求,还可以降低没有手写专家知识的AI应用的行业门槛。在工业和一些科学领域,人工智能已经进入了“提炼大模型”的新阶段。
然而,天下没有免费的午餐,大模型带来了AI能力的突破,也对计算能力提出了无尽的需求。芯片制造商和技术公司正在寻找提高AI训练效率的方法。国内AI技术领先的百度最近展示了真技术。
11月10日,机器学习基准平台MLPerf发布了最新榜单。在BERT模型训练榜单中,百度以飞桨框架提交的8机64卡配置获得同GPU配置第一名[1]。BERT模型中的变压器结构是目前主流大模型的基本结构。
在百度提交的方案中,64个GPU用149秒训练了BERT模型。率先通过国际权威基准测试,体现了飞桨框架在分布式训练性能上的优势,其中使用的技术也成为百度业务创新的重要组成部分。
在最权威的标杆平台上冲击榜单
MLPerf是国际公认的AI性能评测权威基准。它于2018年5月由图灵奖获得者大卫帕特森(David Patterson)与学术机构和企业合作创立。它通过一套规则和最佳实践,解决了机器学习系统评估的难题。
该基准涵盖了计算机视觉、自然语言处理、推荐系统和强化学习。要求参与者在指定数据集上训练经典算法,达到一定精度,并仔细标注提交的处理细节。此外,还需要开源代码来发布包括计算设施、CPU和GPU等处理器型号、使用的机器学习框架甚至加速库等信息,以确保可复制性。
由于严格客观的标准,MLPerf一直吸引着芯片厂商和科技公司将最新最强大的软硬件解决方案提交到榜单中进行对比。
在MLPerf v2.1最新版本中,百度的自然语言处理赛道需要训练BERT大模型,掩蔽语言模型的准确率被训练到72%的端到端时间。作为NLP领域众所周知的模型之一,BERT使用的Transformer架构是当今许多大规模预训练模型的基础。
共有21家公司和机构参与了此次评估。百度提出的方法在端到端的训练时间和训练吞吐量上都超过了相同GPU配置下的所有竞争对手。
百度工程师表示,模型训练不仅需要考虑纯GPU的计算能力,还与深度学习正向和反向计算的速度,以及数据IO和通信效率有很大关系。除了硬件和服务器组织架构,这样的任务也对软件框架提出了很高的要求。
这并不是百度第一次在MLPerf上有所建树:在6月30日发布的v2.0榜单中,飞宇以8卡GPU单机配置取得了BERT模型训练性能第一名,比其他提交结果快5%到11%[2]。
百度在v2.1提交的多机评测结果进一步证实了螺旋桨分布式训练的性能。百度提供的解决方案在相同GPU配置下的端到端训练中比其他提交的结果快1%到20%,在训练吞吐量上比其他提交的结果快2%到12%。
MLPerf Training v2.1 BERT模型端到端训练(8机64卡GPU)收敛时间排名。
MLPerf Training v2.1 BERT模型提交结果吞吐量对比(8机64卡GPU)。
值得一提的是,这一成绩超过了GPU制造商英伟达使用自己高度定制的NGC PyTorch框架的性能数据。
让8个GPU用完相当于8.2的计算能力
在MLPerf基准测试中取得的高速,得益于飞桨框架在分布式训练核心技术上的不断探索和创新。
这次百度参加的是多节点分布式训练赛道。在跨设备并行计算的情况下,飞桨解决了一些以前单机训练遇到不了的挑战。优化范围包括设备之间的负载均衡和CPU、GPU等异构计算能力的负载均衡。在跨设备通信的问题上,Feipaddle也采用了全局通信和分层通信相结合的方法来提高通信效率。
首先,为了提高AI模型的训练效率,系统需要对数据和模型进行分段,制定多个处理器分别计算其中一部分的策略。针对大规模密集参数模型的高效训练问题,飞宇在业内首创了4D混合并行训练策略,包括张量模型并行、流水线模型并行、参数分组切片数据并行和纯数据并行。
使用混合并行训练千亿级模型时,可以使用propeller支持的重算策略来增加批量。另一方面,作为一种独立且通用的策略,重算不依赖于多卡并行。人们可以根据实际的商业模型大小和集群中的总卡数来独立调整两个维度,以达到更快地训练大模型的目的。
4D混合并行策略示意图。
在MLPerf BERT模型的训练任务中,基于飞桨混合并行策略,百度8机64卡的扩展效率比单机提高了94%,性能增长接近线性。
针对分布式训练调优困难的问题,飞宇提出了端到端的自适应分布式训练架构,可以将异构计算资源转化为集群资源的统一视图,通过端到端的代价模型建模选择最优策略,然后利用异步流水线的机制开始训练。如果某个设备出现故障或增减计算能力,弹性资源管理机制可以触发训练架构的各个模块自动响应。
在MLPerf BERT模型训练任务中,根据集群通信和NCCL SHARP协议的拓扑特性,飞桨采用全局通信和分层通信相结合的方式,降低整体通信耗时,有效提升模型训练性能。
针对分布式训练中经常出现的负载不均衡、数据加载速度瓶颈等问题,飞桨采用异构设备混合负载均衡方案,根据不同设备的特点,将任务分配给最高效的计算能力。在MLPerf训练任务中,飞桨利用GPU高带宽通信解决了模型训练开始时数据加载慢的问题,利用CPU异构设备通信实现了模型训练过程的重叠和数据负载均衡,提高了模型训练的效率。
此外,propeller框架还在Transformer模型底层提供了特殊的高性能支持,并对数据输入、模型结构、运算符实现等进行了优化。
值得一提的是,在数据并行优化的基础上,百度的方案在一台8GPU机器上实现了8以上的效率,——比同等物理芯片数加帧优化运行速度更快。
飞行螺旋桨分组参数切片混合并行策略示意图。
当多GPU计算单元学习并行操作时,每个GPU的优化器计算部分是冗余和重复的。飞螺优化了冗余重复计算部分,使每张卡只需要计算一部分参数梯度,然后同步更新。在此基础上,通过结合分层参数分段与通信、跨步通信-计算重叠、多流并发参数广播、底层算子深度优化,进一步提高分布式训练的极限性能,达到1大于2的效果。
充分发挥AI大模型的全部潜力
在AI训练任务中,芯片决定了计算能力的理论上限,以及服务器和集群的集成
据介绍,上次多机分布式训练成绩没有提交的部分原因是百度大规模模型需求量太大,计算资源一时太紧张。——在百度一直有训练大模型的需求。
如今的“文心大模型”已经覆盖了从NLP、CV、跨模态到生物计算的20多个大模型,飞桨也一直在为大模型的训练和推理提供技术支持。这也正是Feipaddle所擅长的:作为一个面向生产环境的深度学习平台,Feipaddle脱胎于大规模AI计算,从诞生之日起就在百度的商业实践中不断完善,基础训练成绩也一路提升。
随着计算机视觉、自然语言处理、科学计算等领域的应用,飞宇研发了异构硬件下的低存储高性能训练技术,并相继发布了业界首个通用异构参数服务器架构、4D混合并行训练策略、端到端自适应分布式训练架构等多项领先技术成果。
他们支撑着百度在大模型领域的快速迭代。在此基础上,百度先后发布了全球首个知识增强型千亿模型鹏程-百度文心[3]、全球首个百亿参数中英对话预训练生成模型PLATO-XL、全球最大中文跨模态生成模型ERNIE-ViLG、业界最大多任务统一可视化大型模型VIMER-UFO。
目前,文心已发布20多个大模型,涵盖自然语言处理、计算机视觉、跨模态、生物计算等领域,赋能工业、能源、城市、金融等数千个行业。
硬件生态方面,飞桨还与30多家硬件厂商合作完成深度整合优化,与英伟达、英特尔、瑞芯微、Arm、Imagination等多家合作厂商合作。针对不同的应用场景和产品,飞桨联合推出了生态分发版、开源模型库、面向开发者的系列课程。
除了MLPerf,飞桨的自适应分布式训练架构也在很多场景中得到了验证。在GPT-3000亿模型的GPU训练场景下,飞桨训练性能达到训练硬件峰值性能的51.3%,超过业界同类实现(deep speed/Megatron-LM);-LM)在同样的实验环境下。在鹏程-百度文心模型的训练中,propeller支持的性能是同规模、非自适应架构的2.1倍[3]。
此外,在蛋白质中的结构预测领域,飞宇创新性地提出了“分支并行-动态轴并行-数据并行”的混合并行策略,性能提升超过36% [4],在国产硬件集群上将alpha fold2 2000万蛋白质的初始训练阶段从7天压缩到2.6天。在稀疏门控混合专家并行领域,飞宇提出了Task MoE分布式训练架构和基于任务的负载均衡机制,在相同实验环境下比PyTorch提高了66%的训练性能,有力支持了文心VIMER-UFO 2.0模型的高效训练。
AI对大规模计算的需求仍在增长,在不久的将来,我们可能会见证新架构芯片和算法的出现。百度的工程师表示,预计未来会出现算法、硬件、框架的高度协同设计,让AI在设计之初就能充分考虑可计算性,并在此基础上充分优化性能。
同时,飞桨在软硬件协同性能优化、大规模分布式训练和推理方向不断创新,为用户提供适应性广、性能优的工业级深度学习平台。
最新消息是,在即将于11月30日举行的Wave Summit深度学习开发者峰会上,Feipaddle将发布新版本,推出全新的大型模型工具。
大尺度模型的大规模工业应用离我们越来越近了。
参考
[1]MLPerf培训v2.1结果。https://mlcommons.org/en/training-normal-21/
[2]MLPerf培训v2.0结果。https://mlcommons.org/en/training-normal-20/
[3]厄尼3.0泰坦:探索更大规模的知识强化语言理解和生成的前期训练。王硕焕等
[4]使用并行进化者和分支并行性的高效AlphaFold2训练。王,等。arXiv预印本arXiv: 2211.00235,2022。
剧终
转载请联系本公众号获得授权
投稿或寻求报道:content@jiqizhixin.com
原标题: 《登顶全球最权威AI性能基准评测,百度飞桨给分布式训练创造了标杆》
23
2023-02
02
2022-12
11
2021-12
11
2021-12
23
2021-08
20
2021-08