MXNet 0.11发布,加入动态图接口Gluon,还有两位CMU教授的亲笔教程

作者 | 解浚源

经过3个月的开发,MXNet 0.11版发布啦!0.11是MXNet正式加入Apache以后的第一个版本,官方网站搬到了Apache的服务器(注意:要在最上方Version处选择master才能看到包含Gluon的最新文档)。

MXNet 0.11源码地址 https://github.com/apache/incubator-mxnet/releases MXNet 0.11官方网站 https://mxnet.incubator.apache.org/versions/master/

这次最大的改进是加入了动态图接口Gluon。Gluon学习了Keras,Chainer,和Pytorch的优点,并加以改进。接口更简单,且支持动态图(Imperative)编程。相比TF,Caffe2等静态图(Symbolic)框架更加灵活易用。同时Gluon还继承了MXNet速度快,省显存,并行效率高的优点,并支持静、动态图混用,比Pytorch更快。

同时为了彻底解决MXNet文档不全的弱点,我们还特地邀请了前CMU知名教授Alex Smola和即将出任CMU教授的小网红Zachary Lipton联手为Gluon打造文档(http://gluon.mxnet.io/)!

接口更简洁

Gluon采用Keras和Numpy风格API,并且Layer可以自动判断输入长度。用过Chainer和Pytorch的人想必都体会过每一层都要记住前一层输出长度的麻烦,从卷积层到全联接层过度时长度计算更是痛苦,往往要运行一遍才知道。在Gluon里则没有这种问题,每层只要指定输出长度,输入长度则可以由系统自动计算。

速度更快

深度学习框架大体分为两类:以TensorFlow,caffe2为代表的静态图(Symbolic)框架和以Chainer,Pytorch为代表的动态图(Imperative)框架。静态图的优势在于速度快,省内存,便于线上部署。而动态图框架的优势是灵活,易用,debug方便,特别是在自然语言处理和增强学习等领域,比起静态图框架有显著优势。

Gluon同时支持灵活的动态图和高效的静态图,让你在享受动态编程的灵活易用的同时最小化性能的损失。而Gluon的HybridBlock和hybridize接口让你可以在静态动态间一键切换。0.11版Gluon比0.20版Pytorch快10%以上,在未来的一两个月我们会加入更多优化,再提高10%以上的性能。

即是文档,又是教材

深度学习的教材和样例虽多,但是教材往往重理论轻实践,而样例重实践却不系统。为了填补理论和实践之间的空白,并一举解决MXNet文档不全的弱项,我们特邀两位CMU教授Alex Smola和Zachary Lipton为Gluon撰写一部兼顾深度学习理论,动手编程,和实战应用的文档+教材(https://github.com/zackchase/mxnet-the-straight-dope)。

Gluon教程包括深度学习理论讲解和代码实践。前五章每个例子都包括了两个版本。从零开始(from scratch)版本深入讲解所有细节,Gluon版本则着重演示高级封装的灵活高效。建议刚开始接触深度学习的同学从头开始顺序阅读,而已经有一定经验的同学可以跳过基础教程只看Gluon版。这套教程现在在Github上公开写作,共计划18章,已经完成了前五章。印刷出版和中文翻译也在计划中。我们保证每天更新,绝不弃坑,欢迎大家试读,也欢迎参与创作!

Gluon与其他框架的对比

Tensorflow:Gluon同时支持静态图和动态图,在灵活性和速度上都有优势。但由于Gluon刚刚面市,在成熟度和线上部署方便还有不足。总的来说在做深度学习研究的同学不妨一试。

Pytorch:Gluon与Pytorch的相似度很高,而Gluon独特的静、动态图混合功能可以在不牺牲灵活性的前提下提高性能。如果你喜欢pytorch的简单易用又在乎性能,那么强烈建议你试一试Gluon。

相关链接

Apache MXNet官方网站: https://mxnet.incubator.apache.org/ 0.11 新特性: https://github.com/apache/incubator-mxnet/releases 安装指南: https://mxnet.incubator.apache.org/versions/master/get_started/install.html Gluon教程: http://gluon.mxnet.io/ Gluon讲座PPT: https://github.com/zackchase/mxnet-slides/blob/master/kdd-mxnet-slides.pdf Gluon深度学习样例: https://github.com/apache/incubator-mxnet/tree/master/example/gluon

原文地址

https://zhuanlan.zhihu.com/p/28648399

原文发布于微信公众号 - AI科技大本营(rgznai100)

原文发表时间:2017-08-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏点滴积累

JS前端三维地球渲染——中国各城市航空路线展示

前言 我还从来没有写过有关纯JS的文章(上次的矢量瓦片展示除外,相对较简单。),自己也学习过JS、CSS等前端知识,了解JQuery、React等框架,但是自己...

8186
来自专栏数据结构与算法

dsu on tree入门

说起来我跟这个算法好像还有很深的渊源呢qwq。当时在学业水平考试的考场上,题目都做完了不会做,于是开始xjb出题。突然我想到这么一个题

1984
来自专栏熊彪的专栏

精准测分:基于函数调用关系链的用例消振算法 ( 上帝视角 )

地球文明不是孤岛,函数呢?从静态的视角观察函数,她只是一个一个在文件中孤立存在的代码片段。但从动态的视角观察,函数与函数之间就天然的发生了关联。这个关联是怎么产...

2240
来自专栏数据结构与算法

网络最大流算法—最高标号预流推进HLPP

吐槽 这个算法。。 怎么说........ 学来也就是装装13吧。。。。 长得比EK丑 跑的比EK慢 写着比EK难 思想 大家先来猜一下这个算法的思想吧:joy...

3766
来自专栏opengps

新手入门百度地图开发的(0,0)坐标问题

        对于大部分人来讲,由于百度地图资料众多,过度依赖搜索引擎等等原因。新接触百度地图开发工作其实并不容易。今天说说关于坐标(0,0)的问题。 ...

3736
来自专栏CDA数据分析师

手把手教你用Python分析豆瓣电影——以《我不是药神》《邪不压正》为例

《我不是药神》是由文牧野执导,宁浩、徐峥共同监制的剧情片,徐峥、周一围、王传君、谭卓、章宇、杨新鸣等主演 。影片讲述了神油店老板程勇从一个交不起房租的男性保健品...

3253
来自专栏工科狗和生物喵

【我的漫漫跨考路】数据结构之堆栈的线性实现

正文之前 ? 昨天晚上阶段性的完成了一部分数学的复习(一元积分学终于搞定了,后面的貌似没这么难了),所以今天打算撸一撸代码,结合前几天写的链表实现线性存储,今天...

2846
来自专栏数据小魔方

R语言数据清洗实战——世界濒危遗产地数据爬取案例

最近重复新翻阅R语言领域唯一一本关于网络数据采集的参考书——《基于R语言的自动数据收集》,开篇就是一个数据爬取的案例。 尽管之前已经粗略的看过一遍,但是仍感书中...

5686
来自专栏CDA数据分析师

为什么说 Python 是数据科学的发动机(二)工具篇(附视频中字)

毋庸置疑,Python是用于数据分析的最佳编程语言,因为它的库在存储、操作和获取数据方面有出众的能力。 在PyData Seattle 2017中,Jake V...

22510
来自专栏大数据文摘

十分钟视频,手把手教你用Python撒情人节狗粮的正确姿势

3704

扫码关注云+社区

领取腾讯云代金券