0
本文作者: 汪思穎 | 2017-08-21 18:50 |
雷鋒網(wǎng)按:本文作者解浚源,原載于知乎,雷鋒網(wǎng)已獲其授權(quán)。
經(jīng)過3個月的開發(fā),MXNet 0.11版發(fā)布啦!0.11是MXNet正式加入Apache以后的第一個版本,官方網(wǎng)站搬到了Apache的服務(wù)器(注意:要在最上方Version處選擇master才能看到包含Gluon的最新文檔)。
這次最大的改進是加入了動態(tài)圖接口Gluon。Gluon學(xué)習(xí)了Keras,Chainer,和Pytorch的優(yōu)點,并加以改進。接口更簡單,且支持動態(tài)圖(Imperative)編程。相比TF,Caffe2等靜態(tài)圖(Symbolic)框架更加靈活易用。同時Gluon還繼承了MXNet速度快,省顯存,并行效率高的優(yōu)點,并支持靜、動態(tài)圖混用,比Pytorch更快。
同時為了徹底解決MXNet文檔不全的弱點,我們還特地邀請了前CMU知名教授Alex Smola和即將出任CMU教授的小網(wǎng)紅Zachary Lipton聯(lián)手為Gluon打造文檔!
Gluon采用Keras和Numpy風(fēng)格API,并且Layer可以自動判斷輸入長度。用過Chainer和Pytorch的人想必都體會過每一層都要記住前一層輸出長度的麻煩,從卷積層到全連接層過渡時長度計算更是痛苦,往往要運行一遍才知道。在Gluon里則沒有這種問題,每層只要指定輸出長度,輸入長度則可以由系統(tǒng)自動計算。
深度學(xué)習(xí)框架大體分為兩類:以TensorFlow,caffe2為代表的靜態(tài)圖(Symbolic)框架和以Chainer,Pytorch為代表的動態(tài)圖(Imperative)框架。靜態(tài)圖的優(yōu)勢在于速度快,省內(nèi)存,便于線上部署。而動態(tài)圖框架的優(yōu)勢是靈活,易用,debug方便,特別是在自然語言處理和增強學(xué)習(xí)等領(lǐng)域,比起靜態(tài)圖框架有顯著優(yōu)勢。
Gluon同時支持靈活的動態(tài)圖和高效的靜態(tài)圖,讓你在享受動態(tài)編程的靈活易用的同時最小化性能的損失。而Gluon的HybridBlock和hybridize接口讓你可以在靜態(tài)動態(tài)間一鍵切換。0.11版Gluon比0.20版Pytorch快10%以上,在未來的一兩個月我們會加入更多優(yōu)化,再提高10%以上的性能。
深度學(xué)習(xí)的教材和樣例雖多,但是教材往往重理論輕實踐,而樣例重實踐卻不系統(tǒng)。為了填補理論和實踐之間的空白,并一舉解決MXNet文檔不全的弱項,我們特邀兩位CMU教授Alex Smola和Zachary Lipton為Gluon撰寫一部兼顧深度學(xué)習(xí)理論,動手編程,和實戰(zhàn)應(yīng)用的文檔+教材。
Gluon教程包括深度學(xué)習(xí)理論講解和代碼實踐。前五章每個例子都包括了兩個版本。從零開始(from scratch)版本深入講解所有細節(jié),Gluon版本則著重演示高級封裝的靈活高效。建議剛開始接觸深度學(xué)習(xí)的同學(xué)從頭開始順序閱讀,而已經(jīng)有一定經(jīng)驗的同學(xué)可以跳過基礎(chǔ)教程只看Gluon版。這套教程現(xiàn)在在Github上公開寫作,共計劃18章,已經(jīng)完成了前五章。印刷出版和中文翻譯也在計劃中。我們保證每天更新,絕不棄坑,歡迎大家試讀,也歡迎參與創(chuàng)作!
Tensorflow:Gluon同時支持靜態(tài)圖和動態(tài)圖,在靈活性和速度上都有優(yōu)勢。但由于Gluon剛剛面市,在成熟度和線上部署方面還有不足??偟膩碚f在做深度學(xué)習(xí)研究的同學(xué)不妨一試。
Pytorch:Gluon與Pytorch的相似度很高,而Gluon獨特的靜、動態(tài)圖混合功能可以在不犧牲靈活性的前提下提高性能。如果你喜歡pytorch的簡單易用又在乎性能,那么強烈建議你試一試Gluon。
Apache MXNet官方網(wǎng)站: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深度學(xué)習(xí)樣例:https://github.com/apache/incubator-mxnet/tree/master/example/gluon
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。