“天元”开源,旷视抢占人工智能棋局中的天元位置

2020-06-08 10:58刘京运
机器人产业 2020年3期
关键词:开发者开源框架

刘京运

在围棋中,天元代表着棋盘正中央的星位。如今,在人工智能领域,天元有了新的含义,它代表了旷视深度学习框架MegEngine。从命名可以看出,这一深度学习框架对于旷视而言尤为重要。然而,正是这样一个历经6年不断打磨完善的智慧结晶,在今年3月选择了开源。

3月25日,旷视以线上发布会的形式宣布开源深度学习框架MegEngine,并正式将其中文名定为“天元”。旷视联合创始人兼CTO唐文斌表示,此次开源的代码约有35万行,会在OpenI和GitHub中同步发布。

“在算法优先、数据驱动的人工智能时代,人们期待着有一个可以为社会大众、不同行业开发建立自己的人工智能系统的操作系统。也正是在这样的一个时代,旷视向社会发布了天元深度学习框架开源系统,我向你们表示祝贺。”发布会上,中国科学技术协会党组书记、中国科学院院士怀进鹏通过视频表达了对旷视开源天元的关注和期待。不仅如此,姚期智、高文、沈向洋等人工智能领域的知名学者和专家也纷纷通过视频表达了自己的良好祝愿。

天元究竟是什么?为何会受到行业大咖的关注?天元的研发始于2014年,诞生以来为旷视的算法突破提供了强有力的支撑。“旷视目前所有的算法都是基于天元MegEngine这个框架来训练和推理的,”唐文斌说道。旷视首席科学家、旷视研究院院长孙剑更是将天元比作旷视的孩子,“它今年6岁了,我们非常喜欢它”。然而,对于这样一个耗时6年不断打磨完善的核心技术产品,旷视为何会选择开源?

众所周知,人工智能已在诸多场景中实现了落地应用。旷视发现,不同场景对于算法有着不同的需求,而场景具有无限性,这就导致对算法的需求量十分庞大,仅凭单一企业根本无法填补需求空缺,这时就需要借助AI基础设施创造出更多的算法。

什么是AI基础设施?唐文斌给出的答案是芯片平台和AI生产力平台。其中,芯片平台能够承载AI的计算,而AI生产力平台可以释放生产算法的效能。旷视将AI生产力平台Brain++的深度学习框架天元全面开源,可以让Brain++的能力服务于更广大的开发者,从而降低算法的创造门槛,产生更大社会价值。

四大特性解决实际痛点

旷视研究院高级技术总监田忠博介绍,天元的整体架构可分为五个层次,自上而下依次是计算接口、图表示、优化与编译、运行时管理、计算内核。结合这种架构设计,田忠博为天元总结了四大特性:训练推理一体、动静合一、兼容并包、灵活高效。凭借这些特性,天元可以在实际操作中帮助开发者解决痛点问题。

在传统的深度学习研发流程中,训练框架和推理框架往往分别设计、分别实现,其中涉及到模型转换。在转换过程中常常会遇到一些问题,需要人工进行优化,有时会引入大量冗余算子,致使模型的性能和精度不尽如人意。天元训练推理一体的特性,可直接使用训练得到的模型进行推理;能够保障训练实现的速度和精度在推理时保持一致;训练结束后,模型在跨设备推理和使用时,能够保证精度对齐;内置的自动模型优化模块可以简化研发流程。

靜态图好部署,动态图易调试,二者的优点能否合为一体?旷视在设计天元时一直在思考这个问题。借助动静合一的特性,天元可以帮助开发者实现动静态切换,采用动态图开展原型的研发和调试,借助静态图完成部署。

目前,深度学习框架众多,不同框架的接口有所差异,开发者在进行学术交流时需要了解不同的框架知识。如果要在不同框架中复现模型,更是需要投入较大的学习成本。为了简化这一问题,旷视在设计天元时就致力于将其打造成为一个兼容并包的体系。天元采用Pythonic风格的API,可以让Python的使用者自然地接受。此外,函数的命名风格和参数设计细节,也会尊重Python社区的原有传统。旷视在计算机视觉领域拥有独特的积累,因此天元还融入了旷视专为计算机视觉特别优化的算子,可以为开发者进行计算机视觉相关研发提供更多便利。

对于人工智能公司而言,有些时候会面临众多计算设备和场景,如何才能在每种设备上打造极致性能,从而输出优质的产品和服务?天元秉持灵活高效的原则,借助高性能算子库,充分释放不同设备的算力。通过与参考框架的训练性能展开横向对比,天元在主流模型上展示了出色的速度表现。同时,在CPU的推理场景下,天元也表现出了良好的性能。旷视发现,如果要将算法更好地部署在各种设备中,或者利用现有设备训练更大模型、支撑更多种类的算法,需要采取高效的内存优化策略。因此,天元内置了高效的内存优化策略,可以降低训练时的显存占用。此外,通过采用亚线性内存优化技术,天元还可以在保证计算速度几乎不变的前提下大幅提升训练能力。“我们在内部的一些评测中,可以实现某些大模型20倍以上的内存节省,速度几乎不变。”田忠博说道。

训得好、训得快、训得动

天元可以实现框架与算法的协同,做到训得好。孙剑表示,计算平台之间存在很大的差异,基于这些差异,开发者无法设计一种网络满足全部需求。天元可以根据不同设备的计算特性,协同设计网络结构、开发新算子,ShuffleNet就是协同设计的成果。如今,ShuffleNet在智能手机人脸识别方面实现了出色的应用。

天元是一个高效的训练系统。MS COCO挑战赛中,旷视在2017年、2018年、2019年连续夺冠。孙剑指出,这其中非常关键的优势在于旷视拥有天元这样训得快的系统。天元极大地减少了创新时间,可以在单位时间内完成更多测试,快速推进研发人员对困难问题的认知。

天元具备大规模能力。旷视与北京智源人工智能研究院发布了Objects365,目前已推出Objects365 V2版本。该数据集中有365种常见物体、超过200万张图像、超过2800万个人工标注框。面对大规模数据或大模型,天元可以实现训得动,能够在较短时间内完成训练。

旷视此次发布的是天元Alpha版本,预计6月会发布Beta版本,9月发布正式的1.0版本。“希望更多人能够对我们的产品提出批评、给出建议,一起来贡献Code,”唐文斌表示。

“如果把天元比作一个小孩,今天可能是他走出房间去迎接阳光,想为这个社会去做更多事情的时候。”在发布会的最后,唐文斌说道,“同时,也希望社会各界的朋友对他有更多的呵护,对他有更多的帮助,我们一起来帮助他真正地成长。”

围棋中,天元代表棋盘正中央的星位,而旷视能否在人工智能这盘棋局中占据C位,我们拭目以待!

猜你喜欢
开发者开源框架
校园武术“学、练、赛”一体化实践探索
框架
五毛钱能买多少头牛
2019(第十四届)开源中国开源世界
2019开源杰出贡献奖
浅谈框架网页的学习
基于Jmeter对Node框架性能的测试研究
“85后”高学历男性成为APP开发新生主力军
16%游戏开发者看好VR
一元一次不等式和一元一次不等式组