The Data Incubator 最近制作了一個(gè) 23 個(gè)熱門深度學(xué)習(xí)庫的排名。此排名基于三個(gè)指標(biāo):Github上的活躍度、Stack Overflow上的活躍度以及谷歌搜索結(jié)果數(shù)量。下面一起來看看排名情況
總體排名結(jié)果
上表排名給出了每個(gè)開源庫的總分值,以及各自在 GitHub、Stack Overflow 以及谷歌搜索上的得分(其中 0 為平均值)。
結(jié)果與討論
排名是基于同樣基于三個(gè)組成部分:Github(星星數(shù)和分支),Stack Overflow(標(biāo)簽和問題)和 Google Results(總體增長(zhǎng)率和季度增長(zhǎng)率)。這些是使用可用的 API 獲得的。
制作一個(gè)深入學(xué)習(xí)工具包的綜合排名列表是有很大難度的 - 我們羅列出了最具代表性的五個(gè)列表,計(jì)算每個(gè)指標(biāo)的標(biāo)準(zhǔn)化分?jǐn)?shù),得出最終排名。比如,Caffe 在 Github 上的標(biāo)準(zhǔn)評(píng)分為 1,deeplearning4j 則為 0.06。
TensorFlow 在最大活躍社區(qū)中占主導(dǎo)
TensorFlow 所有指標(biāo)的得分至少比平均值高出兩倍多。在 Github 上的分支數(shù)幾乎是第二名的三倍,Stack Overflow 上的問題總數(shù)是第二名的六倍多。Google Brain 團(tuán)隊(duì)于 2015 年首次開源 TensorFlow,之后一路攀升,超越排名第四的 Theano 和排名第八的 Torch,成為排行榜榜首。
TensorFlow 雖然與在 C++ 引擎上運(yùn)行的 Python API 一起分發(fā),但列表中的一些庫可以 TensorFlow 作為后端使用,并提供自己的接口。比如排行第二的Keras,將很快成為TensorFlow和Sonnet核心的一部分。TensorFlow 的流行可能是由于其通用深度學(xué)習(xí)框架,靈活的界面,漂亮的計(jì)算圖形可視化以及Google大量的開發(fā)人員與社區(qū)資源的結(jié)合。了解更多 TensorFlow 點(diǎn)擊:《【開源推薦 5】快速入門 Google 機(jī)器學(xué)習(xí)系統(tǒng) TensorFlow》
Caffe 尚未被 Caffe2 所取代
Caffe 排行第三,除 TensorFlow,Caffe 在 GitHub 上的活躍度要比其他競(jìng)爭(zhēng)對(duì)手高很多。Caffe 通常被認(rèn)為比 Tensorflow 更加專業(yè)化,其開發(fā)了專注于圖像處理,目標(biāo)識(shí)別和預(yù)訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)。Facebook 于 2017 年 4 月發(fā)布 Caffe 2,如今已經(jīng)排在了深度學(xué)習(xí)庫的上半部分。Caffe2 是一個(gè)更輕量,模塊化和可擴(kuò)展的 Caffe 版本,包括循環(huán)神經(jīng)網(wǎng)絡(luò)。Caffe 和 Caffe2 是相互獨(dú)立的,所以數(shù)據(jù)科學(xué)家可以繼續(xù)使用最初的 Caffe。但是,有一些遷移工具,如 Caffe Translator,提供了一種 Caffe2 用來驅(qū)動(dòng)現(xiàn)有的 Caffe 模型。
Keras 最受歡迎的深度學(xué)習(xí)前端
Keras 排名最高的非框架深度學(xué)習(xí)庫。Keras 可以被用作 TensorFlow、Theano、MXNet、CNTK 或 deeplearning4j 的前端。Keras 在所有的三個(gè)指標(biāo)上表現(xiàn)都高于于平均值。
Keras 由于其簡(jiǎn)單性和易用性而備受歡迎。Keras 數(shù)據(jù)科學(xué)家們對(duì)數(shù)據(jù)集上進(jìn)行相關(guān)實(shí)驗(yàn)時(shí),往往都喜歡采用 Keras。隨著 R Studio 最近發(fā)布了 Keras 的界面,Keras 的流行度往后還會(huì)不斷提高。
Theano 沒有行業(yè)巨頭支持,仍實(shí)力強(qiáng)大
在眾多新的深度學(xué)習(xí)框架當(dāng)中,Theano 是列表中出現(xiàn)最早的深度學(xué)習(xí)庫。Theano 率先使用了計(jì)算圖,如今在深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的研究界仍然很受歡迎。Theano 本質(zhì)上是一個(gè) Python 的數(shù)值計(jì)算庫,但是可以像 Lasagne 這樣的高階深度學(xué)習(xí)庫一起使用。
TensorFlow 和 Keras 背后有谷歌強(qiáng)有力的支持,PyTorch 和 Caffe2 背后有 Facebook,MXNet 是亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)的官方深度學(xué)習(xí)框架,以及微軟設(shè)計(jì)維護(hù)的 CNTK ,Theano 背后沒有行業(yè)巨頭支持,但是仍然十分受歡迎。
Sonnet 發(fā)展最快的深度學(xué)習(xí)庫
早在 2017 年年初,Google 的 DeepMind 就公開發(fā)布了 Sonnet 的代碼,這是一個(gè)基于 TensorFlow 的神經(jīng)網(wǎng)絡(luò)庫。在 Google 搜索 Sonnet,返回的結(jié)果頁面數(shù)比上一季度增加了 272%,這是我們列表中所有庫中增長(zhǎng)最多的一個(gè)。雖然 Google 在 2014 年收購(gòu)了英國(guó)人造智能公司 DeepMind,但 DeepMind 和 Google Brain 大體上仍然是兩個(gè)獨(dú)立的團(tuán)隊(duì)。DeepMind 專注于人工智能,Sonnet 幫助用戶在他們特定的 AI 理念和研究之上構(gòu)建頂層架構(gòu)
Python 是深度學(xué)習(xí)接口的主要語言
PyTorch 是列表中增長(zhǎng)速度第二快的庫,底部唯一的接口是Python。與上一季度相比,Google 搜索 PyTorch,結(jié)果頁面多了 236%。排名前 23 的開源深度學(xué)習(xí)框架和包裝器中,只有三個(gè)沒有 Python 接口,分別是:Dlib ,MatConvNet 和OpenNN。C ++ 和 R 接口分別有 7 個(gè)和 6 個(gè)。盡管看起來數(shù)據(jù)科學(xué)界在使用 Python 方面已經(jīng)達(dá)成共識(shí),但深度學(xué)習(xí)仍有許多選擇。
局限性
所有的源代碼和數(shù)據(jù)都在我們的 Github 頁面上。深度學(xué)習(xí)庫的完整列表來自不同來源。當(dāng)然,一些發(fā)布?xì)v史比較久的庫會(huì)有更高的指標(biāo),因此排名更前面。這里使用的唯一指標(biāo)是谷歌搜索季度增長(zhǎng)率。
數(shù)據(jù)中一些難題的處理方式:
● neural designer 并且 wolfram mathematica 是特有的,因此就剔除了
● CNTK 也被稱為 microsoft cognitive toolkit,但我們只用了原始的 CNTK 名字
● neon 改為 nervana neon
● paddle 改為 paddlepaddle
● 一些庫顯然是其他庫的衍生物,如 Caffe 和 Caffe2。對(duì)于此類情況,如果他們有獨(dú)立的 github 代碼庫,我們就會(huì)把它們分開計(jì)算排名
方法
所有源代碼和數(shù)據(jù)都在我們的Github頁面上。
我們首先從五個(gè)不同的來源,產(chǎn)生 23 個(gè)開源深度學(xué)習(xí)庫,然后收集所有這些庫的標(biāo)準(zhǔn),從而得出排名。Github 數(shù)據(jù)基于星星數(shù)和分支數(shù),Stack Overflow 數(shù)據(jù)基于包含軟件包名稱的標(biāo)簽及問題數(shù)量,Google Results 基于過去五年中 Google 搜索結(jié)果的總數(shù),以及季度增長(zhǎng)率的比較。
其他一些說明:
● 用于確定谷歌搜索的搜索詞包括庫名和術(shù)語“deep learning”。
● 任何缺少 Stack Overflow 計(jì)數(shù)的數(shù)值一律轉(zhuǎn)換為 0
● 計(jì)數(shù)標(biāo)準(zhǔn)化,均值為 0 和偏差 1,然后平均得到 Github 和 Stack Overflow 得分,再加上 Serch Results 得到的總得分。
● 最后手動(dòng)檢查以確認(rèn) Github 代碼庫的位置。
評(píng)論
查看更多