2024AI技术框架结构.docx
2024AI技术框架一.为什么要做Jittor鉴于国外主流深度学习板架Tensorftow和Pytorch已经梅H起了宛事的产业悠和庞大用户群体.那为什么潴年大学要辩发"计图“(Jittor)这样一个AI框架?为了回篝这个问题,首先介绍了深度学习框架的一些背景知识.认为,以深度学习为代表的新一代人工智能技术已妊产生非常大的影响,浅度学习在J1.I种程度上已舞成为科学研究和工程应用的一种新范式,数系驱动的思想已好米入人心。机朗学习程架是人工智能的一种核心技术,它不仅要负提机器学习、模型的训嫉.推理管理人工智能应用所需要的大城横数据却模型,而且还要负责底层的计算设备调度和资期备之上,在应用之间的一个番架层或者平£层.0总值ew识别ZWt制日文本时pyt6rch6caffe2IeasofF1.ow(intei)OGoOgIenvDA*申请.所以Jf1.下IB1所示,它是在计算设人工智能应用机器挈框架计算设备图1:机器学习程策所处;三次接下来回反了深度学习框架十年来的演进情况“2008年图灵奖获得者B扁方HiWi号的实里空提出了第一个比较成熟的椎策Theanoe这个框架更定了很好的戛处,但是很遗憾在2017年就停止整护了,M±三戌员后来参加了Tensorf1.owe在2013年时.加州帕克利大学博士生贾扬清卖出了Caffe平台.后来他加盟了谷欧和Facebook,并在Facebook期间发布了或具影峋力的Caffe20但真正在工业界、学术界产生重大推动作用的,是2015年由谷歌开赛的TenStXf1.OWe因力谷歆的强大影喇力,其2017年发布的TenSOrf1.OW1.。版本在学术界一度取得了垄断俊的应用地位。众所周知.在2017.2018年左右,嫌大多数和深度学习相关的论文实的都是用Tensorf1.ow来做的。这股势头直到2018年PytorCh1.0的出现才发生了变化。Pytorch最初发布于2016年,特色是提出了动态图的概念。到了2019年,学术界将近70%的文单实辑是用Pytorch这个平台来做的,由此可一Ja功态图思想.的主导性地位。深度学习框架的十年间演进2008#牛USA实於室theano6caffe22O13i5*,1.)BV1.C2017caffe2><A(facebookN"2017.停止维妒,转FjTF2019.发布20,增加eafgemodefacebook2O15Jf¾gCCWe(2O17.RW1.oJTensorFIowGOvg1.e2018发布102016发布0,引入,力态用PYTbRCHfacebook图2:濠度学习框架的十年向演进认为,我们国家人工智能研究尽管非常活疚.也取博了很多大的进展,但是整体上的研究布局并不均衡:我们在算法应用方面做得比较多,在学习平台壑策方面却做得比较少.而且我£1的算法应用研究大多是基于国外平台TenSOrf1.6v和PyorCh等,春被咔脖子的风险。这美风随的透我已经在蔓延,比如华为清单事忤中.华为松谷歌萦用安卓系统比JD今年1月6号美国勃朗普签胃法案,要禁止人工智能软件的出口等,指出为什么做中国自己的机88学习率6T?首先是自主创斜的善姿,比如EDA,中国在20世妃90年代在EDA翼法上是非常较先的.但由于没得注里平台研发和发麻,号姓现在非常被动。第二,做平台也是人才培弊的需要我们提要培养自己的一代新的人工智能顿军人才.JittOr计图天元MindSporeI2016jH¾iJF141.s动态图支将BaiB2020320正式发1<i2020.5发布1.I版本轩增段卜网络,分布大笔MEGV1.1.arm2020.3.25正式发布0.3版2020.5发伟0.4饭本业线性内“优化.ARM峰第AHUAWE1.20203.27IE式发布0施本2020.4发布0.2IKiffi3栗度学习在柒在中国的进Ig那么.构建机器学习平白的Ift点在稀里?认为它首先要对机器学习算法本身有深刻的双集,对图形图像威用,也包括自然谛离等要有精眄的把握,特别亶要的是,我打需要对底爱系统软件要有很好的掌握。介绍.他们团队足管是供图形学的,但是在视察、机器人.操作系既方面已经有很多积巽.比如从2009年开始.团队在操作系蜕和我忤安全方面,已经在包括ACM.TOCS.USEN1.X以及ATC等等姿学术会议上发表了10多一文章.这样通过构建机器学牙平台,可以使得同学们杷机需学习、图形用像应用处软件系蜕等结合起来.以上内容,便是计图(JWx)平台诞生的主要缘;二、Jittor框架的架构清华计匣(Jittor)机器学牙框架发布于2020年3月20日.它基于元算子加疣一计算用来构建“介细.计图目的尽管程存很多不足.但是已经实现的部分相比两个国际主流平台Tensorf1.ow和Pytorch,性缝有5%-153%的提升.日前支持30+个价干网珞,27个主流GAN模型,此外还支持图像分类、图像检测、图像分割.机困人钝化学习等模型。如下图4所水.这个紫构的第一创新京是在系蛀层引21“统一计算图.机密学习框架的架杓有静态、动态之分,砂态图高效.动态图好用.但是这两者很雉兼得.计图则将它们融合在一起;能塔实现它的根本原因,在于计图的第二个创新京,即有一套元U子融合的理念在机器学习息架里算子非常多,它的开发和优化困屋比较大.计图金里通过元算子融合和动态域评优化解决这个极本性的何JS,应用层框架层算子层系统层2.1 计图平台的六个特性技下来.介绍了计图平台的六个特性:特性一:反向传播问但,元算子是反向传落闭包,它的反向传播也是元算子,那么元算子融合起来的算子(即合戌的算子),它的反向传?也是可以用元算子表达出来的.这杵就使得我们爱第把前向、反向的计算统一起来.也就是说Jittor可以跳一“丽和“反时计具这是井常要的一点.另外.计BB能第支持高阶与敢的计0.这也是现在很多机88学牙框架所欠缺的.特住二:算子动态给译和运行时优化。用户婚月的算子模受在运行的时候,会生成高性能代码,进行动态仁泽的优化。特性三:统一内存俵理.节省显存.计图把GPU和CPU笠一起来,GPU内存耗尽时可以用CPU弥补.当中可以供数变迁移,特住四:极筒的自定义货子开发功能.提出Code籁子,用户可以在Python中内连C*+.致行代科即可完成高性能算子的开发。特性五:靖肋根鱼迁移工具,Pytorch在墓在的学术界社区里面已是戌为主导的整架.计图希望架构接口能跟它相似.便于学生力上手.同时计图提供一倍迁哆功梃,使用Pytocch代码仅通过一fB操作使绫够方便地阱换成计图的代码.特M:自有的模型建,除了2020年5月30日发布的GAN银型芹、6月底发布的计图分割库A1.型库,更多模型库比如检测库、30点云库、30网格库等将陪康发布。接下来.点介绍了计图的两个创新点,2.2 创新点一:元管子爵合TenSorf1.OW有2000多个算子,Pytorch700多个算子,这么虚大的算子库的缩护和优化非常困珀,对用户来说不方便.计图通过对神经网络计算所需要的J1.本算子进行归纳总结分析攫出18种元舞子,并通过0子电合.可以岷的法所需要的算子.这是计图的基本出发力.只善要对元*:子做优化,效率很高,也容易开发,可以做统一优化。对于传统的机88学习,需要要跟一些深度学习算子比如卷根、池化等等打交通来支持应用,而计图的做法是由Jn-JS元算子房,通过3种关别的元算子构迨深度学习算子用做机器学习而用,包括:IC索引箱子.M索引化商道子*元购算子.元算子a深度学习算子I池化iHa*B.!批归一化用5:4星增If1.的元算子层冷百电蔚荷初届五?IJ1.,936:元算子分成三类第一类是量索引算子,它是一类一对多映射关系的算子。对于机器学习经常K到的运算.比如广播、康外、切».以及对一个向量短几份变成矩阵等.计图妣把这些作为基本的元It子.这就是所谓的重索引算子.重索引算子是一类一对多映射关系的元算子。常用重索引算子有:广播(Broadcast):卷积神经网络:二工二一HW::IaHaft?fc1*T1.i.填补(Pad)切分(S1.iCe)-u2m一1.iJ图7:索引算子第二类叫重索引化餐算子.比如累加、JR*.取均值操作,或把一个矩阵通过每行累m变成一个向量等经常存到的运算,将这些掇作基本的敏出来后,便可成为计图的一个元算子.重索引化简算子是一类多同疝福初庙:对一映射关系的元算子。'”"常用重索引化简算子有:累乘(PrOdUCt)累加(SUm)取均值(mean)1*eR神蛀网络m二二厅”I1.atHc(t!.第三种是元素级算子。比Jf1.加法算子.把网个元素相加变成新的向量,元素级算子是一类一对一映射关系的元算子。逐个元素的运算都属于元素级元算子059元素级算子为了三夷元算子之后,还有一个非常要的特点,就是它们是反向传播闭包的。索引反向传播是索引化筒,索引化葡的反向伯播是亶索引,元索级的反向传播还是元素椒的,比如加变减。这样,我们就可以用这三美元算子来构造机我学习的算子,比Jo卷枳层,计图使用广播、下标.亶扶.乘法和*加实现卷枳。O变匚二里索引II元素级匚卷积层图10便用元算子买现卷承层这样,有了卷积构迨之后反卷枳自动就内了.反向传播也可以用这个元算子自动构造出来,也是通过广?这种图作,排就变成化筒了。£11:元算7自动生成反向传播族积层O变.II元素级那么,计图元算子的完籥性如何?介绍,目前的元算子还无法檀噩全部机R学习的算子.比如在图像分类,图像分割,图像生成方面百分之目都能覆检.但是目标检濯只梏做到96%,实例分Iw则依到了93%等。对不掂覆盖的算子,计图讲提供一和Code算子工具,以完成100%算子双差.如下雷所示,元算子覆盖率的计算标准.力透应用使用的算子有多少种可以通过元算子其理,应用类由密像分类KGMIS像分窜Ptp1.>Z3,3槽或率100%IwSIO应用类型目标检澜实例分割3SSDMagRCNXFJIE率96%93%注:费盖率的计算标准为该应用使用隹少好可以使用元算子实现W12:元算子的覆貌情况2.3创新点二:统一计口图讨管图星深度学习梅架里面用来描述检型的数据结构,例如何恺明关于Resnet的论文中有一张很长的网,从顶上到底下.款是通过计算图把这个模型展示出来的。下图是一个医像分割的例子,给入图像的目标是生成谓义分副.震要通过卷枳.激活省等构造覆S1.这样的结构使是计算图”.4输入图片1.池化层出13一个匡像分寄樗经网络的计真图实例机留学习总架有动态静态之争,早期是静态图,它是把全图一次性发送到计算设备上做优化和计算。比如早期的TenSOrf1.<w就是这祥的。依入图片激活层i池化层.!Ur积层激活层S池化层O卷根层一次性把全图发送到计算设备上运行OV0814:静态计算动三三图Pytorch的想法是?S*子动态发布到计J1.设备上运行.这种模式下改代码很方便,允许用户对模型修灵话啊事.比如加一个卷枳层等.因此动态图的出现使得Pytorch抓住机遇一下超超了Tensorf1.ow,成为业界最主流的框架。动态计算图携入图片卷积层激活以-池化层将算子动态地发送到计算设备上运行计算设备等母。k0815:动态计算动.静态图的优点球京都很明显,静态图的代我是TenSOrtkW1.0,优点是高效.缺点是灵活性差:S态图的代表是PytorCh.包括后来TenSOrf1.6V2.0也采用了动无图.它的优点是易用、灵活.但是效率比SJt1.为了催读上述荫者不可兼弼的问题,计图接出了"SE-HWffi'.通过元*子融合的概念.通过反向传播闭包纪它们整合在一起,计图希望易用性和动态计算图一样好.效能跟静态图一样好,主要的思路是动态切分,把动态图切成静态于阴.对静态于图做优化。K16:故一计算图:统一静态计算图和动态计算法介绍,除了计算图整合在一起外计图实现了妥种统一第一是动态图和静态图的统一,易用、同时高效.第二是前向、反向管理的笠一,统一就理匍向反向图,支持高阶导致,第三是GPU.CPU内存管51的统一.来突破GPU显存隈制.第四是同步异步运行接口的统一.使得数变读取、内存挎贝.模81计算可以同时进行,提升慢签,第五是可以菅理多次迭代的计算图,使用架构可以酱迭代的进行融合优化。下面就是统一计算图把前向和反向计算图曲者融合起来的一个示意图,H广播-E1.-j-(y-j-ftgI'aa17:统一计算图:通过反向后播汨包.匏一匍向和反向计算图指出,传城机困学习框架区分前向和反向转播“筑一it*图希望把多次迭代的前向、反向拼接起来.减少大量的重生计募,提升灵活性和对话空间。所以一般来说,应用计图电紫,它的计JI性能上只要优化好了,一定会比Pytorch和Tensorf1.ow要快。传统计算图:p彘1悖彘统一计算图:反向前向UUU1.!B18:传蜕计算图与蜕一计算法在朝向后向传播上的比较下图对比了几个机圈学习框架:自动微分三个平台都是支持的.动卷图也都支持了.同步接口Pytorch现在没有,就一内存或在前两家也修不到,迭代M合也只有计图能做到.计图是有前3#性的、创新性的平台。3319计算图将SE比三、Jittor的特点与新迸展接下来,介绍了计图的五大H色1 .动态用理.在平台里内厦元算子谶济我,可以把PWhOn代码动态编许戌高性能C+代码。认为有笠专家谆价计IB更像一个修漫器,这并不正脸,因为计图的定位取决于平口是力什么人用务、用户是it,但它也不排除利用JS多软件工程.软件茶蜕的患想来自平台优化。比外.计图还内T1.1.VM兼容的优化安沃通(Pass),可以根JE硬件的设各自动优化*译代码,对C代码进一步优化,生成对底层设各友好的底层代码。AA1.gJJ3S20:计图使用动态S泽2 .管干网络.计田现在已是支持很多要的号干网经,比JaAIeXNet.VGG.ReeNHSqueezeNet.Inoeptton,GoogIeNet,ShuffieNet.MobiIeNet.MnaSNM以及最近支持的Res2Net,如下图所示踉Pytorch,计算性签在几乎所有骨干网络上都越得到很大的提升.resnetSOIB21:计图在骨干网络上的性靛提升3 .GAN模型库,GAN网络是非常著名的网络,在Pytorch社区里最爱我迎的就是两个GANe1.型pi×2pix和CydcGANt现在有27种主滋的GAN网型,计图都把它做了移植并做了分析。这些模型影响都非常大,有的引用达一万八千多次。这27种模型在计图平台上都能蹲到很大的住能里升.比JOWGAN-GPIS型,在计图上的性里是原来的2.83倍。最*名的是Cyc1.eGAN,在计图上的性能是原来的1.39倍,最差的也Jg做到1.03倍。认为,计图塾使得一半以上模型效能提升1倍以上.一半的模组捋标到200%,这是非常不容易的事情。CANTearCitoGAXYwrCitGAN201418575StaKAN2018869D。”Ccovo1.utioiui1.GAX20156186CoUP1.oCGAK2016802PiwPiI20175161Ewrgy-BAGdGAN2016734Cyc1.XN20174678BEGAN2017603Rswr>tiQGAN20174276PiM1.DA2017670Conditi<ma1.CAX20143217Bicyc1.eGAS2017457VasserateinCANCP20172822EnhancedSuper-Ref1.o1.utionCAS201836SIassorstoinGAND1.V20172822Ro1.ativiitxcCAX2018184InfoCAS20161S26MAC2017122ContextEncoder20161712BouManTzki"GAX2017&S1.eantSquar*«GAN20t71312C1.usterGAK201936AdyMXia】AU1.oCTnodwr20151193SciSUGAN201817Auxi1.iaryC1.assifierGAN20171152SoftaaxGAS2017UVX1.T17971使22:主流GAN埃型序Pi×2PixCyc1.eGANW/55S,<S55Y>333335333,4JW*6ZCf4602VFt<f99cfoc99,夕9夕夕夕夕夕彳99gqqq9q000000400J33333393.V“ydu,vyYV80SgQJgefgO"4X««««Bicyc1.eGANC1.usterGAN»23:GAN模型库部分模型生成效果SpeedRatio(%)图24:GAN模型左性能对比4提供一邮换功能,从PyIOrehSK到计图并不府用一空耀作系妣就常忙揖代码改了,原来的工作拿过来都可以用,帚助转换,非常方便。5分布式;在计图框架下,可以很方便运行多卡训球.洪月多机代码。比为公卡训缥就一个命令行.多卡训媒命令前面只加几个字符来搭定谀金,再增m前面一小段就行了。单卡训练代码python3.7-mjitter.test.test-resnet«分布式多卡训练代码mpirunnp4pyt11on3.7jittortest.testresnet#指定特定显卡的多卡训练代码CUDAVISIB1.EDEVICES-2i3mpirun-np2pytho3-7-mJ1.ttor.test.test-resnet围25:单卡调劣和分布式训炼接下来.介皑了计图正在推送的一些工作,第一,支持Res2net这是南开大学提出的新骨干网络。这个得干网络在很多应用上性缝非常强,而Je它做到计图平台后.除了让它本身性能很到外,在计算效能上还有10%的提升通过构建层间多尺度,实现更强特征表达,显著提升多种常见视觉分析模型性能 物体分类 语义分割 目标检测 实例分割 关键点估计 深度图项测Jittor上10%+能提升ResNetvs.Res2NetJResistANew,*a的akboneArchtKtxe,HETPAA<i.2Q2O.国26Res2Net神联网络骨干模型第二,实现了PointNet+.在实践中发理,计IB在分关的准崭性上己经超过了原来论文中的依据.从原来的91.9%提高到92.3%。模型代码已公开在J1.ttOrPneUne-first。参考费科计图的参考资源:hHpsMtt=/Mo1.ecu1.eGrapheta1.KM1.(18Vz1.-10Recommen(vandenBerget|V|:1M-1CKnow1.edgeGraph1.1.她a1.arx>17)|V|:1M-1OOM图2:图网络的3个示制近期,为应对全球新冠病毒CoVIeM9,亚马逊上海A1.实验空眼合其地合作伙伴刚刚完成了一项老药新用”的工作,构建了大规模药物,定位知识的浸DPKG(DrugRepurposingKnsFedgeGraph),以及一套完!1的用于药物定位研究的机器学习工具,以便帮助相关斫究人员更右效的对新53病毒进行药物定位研究。用于计算某种现成的药和一和新的疾病之间是否存在某种关联,从而判断这科现成的薪是否可以硬用于治疗相惧的疾病(M3)c这项技术已经获得了广迁应用,并取得了初步成效。 11oftop41areunderc1.ina1.tria1.sforCond-19 Comp1.ete1.yopensource卜ISs""hjb4Qm11n4drUK<CG图3:大理授为就亶定位知识BEi1.DPKdOugRcpurposingKnow1.edgeGraph)二、DG1.的开发过程、设计和性能DG1.从2018年初开始开发,至2018年底NeurIPS大会上正式次布了V0.1版本.2019年迭代了4个版本。一年半时间从一个学术界的科研成果转变为可以供产业界成用的壑架。目前最新的版本是VO43,预计今年内会发布V0.5版本,增加分布式训练功能,M1.-100kGCMCI0.02X<012M1.-1MGCMC0.62540.470.0560103M1.-I0mGCMCI1.KS<X>M0.6IH(X>M!B6:DG1.5PyG的性能比DG1.的设计理念足框架中立(frameworkneura1.rty),即在模型中只处理最少和或关里的部分(例如DG1.Graph),而不考意其余部分.例如自动求导、内存管理和稠密张量运算等都交给不同的平台处理。DG1.-开始也没在考启Fi己做精玳张量运算,经过实验,后期也寄希端张量运篝加入到了上述最少和最关键的都分。为了做到电架中立.模组在不同的也架下地起来有一些移植的工作量,理论上说性能叶会有区别,但DG1.做到了模型本身没再变化,而且性能影晌很小。DG1.的Pytor<的版本与PyG相比.在节点较少时.PyG优于DG1.而节点较多时,DG1.优于PyGe与TensorftoW原生的图网络GraPhNeIS相比,DG1.裳体更好(如图I. ModddawinheritanceOsO-.II. Sub-modu1.esandparameterIn1.tM1.ttMtonIII. Ffimewockjpecificopentonffi7:电架中立的代价三.强A1.张峥i为要他到强A1.,需要?E大图和小图两关用有机联系在一起.大图是马太效质的结果,有些特别大的图会变戌越来越大,比如全中国作为一张微博图或者淘宝支忖图。这蛀图的变化出现较慢,一个国内部的变化大.另一笑是整别小的阴.例JD一句话.一张照片或者一段视频背后的一个动态交换图这种国会快速生成。只有比上述旃类图结合起来.才雄锹到51A1.从这个角度来讲,馨要一个数括结构。假如把汉度学习看作一个算法.目助缺少一个数据结构,而算法和数衣结梅是紫密版系在一起的。张峥教授认为,JO果将深度学习,作一个算法.是没物鼓不结构碌支撑的.而图(Graph)的亶要性在于将非结梅化的数斑叟为结梅化的数钱,给深度学习算法提供了鼓为结构支媒。的其他底层东西.整洁5理解的AP1.(C1.canandStUitiVeAPISb这一部分同样是让用户能专注于写代码,可以轻松的通过调用APi来表达自己的>dea:可坦合重用性(ComPoSabiMybPyToreh中的很多,埃(b»oCky都是可黛用的,在iSitH己的模型时候往往继承nnMode1.这一气性,而设计好的模型本身又是一个mode1.这种模块之间的复合非常的容易,也可以很方便和其他人共享1.块:,丰富的工具片和生卷(RichEcosystemofToo1.sand1.ibraries卜PyTorch具有非常丰富的颈定文好的模IVY)Orttorchc1.sNt(torch.nn.Modu1.e):defIftic(se1.f):se1.f.fc1.torchnn.1.1.nearIBt64>8«1.ffc2-torch.nn.1.ir(64.1)dfforward(81I9x>:×totch.t1.u(>v1.f.Cc1.Iocwtd<(Ix-torch.dropcut(9p-O.S)Xetorchsqtnoid<se)f.fc2.forward(x)returnx*iDc1.udv<corchtorch.h>AtruetNet:?crnh:nn::du1.«(:fC1.(8/¢1.tc2t,”(rcgistcr-Bou1.c(rc1.,:c1.);egicrodub.(.fc2);FCQch:Tensorforward(torch:Tenserx)IX-r(三:re1.u(fe1.>>forw1.rd<x);X-torch:dropout(xr/p/:.r.);Xwtcrch:tsiioid(1.c2->forward(x)J;r,-ij:n×:trch三:nns51.11arFc1.rfe2;PYTHON图2:PyTOrch模型定义的PythOn和C实现接下来我们来看一个简单的例子.通过PyTocch来定义一个简单的神经网络。S2是定义楂SJ的代码.可以看到模型率身是一个nn.Mo<Je.其实这一模型本身也是复用了PyTorch预;E义好的原生nnMode1.,具体例子中的前向传播过程是一个全连接的nnMode1.。也可以在图中看到前向拓播过程中,还有re1.u激活、dropout等过程.这些都是通过PyTorch日将的API突现的,具有非常的便捷、清晰和高复用性的筋点。定义好的模里.同样可以作为小的模块来校其他更复杂的模里复用。从PyTorch的名字也可以出,最开始实际上援供的是Python的API,但是后来由于用户的反愦和部需求.后来也提供了C+的API,C+的API和Py1.hon的API息完至可以前应匹配的.所以息的来说两个语且根本的API没有做外的知炽学习开楮.从训堆一体化的代码电架中可以看到,在天元深度学习框架中训热推理非冷笥做Vaining,糙花,量化后就Ite券拿到最好精度的网络.同时性能达到最佳。这个中海过程.不需要再迸行杂的转化和变更就能完成.5.支持大!模分布式训练天元深度学习框架希望更好的支持大规模分布式训坏,因此使用的是MegRay统一电信库.SNCC1.UCX多种后端实现,支持多种网珞协汉。19.TCP.ROCE.GPUDIRECT.tt对网珞设施进行加速,非常简单和直接,也很容易试整和犷展新算法。在天元幅架中.依分布式是把这种集合送信,在右柒中作为欧生的并且可导的算子。这样可以非常方便地进行数据并行、模型并行或混合并行.SYNCBN或FC-SORmaX也更容同完成,更J8于优化.维护性很好。系筑内部集成了像ParamPack,把小的参数打包片计算.天元框架可以通过这样的技木.很大程度上保抑几乎统性.三.天元深度学习框架的未来开发路线Ba2020年3月,天元正式发布了AJpha版本,今天在北京智器大会上,正式发布了Beta版本050,引入全系列的ARMCPU的支持.刚才提到的量化和低比特支持也同步放出,希望这个版本对大家有更多的帮助,忖助大家用新的算法在工业界进行算法UI缥。JOT开m0812:开发路规天元在9月份计划发布10的正式版本,能婺主流的计算设备.汜框架的动态能力进一步升级,整体优化训炼推理的全市程。天元项目Gi1.hUb地址ht1.ps.,grthubxpfm,MegEngnMcgEngr>e四、怠结&答疑总结报告的内容,天元做浅度学习程架的核心设计理念是 具有强大的动静合一的计算图机制,更好的进行训练和推理. 灵活高效的机制,能等使它跑得更快: 认然推理一体化的方式,筒化Ift程: 面向大加槎分布式深度学习,这是A1.和汉度学习的未来。图11:横向Jr展的经济优2.5一站式深度学习平台OneBrain前面讨论比较多的是效率问题.一流科技除了解决效率的问M还矍解决黑用性和完备的同跳.即程架要在什么环境下去使用。一流科技提供了一套林常完整的一站式的深度学习平台,用K8S和docker管理各种各杵用户的作业.数貂集.横三!以及各种各样板架的镇像.i+B椎架费源管理图度学习«OneFIowTn*c<1.owPytorehMwrwKKU0(×*r基础设施ff>W9图12OneF1.OW一站式深度学习平台三、OneFIoW的差异化优筠框架发展到圾在为止不到10年时间,也经历了一些迭代.前期主要是学术界在研发短架.到石面基本是工业主号,特别是从TensorFIow-蜕天下.我后面PyTorch匍起,现在到2020年还有什么可以发挥的地方?袁进辉认为这是每一位深度学习框策从业者震要思考的问题“xnet国13:深度学习车架叁点下面是3SI度学习根架市场份被的调用.都是采用第三方的调研数38.比Jf1.找工作最流行使用什么根柒.GtHub松架的使用情况,以及学术界发表论文使用桩架的情况,BJtt*SJPyTorchN本和TensorF1.ow用户量不相上下。W14深度学习椎聚市场恰较从更梁的关摄用户揩标来说,袁道博认为最亶要的有三个维度一个是完漏Ij团用户您.要的名备号样工具是不是都有,训缄的、部署的、可视化的,推理的等等,另外一个是易用性.众所周知,PyTOrCh做得非常极致,但是还右一个技术挑StiRiW的维度还没有被攻克,那就是高效性.效率又分维设各效率和集群层面的效率。单设备效率更多的是在编译器层面,集群层面的效率就是横向犷展的效率,它主妾涉及分布式.分布式里面数据用亍相对来说是解决得比笠好的.但更大参数寓要的根0并行和淡水并行是现在开源框架还没解决的地方,一硼技想找的突破点是在这个地方.PYTbRCHmuBIiBnsorFtow图15:关健用户体助IS标下图是各个艳笑在完备性、易用性和高效性这几个维度上的优劣对比.袁进辉冷型OneFk2开浜之后给大家雷下的印象是它在效率上做得非常出色。OneF1.OW开源也在索伊接薮做准令,预计OneF1.OW在一个月之内就会和大家见面.食进理指出.一个新的框架需要有差异化的竞争优势,才有可能在市场上立足,图16:差弁化竞争优为什么OneF1.oW首先从效率上攻克代?袁逸超谈到,就像促珠辖Bfi玛修样,有两个路烧,一个是中IS境内的北坡,一个是尼泊尔的南坡,从北坡的中国境内刚开始较为容易,但是70米以上就非常因雄。南城在低高度处强风险,但再高一些就容易揩超。从柢架角度来说,Jf1.黑从St率先入手,就有点像从南城去感.从完备性和易用性角度去攻克的话戟有点像从北展去爬.对比一下就有点像各个框架的高度现在是不一样的.TensorFIOWsIPyToPh配的高度是非常高的.OneF1.oW的高度现在是低的.但袁迸婷认为后面OneFkW比我的容品程度会好一些,相信有机会更早把到最高用17:OneFtoW从寓效性走向充番性最后,袁进蟀希里这个枢荣要交的开源社区的开发省去评价和彝达,也在行业一些公”的BenChmarte.歙像缰£赛一样.很多常用的模批和很多常用的福架,可以放在搐台上进行比较,论输*是次要的,更要的是通过比较梃够在技木的发履上得到更多启发,最后逐未形成一个共识.比如框架从易用角度来说是不是一定要像PyTorch这么去做.从效率角度是不是一定要像OneFtow这个角度去停.大家在技术上可以形成螺虚式的上升。四、结语袁道蟀的这番报告.向我£)清晰地展示了一JR科技OneF1.ow怎样解决目前深度学习横向犷展遇到的第地。相比TenS<XF1OW和PyTO<ch.OneFtoW从数据并行.铁型并行和浊水并行等多个方面入手,做充分的薛态分析,视数据谶运为一等公民,使编泽时较厚,运行时较31.在效率方面做到了最极政,OneFtow即将开凝,高效性是它相对其它深度学习枢架最大的震异化优势,让我们拭目以待。附一:问答环节主持人(陈文光):JO果你/望别人用你的东西而且以性能打动他,有一种方式是黑悴性鱼律特别好,完全不改程序,不费什么力气拿过来就可以用。如果换成你的框架就要花很多力气去as代码,瘗么这个时候你只提供性就优势是不是足券吸引用产来用?比如如果你能提供5倍性能,那大家愚鼠去改一改代码,如果你能提高10倍性能.大冢愿意去写代码.目S)从你的角度.在分布式上、性器上和现有临柒取得的优势大概是什么量娘的?你觉得这个级是不是足塔影响大家使用你的车架r>案进辉:这个间IM常好.这个分两类.一类是CNNBERT哨实是10%,百分之几十的效率,动力不太大.后面提到的需要模型并行的场景,比如工业级广告推和.非常大规1的人脸识别.还有OPenA1.的GPT-3都是需要模型并行的.It于现有的开”电架来实现这个的戏度还是很大的。一方面是正眄性的问题,还有一个是效率问题,使用OneFtoW相信会比改写已有的框架容易徂多,所以这个有一定的动力.再一个,在使用椎口上,W在越来越趋于一致了.比如大家发现PyTorch容易用.所以在Python层面大家都非常相像,而且中间层的表示大家也是非常相似的。所以在上层接口层面相信它是呈收敛趋势的,大家越来越像,据娘之间的迁移会越来越方便.这是我相信的趋势.附二:更多关于OneFIoW的参考资源30名工程师,历时1300天打造,又一“国产"AI枢架开源了https%mp.wig.qq.co11Vs/XOIkGV1._dwzUOusHMz1u1.ATensorFIow和PyTorch迎来了“后浪.https:mp.Wfrtxnqq.coVMOP(QtjfSNkNnb9cUB36Q挑战TensorFIov/,PyTorch.6S,OneFIow有没有机会https:mp.We1.xingq.co11VsZ9JYPsb7exUgTr1.8EfpRYg中关村导刊,对一流科技进行报道https:mp.we<xnqq.8VsStfbHU"CFTAxtof11xan