MXNet 0.11發布,加入動態圖接口Gluon,還有兩位CMU教授的親筆教程
經過3個月的開發,MXNet 0.11版發布啦!0.11是MXNet正式加入Apache以後的第一個版本,官方網站搬到了Apache的服務器(注意:要在最上方Version處選擇master才能看到包含Gluon的最新文檔)。
這次最大的改進是加入了動態圖接口Gluon。Gluon學習了Keras,Chainer,和Pytorch的優點,並加以改進。接口更簡單,且支持動態圖(Imperative)編程。相比TF,Caffe2等靜態圖(Symbolic)框架更加靈活易用。同時Gluon還繼承了MXNet速度快,省顯存,並行效率高的優點,並支持靜、動態圖混用,比Pytorch更快。
同時為了徹底解決MXNet文檔不全的弱點,我們還特地邀請了前CMU知名教授Alex Smola和即將出任CMU教授的小網紅Zachary Lipton聯手為Gluon打造文檔!
接口更簡潔
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撰寫一部兼顧深度學習理論,動手編程,和實戰應用的文檔+教材。
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教程:https://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
====================================分割線================================
本文作者:思穎
本文轉自雷鋒網禁止二次轉載,原文鏈接
最後更新:2017-08-23 10:32:41
上一篇:
使用 Rodeo 分析總統候選人的推特內容
下一篇:
[連載]《大數據之路:阿裏巴巴大數據實踐》之日誌采集
我們真的需要態勢感知嗎?
用IDEA基於maven項目使用mybatis-generator-plugin生成mapper和pojo
Linux關機命令
使用Pear安裝PHPUnit
[LeetCode]66.Plus One
支持用 CoffeeScript 調試的 Chrome 擴展
Enterprise Library深入解析與靈活應用(4):創建一個自定義Exception Handler改變ELAB的異常處理機製
表格存儲金融雲包月資源包上線售賣
【雲棲大會】AliOS總裁胡曉明:非智聯網汽車將成為古董
Java微服務開發指南(譯)-- 集群管理、失敗轉移和負載均衡的實踐