智能安防

旷视Brain++天元框架开源,奠基AI生态共建

CPS中安网 2020-03-26

摘要 3月25日下午,旷视科技于线上正式发布“Brain++·天元”深度学习框架。

    【CPS中安网 cps.com.cn】深度学习是贯穿当今人工智能应用的核心框架之一。如何利用深度学习框架、高效进行人工智能开发,已经成了全球AI开发者们热议的话题。

  3月25日下午,旷视科技于线上正式发布“Brain++·天元”深度学习框架。

  “Brain++”是由旷视自主研发的端到端人工智能算法平台,总体架构上分为三部分,包括深度学习框架MegEngine、深度学习云计算平台MegCompute、以及数据管理平台MegData,具备大规模算法研发能力。

  而天元(MegEngine)则是旷视Brain++最核心的组件,可帮助开发者用户借助编程接口,进行大规模深度学习模型训练和部署,具备训练推理一体化,动静合一,兼容并包和灵活高效四个特点。

  MegEngine: 深度学习框架的新纪元

  发布会上,旷视研究院高级技术总监田忠博对于天元MegEngine做出了更详尽的介绍。


  天元架构从上到下共分为5个层次。最上层为计算接口层,天元对外暴露的接口为Python和C++接口,支持Python和C++语言对框架进行编程和使用,进行原型系统的设计研发和训练推理。

  第二层为图表示层,包含动态图和静态图表示功能。在图表示层下,第三层为核心计算层,包括自动求导、图优化、图编译等主要功能。同时,一体化核心计算引擎层次负责支撑动态图、静态图表示功能,以及上层接口功能。

  系统第四层为管理层,分为运行管理和内存管理两部分,负责计算调度和内存管理。其中非常值得一提的是内存管理模块中实现的“静态内存亚线性优化”功能,可以使内存管理效率得到大幅提升。

  最底层为系统核心计算层,包含核心算子库,可以支持X86、CUDA、ARM、ASIC等一系列常见计算设备;以及一个高性能异构通信库,可以支持计算框架的分布式、多节点使用,从而支持更大规模的应用。

  天元MegEngine的优势

  天元框架的诞生,有针对性地解决了人工智能产品开发中一系列痛点:

  ▎训练推理一体化

  传统深度学习产品的研发过程中,训练框架和推理框架往往是分别设计和实现的,当进行算法设计时,算法首先需要获得训练框架的支持,变为可训练的模型,再转为为推理框架可支持的格式,在不同的设备上进行计算。

  这些复杂的流程可能会导致一系列问题:如算子不被支持、无法自动优化、冗余算子引入导致系统性能下降等。


  而天元框架无需进行模型转化,可直接使用训练后的模型进行推理,保证训练和推理时的速度和精度一致,以及在跨设备模型训练时精度对齐。并且通过简化流程,天元可以自动对流程优化,提高效率。

  ▎动静合一

  在人工智能原型开发中,静态图更好部署,更容易变为产品。而在研究过程中,动态图更方便调试,更加灵活。

  天元框架尝试取两者优点,设计为可在动态和静态两种模式中切换,达到在两种模式下都可正确进行计算的状态,从而提升研究到部署过程中的效率。


  ▎兼容并包

  目前人工智能开源框架众多,每种框架的接口各异,导致了模型复现困难,学习成本高的问题。

  天元框架设计时,在函数命名风格和参数设计细节上都遵循Python社区的传统,并简化整体API风格,降低框架的使用和学习成本。

  同时天元框架还尝试性添加了模型导入功能,使模型可以更简单地被复现和对比,方便原型开发和实验。


  ▎灵活高效

  对AI产品研发生产公司来说,为了提供极致的AI服务,需要其产品在不同设备上都达到极致的性能。

  天元框架借助其高性能的算子库和高效的内存优化策略,可以充分利用不同设备的算力,从而达到灵活高效的效果,使得同样的设备在应用天元框架时可以训练更大的模型,支持更多的算法种类。

  Brain++天元助力科研与生产

  根据旷视首席科学家、旷视研究院院长孙剑的介绍,旷视Brian++天元框架的特点可以简单总结为三点:“训得好”,“训得快”,“训得动”。

  ▎框架与算法协同——训得好

  孙剑博士介绍道,天元的第一个特点是框架与算法协同。今天,人工智能的算法运行在各种各样不同的平台之上,而云、端、边设备的特性差异很大,无法设计一种网络满足所有需求。

  旷视在进行深度学习研发的过程中,发现了一种三角形关系:三角形的三个顶点分别意味着取得良好训练效果的三要素——训练框架、计算设备、网络结构。

  为了达到最好的效果,三者需要联合设计,基于对不同计算设备特性的研究,天元框架可以快速开发算子,并灵活高效地进行算子优化,适配不同特性的计算设备,这是取得最优运行效果的关键。


  受益于天元框架和对端侧设备的深刻理解,旷视“协同设计”理念的成果“ShuffleNet”,近几年在端上取得了优异的效果,帮助国内手机厂商加速其智能化过程,并成为了各大主流框架中的标准实现。


  ▎高效训练系统——训得快

  随后,孙剑博士又介绍道,在计算机视觉领域非常有名的MS COCO大赛中,旷视在2017-2019年连续三年夺冠。这得益于旷视天元框架的高效训练系统。

  原因是多样的,但其中非常关键的是天元框架第一次引入SyncBN技术,能够支持超大Mini Batch训练,从而大幅度提高了训练模型的速度,训练时长由30个小时缩减至2小时,让研究人员可以在同样的时间去测试更多的想法,不断推进对计算机视觉和AI的认知。


  ▎大规模能力——训得动

  最后,孙剑博士解释了天元的大规模能力与旷视数据库容量规模有关。在2019年,旷视联合北京智源人工智能研究院联合发布了Object365数据集,现在Object 365 V2 已经包含超过200万张图像,超过2800万个人工标签,是COCO的16倍大。

  更大的数据可以确定更好的模型,带来更高的精度、更快的收敛。同时,旷视天元具有高加速比、亚线性显存节省技术等特性,因此可以轻松完成更大容量的训练。


  目前,Brian++天元框架除了帮助旷视在科研学术方面取得优异成绩,也已在产业界落地应用,赋能企业。

  开源框架百家争鸣,共建AI生态

  人工智能在近几年快速的发展和应用引起了广泛的关注,关于底层人工智能框架的发展,CPS中安网曾在《中国安防人工智能发展产业指南》详细给出目前市面上包括谷歌TensorFlow,加州伯克利分校Caffe,百度PaddlePaddle,Facebook的PyTorch,微软CNTK,谷歌Keras,亚马逊MxNet等主流框架的整理信息。

  Brain++天元框架的诸多底层创新确保了其技术的国际领先地位。同时对于“目前国内计算机视觉公司相关产品和应用的研发主要基于谷歌、微软、亚马逊、Faceebook 等国际巨头的框架”的现状,旷视天元框架的开源无疑是极为重要的,同时也将为人工智能上层应用创新带来更多的可能性。


  据悉,旷视此次发布会上开源的是天元框架Alpha版本,计划在6月和9月分别提出Beta版本和正式版本,并会在OpenAI和GitHub同步发布。同时伴随着天元框架发布的还有旷视的在线深度学习工具MegStudio以及汇聚顶尖模型的ModelHub。

  旷视科技CTO唐文斌表示,“天元”一词指代的是围棋棋盘的中心点,也意味着万物的基础。旷视希望天元框架能够成为中国人工智能的基石,同时也希望在Beta版本和正式版本之间,有更多的人来贡献code,给出建议,提出批评,一起共建更好的AI生态,创造更多的价值。

责任编辑:yxshi