社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

旷视开源深度学习框架天元!动静合一,训推一体,落地边缘设备

大数据文摘 • 5 年前 • 706 次点击  

大数据文摘出品

作者:刘俊寰


疫情中的深度学习领域又有大动作。


3月25日下午,旷视科技举办线上发布会,宣布其自主研发、全员使用的AI生产力套件Brain++的核心深度学习框架——天元(MegEngine)开源


回溯2017年,AlphaGo与柯洁的围棋大战让人叹为观止,也点燃了不少科研人员对AI的研发热情,其中,支撑AlphaGo运转的底层技术框架是谷歌的TensorFlow。但其实,早在2014年,旷视就已经着手开始研发其深度学习框架MegEngine,在过去5年内,这套深度学习框架被旷视全员使用,也支撑起了整个旷视的科研及产品化进程


现在,这套深度学习框架终于开源啦!这也是本月继清华Jittor之后,又一个开源的国产深度学习框架

 


作为旷视绝对招牌之一,MegEngine是什么,有何特点?在旷视的发展历程中,它做出了哪些贡献,文摘菌在这里为你一网打尽~


AI时代的三位一体生产力平台


开源发布会上,旷视联合创始人、首席技术官唐文斌用厨房来做比喻,解释旷视的三位一体生产力平台——Brain++。



唐文斌介绍道,AI系统存在两大基础设施,芯片平台和AI生产力平台,后者涉及到数据、算法、算力等多方面问题。


什么是AI生产力平台,它就像是一道美食,需要原材料、一口好锅和一灶猛火共同烹饪炒出,以Brain++为例,数据、算法、算力分别就代表了材料、锅和猛火,今天就是这口“锅”亮相的时候


天元MegEngine深度学习框架官方网站:

https://megengine.org.cn/



简单回想一下人工智能发展初期,想要训练出一个AI模型,至少需要一两个月,而且开发者要通过手敲代码完成计算过程,深度学习社区基本上被TensorFlow和PyTorch垄断。因此为了快速进行算法实验,落地实际工业场景,我们需要的是一个具有高性能、可复用和能灵活迭代的AI算法平台,要打造这个平台,就必须从计算性能,平台易用性,满足真实业务场景需求等各个方面进行考量。


旷视Brain++就是这样的一个系统,天元就是其中核心模块,唐文斌说,“天元”取围棋盘上的中心点之意,就是要做到训练推理一体化、兼容并包、灵活高效


自2014年研发,2015年正式投入使用,如今旷视所有产品都使用了天元框架,整个过程可谓是来之不易。


今天天元开源代码共35万行,包括78%C++,17%CUDA,5%Python。唐文斌大方地承认道,今天发布的是Alpha版本,6月份会发布Beta版本,9月份发布正式版本



他也很诚恳地表示,“所有程序员都知道,一个代码自己用和拿出来和别人分享的差距有多大。”因此希望有更多人对这一发布版本给出批评建议,共建更好的产品九月份推出正式版本,即日起向企业开发


发布会上也公布了代码的托管地址,感兴趣的同学不妨一试。


GitHub地址:

https://github.com/MegEngine/MegEngine



训练和推理一体化,适配不同框架接口


据介绍,天元系统共分为五个层次:计算接口,图表示、优化与翻译、运行时管理、计算内核


可以从图中看到,天元支持Python和C++接口,支持静态图和动态图表达,也支持自动求导器、图优化、图编译。



传统的训练框架和推理框架是分开进行的,也就是说,系统要先经过训练再接受新的格式,在推理框架上适配不同的场景,但是在两者转化过程中会遇到算子无法支持、手工无法优化、大量冗余算子等多种问题。


天元系统的训练和推理是一体的,因此无需进行模型转换,同时,系统内部内置有模型优化,可以有效降低手工优化的误差,精度和速度都能得到保证。



静态图和动态图之争也就是TensorFlow和PyTotch之争,但是两种框架真的不得兼得吗?天元给出的答案是,可以。动静合一就是天元的做法,从结果上看,使用静态图提速约5%-20%


