成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

從PyTorch到Mxnet ,對比7大Python深度學習框架

開發 開發工具 深度學習
本文是對這 7 大 Python 深度學習框架的描述以及優缺點的介紹,而且也為每個框架的使用推薦了一些資源。

[[184728]]

最近我無意間在「Best Python library for neural networks」話題下發現了一個我以前的數據科學棧交換(Data Science Stack Exchange)的答案,并且 Python 深度學習生態系統在過去兩年半中的演變打擊到了我。我在 2014 年 7 月推薦的庫,pylearn2,已經不再被積極地開發或者維護,大量的深度學習庫開始接替它的位置。這些庫每一個都各有千秋。我們已經在 indico 的產品或者開發中使用了以下列表中的大部分的技術,但是對于剩下一些我們沒有使用的,我將會借鑒他人的經驗來幫助給出 2017 年 Python 深度學習生態系統的清晰的、詳盡的理解。

確切地說,我們將會關注:

  • Theano
  • Lasagne
  • Blocks
  • TensorFlow
  • Keras
  • MXNet
  • PyTorch

下面是對這 7 大 Python 深度學習框架的描述以及優缺點的介紹,而且也為每個框架的使用推薦了一些資源,但因微信不支持外網鏈接,讀者們請點擊閱讀原網址查看資源。

Theano

鏈接:https://github.com/Theano/Theano

描述:Theano 是一個 Python 庫,允許你定義、優化并且有效地評估涉及到多維數組的數學表達式。它與 GPUs 一起工作并且在符號微分方面表現優秀。

文檔:http://deeplearning.net/software/theano/

概述:Theano 是數值計算的主力,它支持了許多我們列表當中的其他的深度學習框架。Theano 由 Frédéric Bastien 創建,這是蒙特利爾大學機器學習研究所(MILA)背后的一個非常優秀的研究團隊。它的 API 水平較低,并且為了寫出效率高的 Theano,你需要對隱藏在其他框架幕后的算法相當的熟悉。如果你有著豐富的學術機器學習知識,正在尋找你的模型的精細的控制方法,或者想要實現一個新奇的或者不同尋常的模型,Theano 是你的***庫。總而言之,為了靈活性,Theano 犧牲了易用性。

優點:

  • 靈活
  • 正確使用時的高性能

缺點:

  • 較高的學習難度
  • 低水平的 API
  • 編譯復雜的符號圖可能很慢

Lasagne

鏈接:https://github.com/Lasagne/Lasagne

描述:在 Theano 上建立和訓練神經網絡的輕量級庫

文檔:http://lasagne.readthedocs.org/

概述:因為 Theano 致力于成為符號數學中***且***的庫,Lasagne 提供了在 Theano 頂部的抽象,這使得它更適合于深度學習。它主要由當前 DeepMind 研究科學家 Sander Dieleman 編寫并維護。Lasagne 并非是根據符號變量之間的函數關系來指定網絡模型,而是允許用戶在層級思考,為用戶提供了例如「Conv2DLayer」和「DropoutLayer」的構建塊。Lasagne 在犧牲了很少的靈活性的同時,提供了豐富的公共組件來幫助圖層定義、圖層初始化、模型正則化、模型監控和模型訓練。

優點:

  • 仍舊非常靈活
  • 比 Theano 更高級的抽象
  • 文檔和代碼中包含了各種 Pasta Puns

缺點:

  • 社區小

Blocks

鏈接:https://github.com/mila-udem/blocks

描述:用于構建和訓練神經網絡的 Theano 框架

文檔:http://blocks.readthedocs.io/en/latest/

概述:與 Lasagne 類似,Blocks 是在 Theano 頂部添加一個抽象層使深度學習模型比編寫原始的 Theano 更清晰、更簡單、定義更加標準化。它是由蒙特利爾大學機器學習研究所(MILA)編寫,其中一些人為搭建 Theano 和***個神經網絡定義的高級接口(已經淘汰的 PyLearn2)貢獻了自己的一份力量。比起 Lasagne,Blocks 靈活一點,代價是入門臺階較高,想要高效的使用它有不小的難度。除此之外,Blocks 對遞歸神經網絡架構(recurrent neural network architectures)有很好的支持,所以如果你有興趣探索這種類型的模型,它值得一看。除了 TensorFlow,對于許多我們已經部署在 indico 產品中的 API,Blocks 是其***庫。

