其中,TensorFlow和PyTorch是两个极端,PyTorch采取动态图灵活方便好调试适合学术科研,而TensorFlow采用静态图利于部署,更适合工业界使用,旷视希望能够为开发者找到一个又要好调试,又要好部署的方案。这次旷视天元开源,可以说为国产深度学习框架打了一针强心剂。相比市面主流深度学习框架,旷视天元上手更快,学习成本和迁移成本都更低。作为一家将AI成功落地的企业,实践是旷视最宝贵的经验。相比已经实现开源的框架,旷视开源框架最大的差异性,就是旷视是唯一一家AI本业的企业,旷视本身就是做AI Solution的,旷视的框架最能从AI实践解决方案出发。 天元是怎么诞生的? 众所周知,旷视是中国领军的AI企业之一。近年来横扫全球各大CV竞赛,获得27 项全球 AI 竞赛冠军。旷视数据、算法和算力三个核心组件都集成在Brain++体系里。作为一套伴随旷视自身6年AI产业实战经验的框架,天元不仅能够在AI竞赛擂台赛为旷视打怪升级加Buff,更撑起了旷视工程化、产品化的半边天。2020年,疫情当前,旷视为何突然选择把镇宅之宝公开,把绝密武器分享给业界呢?这还要从天元的起源说起。天元诞生——清华宿舍里研发人脸算法,3名实习生写下框架第一行代码旷视成立于2011年,由三位清华“姚班”学霸创立。早期,旷视使用传统论文方法进行算法研发。2013 年中深度学习刚刚兴起,旷视研究院开始尝试使用深度学习检测器,清华宿舍中一名实习生埋首两周,研发出一套人脸识别检测算法,即便在暗光条件下也能精准检测人脸,前所未有的算法性能技惊四座,于是旷视正式走上了神经网络(NN)解一切的道路。当时旷视条件艰苦,服务器、主板、显卡等设备都需要人肉从美国一件件背回,第一台用来训练神经网络的机器,是手拼组装而成的4卡游戏台式机。起初,旷视用Theano框架写模型代码,训练神经网络,跑一次训练要编译好几个小时,随着网络越训越大,越来越复杂,低效耗时的框架不仅令人崩溃,更限制了旷视中一些顶尖人才的创造力,旷视中的一些大牛开始摩拳擦掌尝试各种方式,比如在Theano等早期开源框架上简单包一层代码,解决代码冗长的问题,以期“炼丹工作更快捷一点”,但训练效率仍旧满足不了旷视发展需求,一套炼丹程序成不成可能需要3-5周才能得到验证。2013年底,旷视当时的研发负责人曹志敏提出打造一套能够打通数据、训练和业务的自动化算法研发系统Cycle++,不需要投入过多人力和时间就可以实现算法从研发到应用的自循环体系(旷视Brain++的早期设想)。于是,2014年初,旷视研究院3名实习生(贾开,李百恩,魏铭)第一行代码写起,不到半年的时间,正式诞生了旷视自研的初版深度学习框架——MegEngine。接下来为了追赶旷视发展的进度,研究院不断与业务深入沟通了解一线需求,并复现业务所需神经网络,又用了半年时间,在2015年年中完成了自研框架与旷视内部所有业务的接轨,旷视业务线上的模型全部换成了自研框架训练出来的版本。2015年11月9日,Google正式发布并开源TensorFlow。而旷视研究院的几名实习生坐不住了,因为他们惊奇地发现,TensorFlow接口、理念等设计思路上竟惊奇地一致。TensorFlow的开源给旷视的自研框架造成了一个巨大的冲击,那就是留存问题。既然大厂都开源了,旷视是否仍然有必要坚持做自己的框架?对此旷视内部分成了两派并进行了一场旷日持久的大讨论,最终决定通过科学的方式来进行决策,经过一次大规模评测,旷视研究员发现刚刚开源的TensorFlow性能并不理想,竟比旷视自研框架要慢10倍。这个结果让旷视更加坚定地走上自研道路。 27 项全球 AI 竞赛冠军背后,旷视绝密武器是“三位一体”Brain++随着旷视业务的加速扩张,旷视自研框架在业务实践中的优势已经凸显,算法训练周期从两三周缩减至3-5天。彼时TensorFlow还没有解决多卡扩展性问题,一张卡和八张卡的计算效率没有太大差别。但旷视的自研框架效率已经接近线性的加速比,于是开始疯狂购入八卡机。当时旷视环境艰苦,炎夏时节框架研发小组为了保障服务器能够稳定运行,甚至请制冰公司每天放置冰块进行物理降温,但高速运行的服务器太过于吃电,仍被大厦物业视为“定时炸弹”而反复警告。旷视从研发到业务全面向自有深度学习框架和自有计算集群的迁移,标志着旷视数据、算法和算力三个核心组件正式完成“大一统”,自此旷视AI生产力平台Brain++雏形初现。2017-2019年间,依托旷视Brain++大规模分布式训练能力,以及业界领先的分布式计算技术训练出的超大规模深度学习模型,旷视累计斩获 27 项全球 AI 竞赛冠军,并开发出大量部署于云端、移动端、边缘端全计算平台的先进深度神经网络,为个人物联网、城市物联网、供应链物联网三大垂直场景赋能提供强有力的支撑。为了推动AI技术加速落地,让更多的开发者和企业用户使用 AI “源力”,旷视于2019年开始筹备将Brain++最核心的深度学习框架开源,并为 MegEngine 起了一个中文名字——天元。这期间框架研发团队可以说是经历了一场浴火重生,需要把原来封装好的代码分解再重组,以适应广大开源用户的使用体验。授人以鱼不如授人以渔。旷视开源深度学习框架的原因很简单,就是希望把自己用着好的东西拿出来分享给大家,让有志于学习 AI、用 AI 改变世界的开发者们,可以更加简单高效地用 AI 去创造,实现AI+产业降本增效释放生产力,另一方面,框架代码开源意味着接受群众检验的同时,也能够激发出更多的技术贡献者让它变得更好用。目前,为了进一步提高研究员在训练上的便捷性,旷视天元(MegEngine)正从传统的静态图计算模式向动态的方向转变,未来随着天元的开源,Brain++各项能力会逐步向外开源开放。 深度学习简单,为普通开发者打造AI界的“炼丹炉” 旷视认为要想解决无限场景中层出不穷的新问题,就需要无限的算法。而要获得无限的算法就要先建设AI的基础设施,在旷视眼中,只有两样东西能够被称为AI基础设施:AI芯片和AI底层的平台级产品。AI芯片大家都很清楚是AI的计算平台,而对于AI底层的平台级产品,旷视联合创始人兼CTO唐文斌给出了一个具体的定义:AI生产力平台。在旷视内部,已经有了这样一个生产力平台——Brain++。Brain++是集数据、算法和算力为一体的大平台概念,核心能力包括数据的处理、清洗和管理能力,算力的共享、调度和分布式能力,算法的训练、推理及部署能力,可覆盖从 AI 生产(输出算法模型)到应用(实现算法工程化封装)各环节。简单来说,Brain++就是旷视为AI打造的一套Visual Studio,是一个开发工具集,目的是有效解决 AI 研发门槛高、成本高和效率低的问题,为产学研各界提供一站式、全流程的人工智能专业解决方案。旷视在发布会中提到,将通过开源和开放的形式逐步将Brain++的能力与业界共享。业内喜欢用“炼丹”来比喻算法研究,那么数据就是金木水火土等各种矿物或自然元素,而框架就是用来炼丹的炉子,算力就是炼丹炉下的火。元素全不全,炉子好不好,火旺不旺决定了AI开发者能不能练出一颗的AI的灵丹妙药。从旷视的开源发布会可以看出,旷视的院里已经有了一套设施完备的炼丹房——Brain++,而今天,他们打算把他们的炼丹炉开源,免费给大家使用,至于炼丹的原材料和柴火可以根据用户需求合作使用。开源不意味着完美。旷视研究院高级技术总监田忠博表示,此次开源所发布的是天元Alpha版本,并计划在6月份的时候提供第一个里程碑版本Beta版本,在这个过程中旷视号召更多人能够对天元提出批评、给出建议、贡献code,唐文斌指出:“也许下一代天元并不是由旷视的研发团队做出来的,而是与你一起共创出来的Beta和正式版本,所以我们也希望跟大家一起来共建更好的深度学习框架。”所有深度学习框架的存在都是为了方便开发者,天元站在前人的肩膀上是青出于蓝而胜于蓝,拓展了深度学习开源框架的新版图,也为开发者们提供了新的选择。天元开源地址和交流社区入口 那么旷视的这个炼丹炉究竟好不好用?发布会上,旷视公布了天元在GitHub和OpenI的代码托管地址,同时发布了一个叫做MegStudio的在线深度学习工具和一个模型中心ModelHub,支持开发者开箱即用。其中,ModelHub汇聚了全球顶尖算法的一些预训练的模型,和旷视研究院一些最新的技术、研发成果。旷视表示,更多 SOTA 的模型正在增加中。 想尽快上手一试?天元 MegEngine 深度学习框架官方网站:https://megengine.org.cn/GitHub 开源地址:https://github.com/MegEngine/MegEngine写在最后的彩蛋:天元与新智元 旷视是新智元的融科邻居,特别有缘:新智元的所有办公室、会议室都是“天”字打头,有一个办公室的名字恰好就是“天元”。旷视“天元”发布,但愿天时地利人和,新智元愿携手“天元”,与中国数以百万计的开发者一起创造学AI用AI的美好新天地。【视频:新智元创始人、CEO杨静女士寄语天元】