在学术界和工业界都会遇到框架接口不同引起的各种适配问题,天元在此也提出了解决方案,那就是兼容并包。天元采用了Pythonic风格API,可以很自然地被用户接受,函数的命名也尊重了以往的传统,可以直接导入PyTotch Module,方便模型复现和实验。



在生产环境上,天元也做到了“灵活高效”,不仅在许多算法上都取得了领先的性能,在与其他框架进行对比时速度也完全不输,同时,天元还关注到了显存和片上内存的节省,天元系统在保证不影响速度的前提下实现了20倍以上的内存减少。



三大特点:“训得好”、“训得快”、“训得动”


在发布会上,旷视首席科学家孙剑表示,“天元就像我们的孩子”,他也就其三大特点进行了介绍,包括框架与算法协同、高效训练系统、大规模能力,用大白话来说就是“训得好”、“训得快”、“训得动”


孙剑表示,由于当前计算平台的特性差异比较大,无法用一种网络满足所有需求。


天元通过快速的算子算法开发,灵活高效的算子支持,Jit自动算子融合三方面,实现了端上的高性能,在自测和第三方测试中都取得了不错的成绩。目前也已经配备至国产智能手机中,加速手机的智能化。



在介绍第二个优点之前,孙剑提到,在计算机视觉挑战赛COCO中,旷视已经实现了三连冠,能取得这样的成绩,除了优秀的研究员、对比赛的理解,旷视天元系统功不可没。


旷视天元系统能够通过多机训练提速16倍,加速了创新周期,并且精度更高,而且也是第一次实现了从框架上支持超大mini-Batch训练,种种优点集中后,研究人员就可以在相同的比赛时间内测试更多的想法。



在Object365之后,孙剑表示,Object365 V2也在今天开放给大家,Object365 V2可以说是世界上最大的物体检测数据集,配备了365种常见物体,2百万张图像,2.8千万个人工标注,是COCO比赛数据集的16倍大。


面对如此庞大的数据集,孙剑表示,旷视天元完全“训得动”,高校加速比的多机训练、底显存消耗、亚线性显存节省技术、MegRay通讯框架、高效数据编码传输,这些特点都使得天元系统能够训练出一个精度更高速度更快的模型。



除了上述三个特点,孙剑让大家试想,1400多名研发人员共享高效计算资源是怎样的场景


他说,共享时每个研发人员都有一份独有的交互式训练模式,能够让每个人随时停下来调试,不仅如此,系统还支持多人同时在线训练、数据自动预加载,自动闲置资源利用、计算配额管理,这些功能的实现,也都是要得益于旷视Brain++。



对于Brain++,用此前旷视联合创始人唐文斌的话说就是,Brain++的“目标是让研发人员获得从数据到算法产业化的综合技术能力,不用重复造轮子也可以推进AI快速落地。Brain++还引入了AutoML技术,可以让算法来训练算法,让AI来创造AI”。


发布会上,旷视云服务业务副总裁赵立威就旷视Brain++进行了更深层的介绍。


具体来说,Brain++的架构分为三部分,核心模块就是最新开源的深度学习算法开发框架天元(MegEngine),其次是提供算力调度支持的深度学习云计算平台MegCompute,以及用于提供数据服务和管理的数据管理平台MegData。



他说道,AI加速着各行各业的创新进程,但是在AI具体落地过程中马太效应还是比较明显的。其中,以企业为例,企业在应用AI时遇到了不少共性问题,比如对数据的利用、数据隐私、模型效果、难以保证使用方法在生产过程中的精度和性能需求等等。


旷视Brain++也正是基于解决这些问题提出,赵立威介绍道,在框架基础上,旷视研究院提出“三位一体”概念,融合数据和算力平台,构建出集“算法、数据和算力”于一体的AI生产力套件Brain++,自动化、规模化、集约化生产算法,在Brain++的驱动下一一成为现实。