優點:

  • 仍舊非常靈活
  • 比 Theano 更高級的抽象
  • 易于測試

缺點:

  • 較高的學習難度
  • 更小的社區

TensorFlow

鏈接:https://github.com/tensorflow/tensorflow

描述:用于數值計算的使用數據流圖的開源軟件庫

文檔:https://www.tensorflow.org/api_docs/python/

概述:TensorFlow 是較低級別的符號庫(比如 Theano)和較高級別的網絡規范庫(比如 Blocks 和 Lasagne)的混合。即使它是 Python 深度學習庫集合的***成員,在 Google Brain 團隊支持下,它可能已經是***的活躍社區了。它支持在多 GPUs 上運行深度學習模型,為高效的數據流水線提供使用程序,并具有用于模型的檢查,可視化和序列化的內置模塊。最近,TensorFlow 團隊決定支持 Keras(我們列表中下一個深度學習庫)。雖然 TensorFlow 有著自己的缺點,但是社區似乎同意這一決定,社區的龐大規模和項目背后巨大的動力意味著學習 TensorFlow 是一次安全的賭注。因此,TensorFlow 是我們今天在 indico 選擇的深度學習庫。

優點:

  • 由軟件巨頭 Google 支持
  • 非常大的社區
  • 低級和高級接口網絡訓練
  • 比基于 Theano 配置更快的模型編譯
  • 完全地多 GPU 支持

缺點:

  • 雖然 Tensorflow 正在追趕,但是最初在許多基準上比基于 Theano 的慢。
  • RNN 支持仍不如 Theano

Keras

鏈接:https://github.com/fchollet/keras

描述:Python 的深度學習庫。支持 Convnets、遞歸神經網絡等。在 Theano 或者 TensorFlow 上運行。

文檔:https://keras.io/

概述:Keras 也許是水平***,對用戶最友好的庫了。由 Francis Chollet(Google Brain 團隊中的另一個成員)編寫和維護。它允許用戶選擇其所構建的模型是在 Theano 上或是在 TensorFlow 上的符號圖上執行。Keras 的用戶界面受啟發于 Torch,所以如果你以前有過使用 Lua 語言的機器學習經驗,Keras 絕對值得一看。由于部分非常優秀的文檔和其相對易用性,Keras 的社區非常大并且非常活躍。最近,TensorFlow 團隊宣布計劃與 Keras 一起支持內置,所以很快 Keras 將是 TensorFlow 項目的一個分組。

優點:

  • 可供選擇的 Theano 或者 TensorFlow 后端
  • 直觀、高級別的端口
  • 更易學習

缺點:

  • 不太靈活,比其他選擇更規范

MXNet

鏈接:https://github.com/dmlc/mxnet

描述:MXNet 是一個旨在提高效率和靈活性的深度學習框架。

文檔:http://mxnet.io/api/python/index.html#python-api-reference

概述:MXNet 是亞馬遜(Amazon)選擇的深度學習庫,并且也許是***秀的庫。它擁有類似于 Theano 和 TensorFlow 的數據流圖,為多 GPU 配置提供了良好的配置,有著類似于 Lasagne 和 Blocks 更高級別的模型構建塊,并且可以在你可以想象的任何硬件上運行(包括手機)。對 Python 的支持只是其冰山一角—MXNet 同樣提供了對 R、Julia、C++、Scala、Matlab,和 Javascript 的接口。如果你正在尋找***的性能,選擇 MXNet 吧,但是你必須愿意處理與之相對的一些 MXNet 的怪癖。

優點:

  • 速度的標桿
  • 非常靈活

