0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

华为云刷新深度学习加速纪录

jmiy_worldofai 来源:未知 作者:胡薇 2018-12-03 10:29 次阅读

华为云ModelArts在国际权威的深度学习模型基准测试平台斯坦福DAWNBenchmark上取得了当前图像识别训练时间最佳成绩,ResNet-50在ImageNet数据集上收敛仅用10分28秒,比第二名成绩提升近44%。华为自研了分布式通用加速框架MoXing,在应用层和TensorFlow、MXNet、PyTorch等框架之间实现再优化。

日前,斯坦福大学发布了DAWNBenchmark最新成绩,在图像识别(ResNet50-on-ImageNet,93%以上精度)的总训练时间上,华为云ModelArts排名第一,仅需10分28秒,比第二名提升近44%。

斯坦福大学DAWNBenchmark图像识别训练时间最新成绩,华为云ModelArts以10分28秒排名第一,超越了fast.ai、谷歌等劲敌。

作为人工智能最重要的基础技术之一,近年来深度学习逐步延伸到更多的应用场景。除了精度,训练时间和成本也是构建深度学习模型时需要考虑的核心要素。然而,当前的深度学习基准往往以衡量精度为主,斯坦福大学DAWNBench正是在此背景下提出。

斯坦福DAWNBench是衡量端到端深度学习模型训练和推理性能的国际权威基准测试平台,提供了一套通用的深度学习评价指标,用于评估不同优化策略、模型架构、软件框架、云和硬件上的训练时间、训练成本、推理延迟以及推理成本,吸引了谷歌、亚马逊AWS、fast.ai等高水平队伍参与,相应的排名反映了当前全球业界深度学习平台技术的领先性。

正是在这样高手云集的基准测试中,华为云ModelArts第一次参加国际排名,便实现了更低成本、更快速度的体验。

华为云创造端到端全栈优化新纪录:128块GPU,10分钟训练完ImageNet

为了达到更高的精度,通常深度学习所需数据量和模型都很大,训练非常耗时。例如,在计算机视觉领域常用的经典ImageNet数据集(1000个类别,共128万张图片)上,用1块P100 GPU训练一个ResNet-50模型, 耗时需要将近1周。这严重阻碍了深度学习应用的开发进度。因此,深度学习训练加速一直是学术界和工业界所关注的重要问题,也是深度学习应用的主要痛点。

曾任Kaggle总裁和首席科学家的澳大利亚数据科学家和企业家Jeremy Howard,与其他几位教授共同组建了AI初创公司fast.ai,专注于深度学习加速。他们用128块V100 GPU,在上述ImageNet数据集上训练ResNet-50模型,最短时间为18分钟。

最近BigGAN、NASNet、BERT等模型的出现,预示着训练更好精度的模型需要更强大的计算资源。可以预见,在未来随着模型的增大、数据量的增加,深度学习训练加速将变得会更加重要。

只有拥有端到端全栈的优化能力,才能使得深度学习的训练性能做到极致。

华为云ModelArts功能视图

华为云ModelArts是一站式的AI开发平台,已经服务于华为公司内部各大产品线的AI模型开发,几年下来已经积累了跨场景、软硬协同、端云一体等多方位的优化经验。

ModelArts提供了自动学习、数据管理、开发管理、训练管理、模型管理、推理服务管理、市场等多个模块化的服务,使得不同层级的用户都能够很快地开发出自己的AI模型。

自研分布式通用加速框架MoXing,性能再加速

为什么ModelArts能在图像识别的训练时间上取得如此优异的成绩?

答案是“MoXing”。

在模型训练部分,ModelArts通过硬件、软件和算法协同优化来实现训练加速。尤其在深度学习模型训练方面,华为将分布式加速层抽象出来,形成一套通用框架——MoXing(“模型”的拼音,意味着一切优化都围绕模型展开)。

采用与fast.ai一样的硬件、模型和训练数据,ModelArts可将训练时长可缩短到10分钟,创造了新的纪录,为用户节省44%的时间

