对标 PyTorch,清华团队推出自研 AI 框架“计图” | AI 技术生态论
「AI技术生态论」 人物访谈栏目是CSDN发起的百万人学AI倡议下的重要组成部分。通过对AI生态专家、创业者、行业KOL的访谈,反映其对于行业的思考、未来趋势的判断、技术的实践,以及成长的经历。
2020年,CSDN将对1000+人物进行系列访谈,勾勒出AI生态最具影响力人物图谱及AI产业全景图。本文为 「AI技术生态论」系列访谈第3期。
作者 | Just
头图 | CSDN 下载自视觉中国
出品 | AI科技大本营(ID:rgznai100)
在机器学习框架领域,Pytorch、TensorFlow已分别成为目前学界和业界使用最广泛的两大实力玩家,而紧随其后的Keras、Caffe/Caffe2、MXNet等框架也因为自身的独特性受到相应开发者的喜爱。
如今,AI开源框架之争再添新入局者。
如你所知,随着深度学习新技术的出现,任务复杂度不断提高,由于架构设计和不断扩充等原因,导致系统复杂,架构优化和移植变得困难,新模型的实际性能还有待提升。
一支清华大学团队决定研发更加灵活高效的深度学习框架。他们于近日宣布开源Jittor(计图),采用元算子融合和动态编译技术,深度优化内存,有效提升了系统的运行性能和通用性,确保实现和优化分离,大幅提升应用开发的灵活性、可拓展性和可移植性。
Github地址:
https://github.com/Jittor/Jittor
Jittor的研发团队是清华大学计算机系的图形学实验室,负责人现为胡事民教授,长期从事可视媒体智能处理的研究。2006年-2015年间,实验室得到两期国家973计划项目的资助,在可视媒体的认知计算、机器学习、几何计算、智能算法等方面开展研究。
2009年起,实验室开展系统软件研究,逐步布局AI平台的研发。期间,实验室奠定了在图形图像应用、机器学习算法和底层系统软件三大优势,2018年,在胡事民教授带领下,以梁盾、杨国烨、杨国炜和周文洋等一批博士生为主力的团队开始搭建Jittor平台。Jittor团队核心开发成员梁盾告诉AI科技大本营(ID:rgznai100),2019年底他们完成了Jittor的基本功能,随后经过内部测试,于3月20日正式对外发布并开源。
作为一个采用元算子表达神经网络计算单元、完全基于动态编译(Just-in-Time)的深度学习框架,Jittor在三大新的设计理念下进行开发:
1.易用且可定制:用户只需要数行代码,就可定义新的算子和模型,在易用的同时,不丧失任何可定制性。
深度学习采用的卷积神经网络是由算子(Operator)组成的一个计算网络,当前深度学习框架有多达2000种算子。Jittor将算子运算进一步分解,形成了更加底层的三类20余种元算子闭包,目前神经网络常用算子均可以使用元算子的组合进行表达。
什么是元算子?梁盾解释,元算子是Jittor的基本算子,主要包括三类:重索引算子(如填补、切分等),是一种一对多的关系;重索引化简算子(如累乘、累加等),是一种多对一的关系;元素级算子(如常见的元素级加减乘除等),是一种多对多的关系。
常见的神经网络算子,如卷积、池化、批归一化等操作可由元算子组合表达。元算子的提出主要是为了适应神经网络算子增长的需求,使得新算子的优化可以分解为元算子的融合和优化,避免单独对新算子优化,确保实现与优化的分离,提升可扩展性。
Jittor通过元算子融合实现深度神经网络模型
2.实现与优化分离:用户可以通过前端接口专注于实现,而实现自动被后端优化。从而提升前端代码的可读性,以及后端优化的鲁棒性和可重用性。
3.所有都是即时的:Jittor的所有代码都是即时编译并且运行,包括Jittor本身。用户可以随时对Jittor的所有代码进行修改,并且动态运行。
面向未来深度学习框架的发展趋势,Jittor利用元算子组合表达的优势,提出统一计算图进行优化,并从底层开始设计了一个全新的动态编译架构。
Jittor团队称,该架构支持多种编译器,确保实现和优化分离,大幅提升了应用开发灵活性、可拓展性和可移植性,与其他主流框架相比,具有多项先进特性。
这些领先的特性背后具体如何体现?
梁盾介绍,基于元算子组合表达神经网络的优势,Jittor提出统一计算图,融合静态计算图和动态计算图,提供高性能的计算:统一管理前向反向计算图,自动支持任意高阶导数的计算;统一调度CPU和GPU内存,支持超大模型的训练;统一同步异步运行接口,使得数据读取、内存拷贝、模型计算可以同时进行;统一管理多次迭代的计算图,实现跨迭代的融合优化。
基于此,Jittor团队在平台实现了ResNet、VGG、SSD、DeepLab、LSGAN等多个网络模型,根据他们提供的数据,与Pytorch相比,Jittor的推理和训练速度达到10%-50%的性能提升。
梁盾表示,Jittor在性能上的提升,主要得益于Jittor提出的元算子融合和统一计算图,优化计算,节省计算资源,提升访存效率。同时,Jittor设计的全新编译架构将元算子动态编译成高性能的C++/CUDA代码,并进一步通过与LLVM兼容的优化编译遍(complier pass),生成对计算设备友好的可执行代码。
无论是提到先进特性还是性能提升,从Jittor核心开发团队的官方口径,他们无疑要对标的是业内最主流的深度学习框架Pytorch。
Jittor开源消息发布后,开发者们在社交媒体平台上对其满是赞誉,不过要与Pytorch竞争,显然还有很长的路要走。
“中国作为人工智能产业发展和应用的最大市场,我们应该在人工智能生态的全产业链上占有一席之地。”
从国家科技战略层面,梁盾对AI科技大本营称,我国目前深度学习研究和应用主要依赖于国外平台,的确面临着卡脖子的风险,所以一些国内的IT企业也推出了自己的平台,希望Jittor和国内同行一起努力,为中国人工智能产业发展贡献一份力量。
最后,你怎么看Jittor?AI科技大本营将邀请业务专家做进一步解读,也欢迎在留言区发表你的观点。
延伸阅读:
【AI技术生态论】第一期:新冠全球蔓延,AI+大数据拿什么拯救全人类?
【AI技术生态论】第二期:投资体量至少 40 万亿元,普通人如何“抓住”新基建?
【End】
◆
CSDN全新人物专栏重磅上线
◆
PS:今日福利
同样作为“百万人学AI”的重要组成部分,2020 AIProCon 开发者万人大会将于6月26日通过线上直播形式,让开发者们一站式学习了解当下 AI 的前沿技术研究、核心技术与应用以及企业案例的实践经验,同时还可以在线参加精彩多样的开发者沙龙与编程项目。参与前瞻系列活动、在线直播互动,不仅可以与上万名开发者们一起交流,还有机会赢取直播专属好礼,与技术大咖连麦。
评论区留言入选,可获得价值299元的「2020 AI开发者万人大会」在线直播门票一张。
对标 PyTorch,清华团队推出自研 AI 框架“计图” | AI 技术生态论相关推荐
- 对标Pytorch,清华团队推出自研AI框架“计图”
「AI技术生态论」 人物访谈栏目是CSDN发起的百万人学AI倡议下的重要组成部分.通过对AI生态专家.创业者.行业KOL的访谈,反映其对于行业的思考.未来趋势的判断.技术的实践,以及成长的经历. 20 ...
- RealAI:清华团队打造第三代安全可控人工智能 | 百万人学AI评选
2020 无疑是特殊的一年,而 AI 在开年的这场"战疫"中表现出了惊人的力量.站在"新十年"的起点上,CSDN[百万人学AI]评选活动正式启动.本届评选活动在 ...
- 清华开源深度学习框架计图,开源超级玩家再进阶
2020-03-22 09:24 导语:清华开源计图,背后是三代人的共同努力. 雷锋网AI源创评论报道,据官方消息,清华大学计算机系图形实验室宣布开源一个全新的深度学习框架:Jittor,中文名计图. ...
- 今日上午,清华大学发布中国首个高校自研深度学习训练框架—计图Jittor
在百度狂推PaddlePaddle框架,以及旷视计划本月25日发布自研深度学习训练框架MegEngine之际,清华大学突然发布首个中国高校自研深度学习框架Jittor,中文名为计图. 官网链接 htt ...
- 启动图一键生成工具_一键即运行!清华团队推出图深度学习工具包CogDL v0.1
一行代码命令可以做什么? "一行命令可以实现'一条龙'运行实验." 访问 http://github.com/THUDM/cogdl 一键体验! 近年来,结构化数据的表示学习备受业 ...
- TensorFlow、PyTorch之后,“国产”AI框架还有没有机会?
出品 | AI科技大本营(ID:rgznai100) 众所周知,在机器学习框架领域,PyTorch.TensorFlow已分别成为目前学界和业界使用最广泛的两大实力玩家,而紧随其后的Keras.MXN ...
- 清华「计图」现在支持国产芯片了!动态图推理比PyTorch快了270倍
明敏 发自 凹非寺 量子位 报道 | 公众号 QbitAI 清华自研的深度学习框架计图(Jittor)在动态图推理速度上又一次完胜PyTorch. 最近,计图团队完成了在寒武纪芯片MLU270上的移植 ...
- 清华「计图」迎来重大更新:支持热门的可微渲染,多项CV任务速度超越PyTorch...
萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 想研究可微分渲染,却担心找不到合适的框架? 现在,官方支持可微分渲染的深度学习框架来了: 清华自研的「计图」 (Jittor)深度学习框架, ...
- ResNet也能用在3D模型上了,清华「计图」团队新研究已开源
鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 用AI处理二维图像,离不开卷积神经网络(CNN)这个地基. 不过,面对三维模型,CNN就没有那么得劲了. 主要原因是,3D模型通常采用网格数 ...
最新文章
- 一篇文章搞定大规模容器平台生产落地十大实践
- LSMW批处理使用方法(08)_步骤8、9
- 史上最强画图工具推荐
- Mysql索引优化实例讲解
- linux shell 读取for循环中出现难处理的数据之单引号错误实例
- xilinx提供测试dma和fft在sdk端的代码
- 《Linux操作系统原理》教学大纲
- C/C++访问PostgreSQL数据库
- SolidWorks 2010 SP0.0 最新下载+序列号 注册机及方法
- V4L2 pixel format 格式参考
- 为你的兔小巢加上实时消息推送
- LOW逼三人组(二)----选择排序算法
- Python逐行读取tsv文件
- echarts自定义主题构建
- 找零钱问题刨析(Python代码)
- shell脚本(linux)
- 流弊了!用Python分分钟把微信头像变卡通,油画,素描!
- 5.C语言二分法求方程解
- sqlserver根据DATEDIFF()函数计算年龄、月龄、天数
- AHP层次分析法(Analytic Hierarchy Process)——个人学习笔记
热门文章
- struts2之值栈
- linux 常用到的命令(centos 6.5)
- (绝对官方好用,快速上手)针对grunt之前写的那篇有些乱,这次总结个清晰的...
- Ubuntu 配置环境变量
- [链表遍历|模拟] leetcode 2 两数相加
- 在windows系统上安装pip的注意事项
- matlab mingw 32,Matlab 2017b MinGW-w64 5.3安裝
- windows无法访问指定设备_恢复 你的电脑/设备需要修改 未连接或无法访问所需设备。...
- Ubuntu18.04LTS+Anaconda+Tensorflow-GPU安装记录
- 中国碳酸锰(CAS+598-62-9)市场趋势报告、技术动态创新及市场预测