缺點:

  • 最小的社區
  • 比 Theano 更困難的學習難度

PyTorch

鏈接:https://github.com/pytorch/pytorch

描述:Python 中的張量(Tensors)和動態神經網絡,有著強大的 GPU 加速。

文檔:http://pytorch.org/docs/

概述:剛剛放出一段時間,PyTorch 就已經是我們 Python 深度學習框架列表中的一個新的成員了。它是從 Lua 的 Torch 庫到 Python 的松散端口,由于它由 Facebook 的 人工智能研究團隊(Artificial Intelligence Research team (FAIR))支持且因為它用于處理動態計算圖(Theano,TensorFlow 或者其他衍生品沒有的特性,編譯者注:現在 TensorFlow 好像支持動態計算圖),它變得非常的有名。PyTorch 在 Python 深度學習生態系統將扮演怎樣的角色還不得而知,但所有的跡象都表明,PyTorch 是我們列表中其他框架的一個非常棒的選擇。

優點:

  • 來自 Facebook 組織的支持
  • 完全地對動態圖的支持
  • 高級和低級 API 的混合

缺點:

  • 比其他選擇,PyTorch 還不太成熟(用他們自己的話說—「我們正處于早期測試版本。期待一些冒險」)
  • 除了官方文檔以外,只有有限的參考文獻/資源

原文:http://www.kdnuggets.com/2017/02/python-deep-learning-frameworks-overview.html

【本文是51CTO專欄機構機器之心的原創譯文,微信公眾號“機器之心( id: almosthuman2014)”】

 

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2020-02-25 15:04:48

深度學習編程人工智能

2017-03-01 13:36:41

TensorFlowTheano框架

2017-07-05 14:21:30

框架TensorFlowTheano

2017-02-21 10:00:44

大數據深度學習框架對比

2017-05-05 10:15:38

深度學習框架對比分析

2017-03-01 09:05:27

PyTorchPython框架

2019-03-06 09:55:54

Python 開發編程語言

2017-09-18 17:34:53

深度學習學習框架Keras

2021-11-05 12:59:51

深度學習PytorchTenso

2020-08-28 17:54:31

深度學習框架

2022-11-25 07:35:57

PyTorchPython學習框架

2017-01-19 16:21:12

PyTorch軟件深度學習

2025-01-08 08:30:38

2017-04-14 08:58:55

深度學習感知機深度網絡

2019-08-02 09:26:24

深度學習框架排行榜

2018-07-03 15:59:14

KerasPyTorch深度學習

2022-02-25 20:44:28

框架深度學習架構

2017-01-04 10:47:45

TensorFlow框架Theano

2017-01-06 13:00:44

框架TensorFlowTheano

2016-01-12 12:41:27

浪潮
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 嫩草网| 久久不射网 | 欧美日韩精品久久久免费观看 | 欧美日韩久 | 成人在线精品 | 亚洲综合色视频在线观看 | 中文字幕在线看第二 | 精品久 | 91人人看 | 日韩在线观看一区 | 一区二区三区四区在线视频 | 天天舔天天 | 日韩在线综合 | 四虎影视在线 | 2018中文字幕第一页 | 一区二区三区福利视频 | 日韩免费看片 | 毛片a区| 国产一区二区在线91 | 欧美成人一区二区 | 久久国产精品亚洲 | 久久久久久一区 | 啪一啪 | 欧美一区二区三区高清视频 | 成人亚洲一区 | 国产免费观看一级国产 | 色偷偷人人澡人人爽人人模 | 国产精品明星裸体写真集 | 国产精品日韩在线观看一区二区 | 一区二区三区精品视频 | 日本三级网址 | 国产精品嫩草影院精东 | 国产美女自拍视频 | 最新中文字幕在线 | 久久国产精品精品 | 91精品国产综合久久婷婷香蕉 | 日韩欧美国产综合 | 欧美日韩亚洲国产 | 国产美女一区二区 | 亚洲美女视频 | 中文字幕一区二区三区四区五区 |