原創(chuàng)|使用教程|編輯:龔雪|2017-03-14 11:12:11.000|閱讀 433 次
概述:話不多說,擼起袖子開干
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
MXNet 是 DMLC(Distributed Machine Learning Community)開發(fā)的一款開源的、輕量級、可移植的、靈活的深度學(xué)習(xí)庫,它讓用戶可以混合使用符號編程模式和指令式編程模式來最大化效率和靈活性,目前已經(jīng)是 AWS 官方推薦的深度學(xué)習(xí)框架。MXNet 的很多作者都是中國人,其最大的貢獻(xiàn)組織為百度,同時很多作者來自 cxxnet、minerva 和 purine2 等深度學(xué)習(xí)項目,可謂博采眾家之長。其主要優(yōu)勢如下:
在 MXNet 中構(gòu)建一個網(wǎng)絡(luò)需要的時間可能比 Keras、Torch 這類高度封裝的框架要長,但是比直接用 Theano 等要快。MXNet 的各級系統(tǒng)架構(gòu)(下面為硬件及操作系統(tǒng)底層,逐層向上為越來越抽象的接口),如圖所示:
Keras 是一個崇尚極簡、高度模塊化的神經(jīng)網(wǎng)絡(luò)庫,使用 Python 實現(xiàn),并可以同時運行在 TensorFlow 和 Theano 上。它旨在讓用戶進(jìn)行最快速的原型實驗,讓想法變?yōu)榻Y(jié)果的這個過程最短。Theano 和 TensorFlow 的計算圖支持更通用的計算,而 Keras 則專精于深度學(xué)習(xí)。Theano 和 TensorFlow 更像是深度學(xué)習(xí)領(lǐng)域的 NumPy,而 Keras 則是這個領(lǐng)域的 Scikit-learn。它提供了目前為止最方便的 API,用戶只需要將高級的模塊拼在一起,就可以設(shè)計神經(jīng)網(wǎng)絡(luò),其主要優(yōu)勢如下:
可以說模型越復(fù)雜,使用 Keras 的收益就越大,尤其是在高度依賴權(quán)值共享、多模型組合、多任務(wù)學(xué)習(xí)等模型上,Keras 表現(xiàn)得非常突出。Keras 所有的模塊都是簡潔、易懂、完全可配置、可隨意插拔的,并且基本上沒有任何使用限制,神經(jīng)網(wǎng)絡(luò)、損失函數(shù)、優(yōu)化器、初始化方法、激活函數(shù)和正則化等模塊都是可以自由組合的。Keras 也包括絕大部分 state-of-the-art 的 Trick,包括 Adam、RMSProp、Batch Normalization、PReLU、ELU、LeakyReLU 等。同時,新的模塊也很容易添加,這讓 Keras 非常適合最前沿的研究。Keras 中的模型也都是在 Python 中定義的,不像 Caffe、CNTK 等需要額外的文件來定義模型,這樣就可以通過編程的方式調(diào)試模型結(jié)構(gòu)和各種超參數(shù)。在 Keras 中,只需要幾行代碼就能實現(xiàn)一個 MLP,或者十幾行代碼實現(xiàn)一個 AlexNet,這在其他深度學(xué)習(xí)框架中基本是不可能完成的任務(wù)。Keras 最大的問題可能是目前無法直接使用多 GPU,所以對大規(guī)模的數(shù)據(jù)處理速度沒有其他支持多 GPU 和分布式的框架快。Keras 的編程模型設(shè)計和 Torch 很像,但是相比 Torch,Keras 構(gòu)建在 Python 上,有一套完整的科學(xué)計算工具鏈,而 Torch 的編程語言 Lua 并沒有這樣一條科學(xué)計算工具鏈。無論從社區(qū)人數(shù),還是活躍度來看,Keras 目前的增長速度都已經(jīng)遠(yuǎn)遠(yuǎn)超過了 Torch。
更多行業(yè)資訊,更新鮮的技術(shù)動態(tài),盡在。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@ke049m.cn