7種深度學習工具介紹
1)TensorFlow
TensorFlow是Google基於DistBelief進行研發的第二代人工智慧學習系統,其命名來源於本身的執行原理。
–Tensor(張量)意味著N維陣列,Flow(流)意味著基於資料流圖的計算,TensorFlow為張量從影像的一端流動到另一端的計算過程。
–TensorFlow是將複雜的資料結構,傳輸至人工智慧神經網中進行分析和處理過程的系統。
TensorFlow表達了高層次的機器學習計算,可被用於語音識別或影像識別等多項機器深度學習領域。
–TensorFlows對2011年開發的深度學習基礎架構DistBelief進行了各方面的改進,可在小到一部智慧手機,大到數千臺資料中心伺服器的各種裝置上執行。
–TensorFlow完全開源。
2)Caffe
Caffe是一個清晰而高效的深度學習框架,作者是畢業於UC Berkeley的賈揚清。
–Caffe的全稱應該是Convolutional Architecture for Fast Feature Embedding,
–它是開源的,核心語言是C++,支援命令列、Python和MATLAB介面
–既可以在CPU上執行也可以在GPU上執行。License是BSD 2-Clause。
–Caffe可以應用在視覺、語音識別、機器人、神經科學和天文學領域。
3)Torch
Torch已有十多年,是一個廣泛支援機器學習演算法的科學計算框架,具有簡單和快速的指令碼語言LuaJIT和底層C/CUDA實現, Facebook開源了Torch深度學習庫包
Torch的特點:
–1具有強大的n維陣列;
–2具有豐富的索引、切片和transposing的例程
–3通過LuaJIT的C介面:
–4線性代數例程;
–5基於能量的神經網路模型;
–6數值優化例程;
–7支援快速高效的GPU;
–8 可移植嵌入到iOS、Android和FGPA平臺。
4)Keras
Keras是一個簡約的、高度模組化的神經網路庫,是基於Theano的一個深度學習框架,其設計參考了Torch,用Python語言編寫,支援GPU和CPU,其特點為:
–(1)使用簡單,能夠快速實現原理;
–(2)支援卷積網路和遞迴網路,以及兩者的組合;
–(3)無縫執行在CPU和GPU上:
–(4)支援任意連線方式,包括多輸入多輸出訓練。
Keras庫與其他採用Theano庫的區別是:
–編碼風格非常簡約、清晰。它把所有的要點使用小類封裝起來,能夠很容易地組合在一起,並創造出一種全新的模型。
5)MXNet
MXNet是一個輕量化分散式可移植的深度學習計算平臺,它支援多機多節點、多GPU的計算
–openMP+MPI/SSH+Cuda/Cudnn的框架的計算速度很快,且能夠與分散式檔案系統結合,實現大資料的深度學習。MXNet支援從單機到多GPU.多叢集的計算能力
MXNet特點如下:
–(1)基於賦值表示式建立計算圖;
–(2)支援記憶體管理,並對兩個不交叉的變數重複使用同一記憶體空間;
–(3)使用C++實現,並提供C風格的標頭檔案。支援Python、R、Julia、Go和JavaScript;
–(4)支援Torch;
–(5)支援移動裝置端釋出。
6)CNTK
CNTK ( Computational Network Toolkit)是微軟用於搭建深度神經網路的計算網路工具包,已在Github開源
–CNTK有一套極度優化的執行系統,來訓練和測試神經網路,它以抽象的計算圖形式構建的。
–CNTK支援CPU和GPU模型。
–CNTK支援兩種方式來定義網路:一種是使用“Simple Network Builder”,通過設定少量引數,就能生成一個的標準神經網路;另一種是使用網路定義語言(NDL)。
–CNTK相比Caffe、Theano. TensoFlow等主流工具效能更強,靈活性也要好,可擴充套件性高。
–CNTK支援CNN. LSTM. RNN等流行的網路結構,支援CPU和GPU模式,但CNTK目前Bug比較多。
7)Theano
Theano是BSD許可證下發布的一個開源專案,是由LISA(現MILA)在加拿大魁北克的蒙特利爾大學,開發的基於Python的深度學習框架
–專門用於定義、優化、求值數學表示式,其效率比較高,適用於多維陣列。
–Python的核心Theano是一個數學表示式的編譯器。Theano獲取使用者資料結構
–使之成為一個使用Numpy、高效本地庫的非常高效的程式碼,並能在CPU或GPU上儘可能快地執行。
TensorFlow是Google基於DistBelief進行研發的第二代人工智慧學習系統,其命名來源於本身的執行原理。
–Tensor(張量)意味著N維陣列,Flow(流)意味著基於資料流圖的計算,TensorFlow為張量從影像的一端流動到另一端的計算過程。
–TensorFlow是將複雜的資料結構,傳輸至人工智慧神經網中進行分析和處理過程的系統。
TensorFlow表達了高層次的機器學習計算,可被用於語音識別或影像識別等多項機器深度學習領域。
–TensorFlows對2011年開發的深度學習基礎架構DistBelief進行了各方面的改進,可在小到一部智慧手機,大到數千臺資料中心伺服器的各種裝置上執行。
–TensorFlow完全開源。
2)Caffe
Caffe是一個清晰而高效的深度學習框架,作者是畢業於UC Berkeley的賈揚清。
–Caffe的全稱應該是Convolutional Architecture for Fast Feature Embedding,
–它是開源的,核心語言是C++,支援命令列、Python和MATLAB介面
–既可以在CPU上執行也可以在GPU上執行。License是BSD 2-Clause。
–Caffe可以應用在視覺、語音識別、機器人、神經科學和天文學領域。
3)Torch
Torch已有十多年,是一個廣泛支援機器學習演算法的科學計算框架,具有簡單和快速的指令碼語言LuaJIT和底層C/CUDA實現, Facebook開源了Torch深度學習庫包
Torch的特點:
–1具有強大的n維陣列;
–2具有豐富的索引、切片和transposing的例程
–3通過LuaJIT的C介面:
–4線性代數例程;
–5基於能量的神經網路模型;
–6數值優化例程;
–7支援快速高效的GPU;
–8 可移植嵌入到iOS、Android和FGPA平臺。
4)Keras
Keras是一個簡約的、高度模組化的神經網路庫,是基於Theano的一個深度學習框架,其設計參考了Torch,用Python語言編寫,支援GPU和CPU,其特點為:
–(1)使用簡單,能夠快速實現原理;
–(2)支援卷積網路和遞迴網路,以及兩者的組合;
–(3)無縫執行在CPU和GPU上:
–(4)支援任意連線方式,包括多輸入多輸出訓練。
Keras庫與其他採用Theano庫的區別是:
–編碼風格非常簡約、清晰。它把所有的要點使用小類封裝起來,能夠很容易地組合在一起,並創造出一種全新的模型。
5)MXNet
MXNet是一個輕量化分散式可移植的深度學習計算平臺,它支援多機多節點、多GPU的計算
–openMP+MPI/SSH+Cuda/Cudnn的框架的計算速度很快,且能夠與分散式檔案系統結合,實現大資料的深度學習。MXNet支援從單機到多GPU.多叢集的計算能力
MXNet特點如下:
–(1)基於賦值表示式建立計算圖;
–(2)支援記憶體管理,並對兩個不交叉的變數重複使用同一記憶體空間;
–(3)使用C++實現,並提供C風格的標頭檔案。支援Python、R、Julia、Go和JavaScript;
–(4)支援Torch;
–(5)支援移動裝置端釋出。
6)CNTK
CNTK ( Computational Network Toolkit)是微軟用於搭建深度神經網路的計算網路工具包,已在Github開源
–CNTK有一套極度優化的執行系統,來訓練和測試神經網路,它以抽象的計算圖形式構建的。
–CNTK支援CPU和GPU模型。
–CNTK支援兩種方式來定義網路:一種是使用“Simple Network Builder”,通過設定少量引數,就能生成一個的標準神經網路;另一種是使用網路定義語言(NDL)。
–CNTK相比Caffe、Theano. TensoFlow等主流工具效能更強,靈活性也要好,可擴充套件性高。
–CNTK支援CNN. LSTM. RNN等流行的網路結構,支援CPU和GPU模式,但CNTK目前Bug比較多。
7)Theano
Theano是BSD許可證下發布的一個開源專案,是由LISA(現MILA)在加拿大魁北克的蒙特利爾大學,開發的基於Python的深度學習框架
–專門用於定義、優化、求值數學表示式,其效率比較高,適用於多維陣列。
–Python的核心Theano是一個數學表示式的編譯器。Theano獲取使用者資料結構
–使之成為一個使用Numpy、高效本地庫的非常高效的程式碼,並能在CPU或GPU上儘可能快地執行。
相關文章
- 深度學習與CV教程(8) | 常見深度學習框架介紹深度學習框架
- 深度學習之遷移學習介紹與使用深度學習遷移學習
- 深度學習中的框架特點及介紹深度學習框架
- 幾種新DevOps工具介紹dev
- 學習Python要多久?三種方式學習週期介紹!Python
- 深度學習學習7步驟深度學習
- Git學習1 --- 版本控制工具詳細介紹Git
- 表示學習介紹
- 學習python前言介紹Python
- 學習內容介紹
- dapr學習:dapr介紹
- 深度學習系列教程(六)tf.data API 使用方法介紹深度學習API
- Tensorflow 深度學習簡介(自用)深度學習
- 元學習簡單介紹
- Graphql學習(一)-GraphQL介紹
- 整合學習入門介紹
- 7 個熱門的 AI 影片生成工具介紹AI
- Python學習系列之十大Web開發工具介紹!PythonWeb
- 介紹幾種List集合分批操作的工具
- 貝葉斯深度學習簡介深度學習
- 深度學習基本概念簡介深度學習
- Redis學習 RDB和AOF兩種持久化介紹以及實現Redis持久化
- 一種自主學習 Office Open XML 檔案格式的方法介紹XML
- go微服務框架go-micro深度學習(一) 整體架構介紹Go微服務框架深度學習架構
- etcdctl工具介紹
- 1.Django介紹與學習Django
- 前端學習(2373):專案介紹前端
- Jenkinsant介紹(學習筆記五)Jenkins筆記
- WKWebView - WKUIDelegate介紹7WebViewUIIDE
- (一) 機器學習和機器學習介紹機器學習
- 介紹幾種MySQL常見的圖形化工具MySql
- 《Python深度學習從零開始學》簡介Python深度學習
- 簡單介紹python深度學習tensorflow例項資料下載與讀取Python深度學習
- 深度學習中的學習率排程:迴圈學習率、SGDR、1cycle 等方法介紹及實踐策略研究深度學習
- ZipKin原理學習--ZipKin入門介紹
- Python學習之路2-列表介紹Python
- 最通俗的機器學習介紹機器學習
- uboot-uboot介紹-學習筆記boot筆記
- [PyTorch 學習筆記] 5.1 TensorBoard 介紹PyTorch筆記ORB