2020 年我们应该选择哪一种深度学习框架?现在又有了一个新选择,据可靠消息,来自旷视 Brain++的 核心深度学习框架即将于 3 月底开源。旷视将通过开源和开放的形式将其强大的算力、各类 SOTA 模型和框架资源赋能给所有开发者和高校师生使用。
这一完全由国人自主研发,曾经支持过旷视所有领先技术的框架,势必将会引来人们的广泛关注。
在重磅介绍 MegEngine 之前,我们不得不向大家介绍一下旷视的人工智能算法平台——Brain++。旷视首席科学家、旷视研究院院长孙剑曾表示:「旷视 Brain++ 让规模化算法训练成为可能。」简单地理解,拥有能批量生产算法的 Brain++,对旷视来说就是生产力的跃迁。让旷视的开发者来从拓荒期快速走上现代化的进程。
旷视 Brain++总体上可以大体分为三部分,其中即将开源的深度学习算法开发框架 MegEngine 是核心,其次是提供算力调度支持的深度学习云计算平台 MegCompute,以及用于提供数据服务和管理的数据管理平台 MegData。起家于计算机视觉的旷视之所以能够快速发展,屡屡在 AI 竞赛中屠榜,其背后的奥义在于:旷视通过 Brain++实现了算法创新上的小步快跑和自给自足,再进一步深究,其成功最根本的原因在于旷视的核心框架效果确实非同一般。
然而在各家厂商不断开源 AI 工具的今天,旷视将自己的「杀手锏」推向整个社区究竟经过了何种考量?这还要从深度学习框架的发展历程说起。
国产深度学习框架之路
什么是框架?就是前人已经开辟了一条路,后来者只需要跟着这条路走就对了。
众所周知,人工智能风雨六十余载,是深度学习的出现让人工智能产业的发展曲线走向新的拐点。然而早期的研发人员没有任何「前人之路」可走。在深度学习的萌芽时期,Theano 这样的元老级框架就曾指导我们写出第一批强大的神经网络;而后 TensorFlow 等继承者让神经网络的编写逐渐变得像搭积木一样简单。
深度学习的第一批探路者很多都是海外的知名学者,其背靠的深度学习框架也多是海外开发者创建与维护。从最开始蒙特利尔大学与伯克利大学提出的 Theano、Caffe 框架,到现在谷歌与 Facebook 维护的 TensorFlow、 PyTorch,深度学习框架的主流已经从学术机构转向了科技巨头。
既然框架基本都是开源的,国内科技企业还需要重新自研一套吗?答案是肯定的,之所以 DL 框架从高校转移到企业,是因为AI从不是局限于象牙塔里的学问,而必须面向真实的场景问题;是因为它们能用于生产,能作用于各种实际业务。目前国内有很多技术领先的科技企业,它们都有着独特的业务场景与问题。这为研发自主的深度学习框架,构建更完美的硬件、算法系统提供了契机。百度开源的 PaddlePaddle 在自然语言处理等方面具有优异的积累;华为即将开源的 Mindspore,强调了软硬件协调及移动端部署的能力。
对于开源工具的选择就像「什么是最棒的计算机语言」这个问题一样,开发者们各有偏爱也各有槽点,从目前形势来看 PyTorch 和 TensorFlow 无疑是最流行的,国内的框架正积极发展。
但作为计算机视觉技术全球领先的创业公司,旷视研究院内部却从未用过 TensorFlow 或 PyTorch 来做 AI 技术和产品的研发。因为旷视成立当初,AI 开发工具就是匮乏的,旷视在拓荒的过程中形成了自己的一套打法,造出了自己用起来顺手的一套工具。
2014 年,旷视研究院搭建了 Brain++ 的核心引擎——MegEngnie,并将这套算法框架在公司内部推广使用。随着旷视在海量的计算机视觉任务和业务场景中的日积月累,这套深度学习框架在旷视已经被打磨的锃亮,旷视有 1400 多名研发者,他们都在使用自己的框架训练、部署算法,即便有新同学加入也能快速学习上手,融入到旷视的研发生态中。
旷视深度学习框架 MegEngine 整体架构
据了解,正是依托于这套贯穿公司研发全流程的框架,旷视开发出了一系列可部署在云端、边缘侧以及移动端的深度神经网络。其中对业界影响较大的比如 ShuffleNet,这是一套极高效的、轻量化移动端卷积神经网络, 可以在基于 ARM 的移动设备上实现比 AlexNet 快 20 倍的速度,效率比谷歌的 MobileNet 还要高。
发展到今天,旷视 MegEngine 已经经历了 5 年多的打磨,在深度学习框架的基础上,旷视将这套 AI 开发工具升级为一个套件工具,将数据管理和计算资源统筹与框架整合为一个平台——Brain++由此诞生,至少对于旷视来说,这套三位一体的算法平台是提升 AI 企业生产力的根本。
正是有了这样端到端的解决方案,旷视在世界各项人工智能竞赛中屡屡夺冠,2017 年至 2019 年间,旷视曾一举拿下 COCO 三连冠。COCO 是人工智能领域最具影响力的通用物体检测挑战赛,在计算机视觉领域享有很高声誉。
旷视这套生产力平台的高效和易用性来源于实践。依据业务的真实需求构建框架,是一条更加面向实际的开辟之路,国内各大自主 AI 框架都在积极探索着它们的方向。而对于开发者而言,跟着它们探索的成果,就能针对国内业务场景做出最合适与好用的算法。正因为自主 AI 框架很有意义,旷视等公司的努力,也得到了国家的支持。
2019 年 8 月,在 WAIC 人工智能大会上,旷视和华为、京东、中国平安、小米等企业一同入选了国家人工智能开放创新平台。在图像感知方面,科技部宣布将基于旷视自主研发的人工智能算法平台 Brain++ 及整合能力建设「图像感知国家新一代人工智能开放创新平台」,该平台将面向全国科研人员开放,帮助实现先进深度神经网络在云端、移动端及边缘端计算平台的部署。
轻快好省,旷视 MegEngine 从自用走向开源
旷视内部研发人员根据自用经验介绍,MegEngine 的架构先进且支持训练推理一体化,开发者可以利用最新的技术、最合理的 API、最好用的展现方式实现自己的构想,在性能、易用性等方面都有独到的特点。
目前,旷视 MegEngine 主要支持旷视内部的算法开发工作,尤其是计算机视觉的深度优化等和大规模分布式训练。经过 5 年工业实践与「身经百赛」的验证,旷视 MegEngine 正逐渐走向成熟,一些独有的特性也逐渐凸显。
首先在运算速度上,旷视 MegEngine 具备高性能计算核心,动态静态结合的内存优化机制运算速度更快,且占用更少的内存资源;其次在易用性上,MegEngine 封装了平台细节,且接口兼容 PyTorch,新人用户可快速上手;最后,MegEngine 还支持多种硬件平台和异构计算,整个框架既可用于训练又同时支持推理,实现模型一次训练,多设备部署,能够免除了不必要的转换流程导致的性能下降和精度损失。
除以上性能,MegEngine 据称也为 IoT 和视觉任务进行了特别的优化,广泛支持各种芯片。通过领先的量化计算支持,其可以通过统一量化模型来支持多种设备,同时支持低于 8bit 的网络推理。
坐稳计算机视觉大厂、AI 独角兽位置的旷视,在 AI 产业的路上一路披荆斩棘,如今他们希望将自己用得得心应手的开发工具通过开源、开放的方式 回馈后人,帮助高校师生、传统产业和中小企业用于人工智能算法开发,以期降低传统产业与人工智能技术融科的门槛,激发更多人参与到人工智能生态的建设中来。
据埃森哲近日发布的《人工智能:助力中国经济增长》报告预测,到 2035 年,AI 有望将中国经济年增长速度从 6.3% 重新提升至 7.9%。在未来,人工智能将为经济发展贡献力量,而在这个过程中,我们会掌握越来越多属于自己的核心技术。
旷视 MegEngine 的开源,或许会成为一个开始。