1. 程式人生 > >TensorFlow和Caffe、MXNet、Keras等深度學習框架的對比

TensorFlow和Caffe、MXNet、Keras等深度學習框架的對比

Keras 是一個崇尚極簡、高度模組化的神經網路庫,使用 Python 實現,並可以同時執行在 TensorFlow 和 Theano 上。它旨在讓使用者進行最快速的原型實驗,讓想法變為結果的這個過程最短。Theano 和 TensorFlow 的計算圖支援更通用的計算,而 Keras 則專精於深度學習。Theano 和 TensorFlow 更像是深度學習領域的 NumPy,而 Keras 則是這個領域的 Scikit-learn。它提供了目前為止最方便的 API,使用者只需要將高階的模組拼在一起,就可以設計神經網路,它大大降低了程式設計開銷(code overhead)和閱讀別人程式碼時的理解開銷(cognitive overhead)。它同時支援卷積網路和迴圈網路,支援級聯的模型或任意的圖結構的模型(可以讓某些資料跳過某些 Layer 和後面的 Layer 對接,使得建立 Inception 等複雜網路變得容易),從 CPU 上計算切換到 GPU 加速無須任何程式碼的改動。因為底層使用 Theano 或 TensorFlow,用 Keras 訓練模型相比於前兩者基本沒有什麼效能損耗(還可以享受前兩者持續開發帶來的效能提升),只是簡化了程式設計的複雜度,節約了嘗試新網路結構的時間。可以說模型越複雜,使用 Keras 的收益就越大,尤其是在高度依賴權值共享、多模型組合、多工學習等模型上,Keras 表現得非常突出。Keras 所有的模組都是簡潔、易懂、完全可配置、可隨意插拔的,並且基本上沒有任何使用限制,神經網路、損失函式、優化器、初始化方法、啟用函式和正則化等模組都是可以自由組合的。Keras 也包括絕大部分 state-of-the-art 的 Trick,包括 Adam、RMSProp、Batch Normalization、PReLU、ELU、LeakyReLU 等。同時,新的模組也很容易新增,這讓 Keras 非常適合最前沿的研究。Keras 中的模型也都是在 Python 中定義的,不像 Caffe、CNTK 等需要額外的檔案來定義模型,這樣就可以通過程式設計的方式除錯模型結構和各種超引數。在 Keras 中,只需要幾行程式碼就能實現一個 MLP,或者十幾行程式碼實現一個 AlexNet,這在其他深度學習框架中基本是不可能完成的任務。Keras 最大的問題可能是目前無法直接使用多 GPU,所以對大規模的資料處理速度沒有其他支援多 GPU 和分散式的框架快。Keras 的程式設計模型設計和 Torch 很像,但是相比 Torch,Keras 構建在 Python 上,有一套完整的科學計算工具鏈,而 Torch 的程式語言 Lua 並沒有這樣一條科學計算工具鏈。無論從社群人數,還是活躍度來看,Keras 目前的增長速度都已經遠遠超過了 Torch。

相關推薦

TensorFlowCaffeMXNetKeras深度學習框架對比

Keras 是一個崇尚極簡、高度模組化的神經網路庫,使用 Python 實現,並可以同時執行在 TensorFlow 和 Theano 上。它旨在讓使用者進行最快速的原型實驗,讓想法變為結果的這個過程最短。Theano 和 TensorFlow 的計算圖支援更通用的計算,而 Keras 則專精於深度學習。Th

TensorFlowpytorchcaffe深度學習框架究竟是什麼?

深度學習框架究竟是什麼? 1 引言 一直在說深度學習框架,最近也在使用tensorflow進行了簡單的實驗,但是對其中關係的理解還是不夠到位,他們裡面究竟是怎樣的一個執行機制呢? 2 說明 深度學習框架也就像Caffe、tensorflow這些是深

深度學習框架哪家強:TensorFlowCaffeMXNetKeras?PyTorch?

能夠 平臺 false 對稱 寫到 python form 演示 有一個   深度學習框架哪家強:TensorFlow?Caffe?MXNet?Keras?PyTorch?對於這幾大框架在運行各項深度任務時的性能差異如何,各位讀者不免會有所好奇。    微軟數據科學家Ili

TensorFlow與主流深度學習框架對比

引言:AlphaGo在2017年年初化身Master,在弈城和野狐等平臺上橫掃中日韓圍棋高手,取得60連勝,未嘗敗績。AlphaGo背後神祕的推動力就是TensorFlow——Google於2015年11月開源的機器學習及深度學習框架。 TensorFlow在2015年年底一出現就受到了極大的關注,在一個

Win10+RTX2080深度學習環境搭建:tensorflowmxnetpytorchcaffe

目錄 準備工作 設定conda國內映象源 conda 深度學習環境 tensorflow、mxnet、pytorch安裝 tensorflow mxnet pytorch Caffe安裝 配置檔案修改 編譯時常見錯誤

Ubuntu16.04 安裝 CUDACUDNNOpenCV 並用 Anaconda 配置 Tensorflow Caffe 詳細過程