要让AI真正助力到具体行业种,去赋能传统行业,达到商业创新的目标,赵立威在最后也向大家分享了三个通过使用旷视Brain++成功的案例,并表示,“你也可以拥有专属的Brain++平台”。


在这里,文摘菌也为大家简单总结一下,Brain++的核心模块MegEngine,也就是天元系统,是以C++为基础,和其他框架使用异构架构的框架不同,MegEngine使用了计算图方式,进行分布式计算更为便捷。同时,MegEngine引入了旷视独家AutoML技术,训练一次,就能得到整个模型空间的刻画,降低了人力成本,也大幅提高开发效率。


天元系统可实现训练、部署一体化,能够支撑大规模视觉方向的算法研发,具体又分为计算引擎、运行时管理、编译和优化以及编程和表示四个方面。


本次发布会上,众多AI界大咖也纷纷送上祝福,中国工程院院士高文表示,深度学习是目前AI能够掀起全球科研热潮的重要原因之一,而另一个则是采取了开源开放的措施,旷视这次的开源是“一件值得祝贺的事”,也是“一件重要的事”。

中国科学院院士姚期智也表示,AI现在的地位就和过去数学和物理的地位很像,如何发展AI,这需要从两个角度考虑,一个是人才培养,一个是研究创新,其中,前者呼吁具有丰富交叉学科背景的人才,清华也在重点培养,包括开设智班和姚班,以及编纂AI教材,后者则需要产学研的结合,旷视Brain++正是工程化的代表

国产深度学习框架百花齐放! 清华开源首个国内高校自研的深度学习框架Jittor


先于旷视,3月20日,清华大学开发了名为Jittor的深度学习框架,这是首个国内高校自研的深度学习框架,这一框架的开源有望为深度学习社区提供新方案,推动深度学习框架国产化。

根据官网介绍,Jittor是一个用元算子表达神经网络计算单元,并且完全基于动态编译的深度学习框架。根据官网的定义,“研究团队将神经网络所需的基本算子定义为元算子”,而Jittor的主要特性正是元算子和统一计算图。

元算子非常底层,通过相互融合可以完成复杂的深度学习计算,体现出了易于使用的特点。研发团队表示,采用元算子的Jittor目前已经超越了Numpy,可以完成更复杂高效的操作。

在统一计算图方面,Jittor融合了静态计算图和动态计算图的优点,在易于使用的同时,提供了高性能的优化。基于元算子开发的深度学习模型,可以被Jittor实时自动优化,并且运行在指定如CPU、GPU的硬件上。

Jittor官网:

https://cg.cs.tsinghua.edu.cn/jittor/

GitHub地址:

https://github.com/Jittor/jittor


在设计理念上,Jittor保持着易用、灵活和及时的特点:
  • 易用且可定制:用户只需要数行代码,就可定义新的算子和模型,在易用的同时,不丧失任何可定制性;
  • 实现与优化分离:用户可以通过前端接口专注于实现,而实现自动被后端优化,从而提升前端代码的可读性,以及后端优化的鲁棒性和可重用性;
  • 所有都是即时的:Jittor的所有代码都是即时编译并且运行的,包括Jittor本身。用户可以随时对Jittor的所有代码进行修改,并且动态运行。

具体来说,Jittor的7大新特点值得关注



最近清华、旷视相继开源深度学习框架,再加上更早的开源百度PaddlePaddle,而据了解,华为也即将开源自己的深度学习框架,国产深度学习框架正在迎来发展高速期,希望借着这股东风,能够激发更多的人对AI领域的兴趣,参与到国产AI的建设中



实习/全职编辑记者招聘ing

加入我们,亲身体验一家专业科技媒体采写的每个细节,在最有前景的行业,和一群遍布全球最优秀的人一起成长。坐标北京·清华东门,在大数据文摘主页对话页回复“招聘”了解详情。简历请直接发送至zz@bigdatadigest.cn




点「在看」的人都变好看了哦!
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/56769
 
706 次点击