MoXing是华为云ModelArts团队自研的分布式训练加速框架,它构建于开源的深度学习引擎TensorFlow、MXNet、PyTorch、Keras之上,使得这些计算引擎分布式性能更高,同时易用性更好。

华为云MoXing架构图

MoXing内置了多种模型参数切分和聚合策略、分布式SGD优化算法、级联式混合并行技术、超参数自动调优算法,并且在分布式训练数据切分策略、数据读取和预处理、分布式通信等多个方面做了优化,结合华为云Atlas高性能服务器,实现了硬件、软件和算法协同优化的分布式深度学习加速。

有了MoXing后,上层开发者可以聚焦业务模型,无需关注下层分布式相关的API,只用根据实际业务定义输入数据、模型以及相应的优化器即可,训练脚本与运行环境(单机或者分布式)无关,上层业务代码和分布式训练引擎可以做到完全解耦。

用数据说话:从吞吐量和收敛时间看加速性能

深度学习加速属于一个从底层硬件到上层计算引擎、再到更上层的分布式训练框架及其优化算法多方面协同优化的结果,具备全栈优化能力才能将用户训练成本降到最低。

在模型训练这方面,华为云ModelArts内置的MoXing框架使得深度学习模型训练速度有了很大的提升。

下图是华为云团队测试的模型收敛曲线(128块V100 GPU,完成ResNet50-on-ImageNet)。一般在ImageNet数据集上训练ResNet-50模型,当Top-5精度≥93%或者Top-1 精度≥75%时,即可认为模型收敛。

ResNet50-on-ImageNet训练收敛曲线(曲线上的精度为训练集上的精度):(a)所对应的模型在验证集上Top-1 精度≥75%,训练耗时为10分06秒;(b) 所对应的模型在验证集上Top-5精度≥93%,训练耗时为10分28秒。

Top-1和Top-5精度为训练集上的精度,为了达到极致的训练速度,训练过程中采用了额外进程对模型进行验证,最终验证精度如下表所示(包含与fast.ai的对比)。

MoXing与fast.ai的训练结果对比

华为云团队介绍,衡量分布式深度学习框架加速性能时,主要看吞吐量和收敛时间。在与吞吐量和收敛时间相关的几个关键指标上,团队都做了精心处理:

在数据读取和预处理方面,MoXing通过利用多级并发输入流水线使得数据IO不会成为瓶颈;

在模型计算方面,MoXing对上层模型提供半精度和单精度组成的混合精度计算,通过自适应的尺度缩放减小由于精度计算带来的损失;

在超参调优方面,采用动态超参策略(如momentum、batch size等)使得模型收敛所需epoch个数降到最低;

在底层优化方面,MoXing与底层华为自研服务器和通信计算库相结合,使得分布式加速进一步提升

后续,华为云ModelArts将进一步整合软硬一体化的优势,提供从芯片(Ascend)、服务器(Atlas Server)、计算通信库(CANN)到深度学习引擎(MindSpore)和分布式优化框架(MoXing)全栈优化的深度学习训练平台。

ModelArts会逐步集成更多的数据标注工具,扩大应用范围,将继续服务于智慧城市、智能制造、自动驾驶及其它新兴业务场景,在公有云上为用户提供更普惠的AI服务。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 华为
    +关注

    关注

    215

    文章

    33619

    浏览量

    247146
  • 深度学习
    +关注

    关注

    73

    文章

    5237

    浏览量

    119907

原文标题:华为云刷新深度学习加速纪录:128块GPU,10分钟训练完ImageNet