1.配置環境 2.安裝顯示卡驅動、CUDA 和 CUDNN 在Ubuntu系統中的 System Settings -> Software & Updates -> Additional Drivers 安裝相應的顯示卡和C

深度學習框架哪家強?MXNet稱霸CNNRNN情感分析,TensorFlow僅擅長推斷特徵提取

深度學習框架哪家強:TensorFlow?Caffe?MXNet?Keras?PyTorch?對於這幾大框架在執行各項深度任務時的效能差異如何,各位讀者不免會有所好奇。 微軟資料科學家Ilia Karmanov最新測試的結果顯示,亞馬遜MXNet在CNN、RN

2_初學者快速掌握主流深度學習框架TensorflowKerasPytorch學習程式碼(20181211)

初學者快速掌握主流深度學習框架Tensorflow、Keras、Pytorch學習程式碼 一、TensorFlow 1、資源地址: 2、資源介紹: 3、配置環境: 4、資源目錄: 二、Keras

java的執行緒安全單例模式JVM記憶體結構知識學習整理

知其然,不知其所以然 !在技術的海洋裡,前路漫漫,我一直在迷失著自我。 歡迎訪問我的csdn部落格,我們一同成長! “不管做什麼,只要堅持下去就會看到不一樣!在路上,不卑不亢!” 在下面的題目來自於我要加的一個QQ群,然後要加這個QQ群

深度學習框架的比較 MXNet Caffe TensorFlow Torch Theano

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

深度學習框架的比較(MXNet Caffe TensorFlow Torch Theano

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

阿里深度學習框架開源了!無縫對接TensorFlowPyTorch

阿里巴巴內部透露將開源內部深度學習框架 X-DeepLearning的計劃,這是業界首個面向廣告、推薦、搜尋等高維稀疏資料場景的深度學習開源框架,可以與TensorFlow、PyTorch 和 MXNet 等現有框架形成互補。 X-Deep Learning(下文簡稱XDL)由阿里巴巴旗下大資料營銷平臺阿里

深度學習框架比較(Caffe, TensorFlow, MXNet, Torch, Theano)

在這裡,我將會介紹當前比較主流的5種深度學習框架,包括 Caffe, TensorFlow, MXNet, Torch, Theano,並對這些框架進行分析。 首先對這些框架進行總覽。 接下來將對這些框架進行分別介紹。 Caffe 第一個主流的工業級深度學習工具。 它開始於2013年

ubuntu14.04中tensorflowcaffe的配置

1:python2.7+cuda8.0+cudnn6.0+tensorflow1.4.0 python2.7依賴庫安裝: sudo pip install imutils sudo apt-get install build-essential python-dev py

10深度學習框架Caffe學習與應用--訓練結果影象分析

一、觀察損失曲線:學習率  橫軸:輪。 縱軸:損失。  黃色:學習率太高;  藍色:學習率太低;  綠色:學習率高了;  紅色:學習率最好;  二、放大損失曲線:學習率、batch大小 沒有呈現線性:說明學習率低了。 下降太慢:說明學習率太高。 寬度

TensorFlow:實戰Google深度學習框架》——5.4 模型持久化(模型儲存模型載入)

目錄 1、持久化程式碼實現 2、載入儲存的TensorFlow模型 3、載入部分變數 4、載入變數時重新命名 1、持久化程式碼實現 TensorFlow提供了一個非常簡單的API來儲存和還原一個神經網路模型。這個API就是tf.train.Saver類。一下程式碼給出了儲

深度學習框架的比較(MXNet Caffe TensorFlow Torch Theano

                1. 基本概念1.1 MXNet相關概念    深度學習目標:如何方便的表述神經網路,以及如何快速訓練得到模型    CNN(卷積層):表達空間相關性(學表示)    RNN/LSTM:表達時間連續性(建模時序訊號)    指令式程式設計(imperative programm

TensorFlow實戰Google深度學習框架》——4.2.1 經典損失函式(交叉熵均方差)

目錄 1、交叉熵 1、交叉熵 交叉熵是分類問題中使用比較廣的一種損失函式,刻畫了兩個概率分佈之間的距離。 給定兩個概率分佈p和q,通過q來表示p的交叉熵為: 交叉熵刻畫的是兩個概率分佈之間的距離,然而神經網路的輸出卻不一定是一個概率分佈。Softmax迴歸就

深度學習框架tensorflow學習與應用6(優化器SGDADAMAdadeltaMomentumRMSProp比較)

看到一個圖片,就是那個表情包,大家都知道: Adadelta  》  NAG 》 Momentum》 Remsprop 》Adagrad 》SGD 但是我覺得看情況而定,比如有http://blog.51cto.com/12568470/1898367常見優化演

深度學習框架keras平臺搭建(關鍵字:windows非GPU離線安裝)

當下,人工智慧越來越受到人們的關注,而這很大程度上都歸功於深度學習的迅猛發展。人工智慧和不同產業之間的成功跨界對傳統產業產生著深刻的影響。 最近,我也開始不斷接觸深度學習,之前也看了很多文章介紹,對深度學習的歷史發展以及相關理論知識也有大致瞭解。 但常言道:紙上得來終覺淺,