文章出处:【微信号:worldofai,微信公众号:worldofai】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    FPGA在深度学习应用中或将取代GPU

    上涨,因为事实表明,它们的 GPU 在训练和运行 深度学习模型 方面效果明显。实际上,英伟达也已经对自己的业务进行了转型,之前它是一家纯粹做 GPU 和游戏的公司,现在除了作为一家 GPU 服务
    发表于 03-21 15:19

    GPU在深度学习中的应用与优势

    学习中究竟担当了什么样的角色?又有哪些优势呢?一、GPU加速深度学习训练并行处理GPU的核心理念在于并行处理。在深度
    的头像 发表于 12-06 08:27 714次阅读
    GPU在<b class='flag-5'>深度</b><b class='flag-5'>学习</b>中的应用与优势

    深度学习的由来 深度学习的经典算法有哪些

    深度学习作为机器学习的一个分支,其学习方法可以分为监督学习和无监督学习。两种方法都具有其独特的
    发表于 10-09 10:23 358次阅读
    <b class='flag-5'>深度</b><b class='flag-5'>学习</b>的由来 <b class='flag-5'>深度</b><b class='flag-5'>学习</b>的经典算法有哪些

    HarmonyOS/OpenHarmony原生应用开发-华为Serverless云端服务支持说明(一)

    )。 华为Serverless除了支撑常规业务领域,还针对应用开发领域做了深度支持。提供了主流应用平台的支持,完善的用户认证体系,以及丰富的应用领域微解决方案,可帮助开发者高效构建应用。 面向鸿蒙开发者
    发表于 10-08 10:22

    深度学习服务器怎么做 深度学习服务器diy 深度学习服务器主板用什么

    深度学习服务器怎么做 深度学习服务器diy 深度学习服务器主板用什么  随着人工智能的飞速发展,
    的头像 发表于 08-17 16:11 540次阅读

    深度学习框架和深度学习算法教程

    深度学习框架和深度学习算法教程 深度学习是机器学习
    的头像 发表于 08-17 16:11 717次阅读

    深度学习框架的作用是什么

    深度学习框架的作用是什么 深度学习是一种计算机技术,它利用人工神经网络来模拟人类的学习过程。由于其高度的精确性和精度,
    的头像 发表于 08-17 16:10 1166次阅读

    深度学习框架是什么?深度学习框架有哪些?

    深度学习框架是什么?深度学习框架有哪些?  深度学习框架是一种软件工具,它可以帮助开发者轻松快速
    的头像 发表于 08-17 16:03 1771次阅读

    什么是深度学习算法?深度学习算法的应用

    什么是深度学习算法?深度学习算法的应用 深度学习算法被认为是人工智能的核心,它是一种模仿人类大脑
    的头像 发表于 08-17 16:03 1477次阅读

    深度学习算法简介 深度学习算法是什么 深度学习算法有哪些

    深度学习算法简介 深度学习算法是什么?深度学习算法有哪些?  作为一种现代化、前沿化的技术,
    的头像 发表于 08-17 16:02 6809次阅读

    如何加速深度学习AI应用

    深度学习 AI 应用是解锁生产力新时代的关键,人类的创造力能够通过机器得到提高与增强。我们致力于将大量培训数据和海量数学运算用于全面训练每个神经网络。训练可使用大规模批处理功能离线进行,历时数天。经过训练的网络要投入部署,那就面临严格得多的时限要求。
    发表于 08-04 11:29 408次阅读

    【福利活动】深度体验OpenHarmony对接华为IoT

    本文主要介绍基于OpenHarmony 3.0来接入IoTDA,以BearPi-HM_Nano开发板为例,使用huaweicloud_iot_link SDK对接华为物联网平台的简单流程。文末为
    发表于 07-28 10:55

    中国协作机器人销售量曝光!一路狂飙刷新纪录

    中国协作机器人销售量曝光!一路狂飙刷新纪录
    的头像 发表于 05-23 10:55 712次阅读
    中国协作机器人销售量曝光!一路狂飙<b class='flag-5'>刷新纪录</b>!

    GPU引领的深度学习

    早期的机器学习以搜索为基础,主要依靠进行过一定优化的暴力方法。但是随着机器学习逐渐成熟,它开始专注于加速技术已经很成熟的统计方法和优化问题。同时深度
    的头像 发表于 05-09 09:58 567次阅读

    智造之眼丨深度学习应用

    智造之眼®科学设计深度学习各应用流程,在尽量简化前期准备工作的基础上为客户提供稳定且准确的深度学习解决方案。
    的头像 发表于 05-04 16:55 472次阅读
    智造之眼丨<b class='flag-5'>深度</b><b class='flag-5'>学习</b>应用