谷歌 TensorFlow 穩(wěn)居第一:23 個深度學習庫的排名
來源:原創(chuàng) 時間:2017-11-08 瀏覽:0 次【導讀】:根據(jù) Github 和 Stack Overflow 上的活潑度以及 Google 查找成果,The Data Incubator 最近制作了一個 23 個搶手深度學習庫的排名。
下表顯現(xiàn)了規(guī)范化后的分數(shù),其中值 1 表明高于均勻值的一個規(guī)范誤差(均勻值為 0)。 例如,Caffe 在 Github 中的活動是一個高于均勻水準的規(guī)范差,而 deeplearning4j 挨近均勻水平。見結(jié)尾的辦法。

成果和評論
該排名根據(jù)三個平等重要的部分:Github(star 和 fork),Stack Overflow(標簽和問題)和 Google 查找成果(總和以及季度增加率)。這 3 部分是經(jīng)過可用的 API 取得的。想弄一個全面的深化學習東西包列表不容易,所以在最終選取了我們以為具有代表性的五個不同的列表(有關詳細信息,請參閱下面的辦法)。核算每種衡量的規(guī)范化分數(shù),使我們能夠看到在每個類別中哪些包是鋒芒畢露的。
TensorFlow 在最大活潑社區(qū)中占主導
TensorFlow 在一切核算衡量上的均勻值上至罕見兩個規(guī)范誤差。TensorFlow 和第二大盛行結(jié)構(gòu) Caffe 比較,在 Github 上的 fork 數(shù)幾乎是后者的三倍,在 Stack Overflow 上的問題總量是后者的六倍以上。TensorFlow 由 Google Brain 團隊于 2015 年首度敞開,現(xiàn)已超過了許多的高檔庫,如 Theano(4)和 Torch(8),成為我們榜單的首位。TensorFlow 盡管與在 C++ 引擎上運轉(zhuǎn)的 Python API 一同分發(fā),但表中的幾個庫能夠?qū)?TensorFlow 用作后端,并供給它們自己的接口。這些庫包含了 Keras(2),將很快成為 TensorFlow 和 Sonnet 的中心部分(6)。TensorFlow 的盛行可能是其通用的深度學習結(jié)構(gòu),靈敏的界面,美觀的核算圖形可視化和 Google 的重要開發(fā)人員和社區(qū)資源的合力下的成果。
Caffe 尚未被 Caffe2 所替代
Caffe 在我們的名單上排名第三,除了 TensorFlow 外,Caffe 其在 Github 上的活潑度比其他競爭對手都要多。Caffe 傳統(tǒng)上被以為比 Tensorflow 更專業(yè),而且專心于圖畫處理,方針辨認和預先練習的卷積神經(jīng)網(wǎng)絡。Facebook 于 2017 年 4 月發(fā)布了 Caffe2(11),而且現(xiàn)已排在了深化學習庫的上半部分。Caffe2 是一個更輕盈、模塊化和可擴展的 Caffe 版別,包含循環(huán)神經(jīng)網(wǎng)絡。Caffe 和 Caffe2 是彼此獨立的庫房(repo),所以數(shù)據(jù)科學家能夠持續(xù)運用開始的 Caffe??墒?,有一些搬遷東西,比方如 Caffe Translator,它供給了一種運用 Caffe2 來驅(qū)動現(xiàn)有 Caffe 模型的辦法。
Keras 是深度學習上最受歡迎的前端庫
Keras(2)是排名最高的非結(jié)構(gòu)庫。Keras 能夠用作 TensorFlow(1)、Theano(4)、MXNet(7)、CNTK(9)、deeplearning4j(14)的前端。在一切的三個衡量規(guī)范上, Keras 的體現(xiàn)均優(yōu)于均勻水平。Keras 的盛行可能是因為其簡單性和易用性。Keras 答應快速的原型化,但價值是獻身了從結(jié)構(gòu)直接運轉(zhuǎn)而發(fā)生的一些靈敏性和操控。數(shù)據(jù)科學家在數(shù)據(jù)集上做深度學習的相關試驗時,Keras 遭到了他們的喜愛。跟著 R Studio 最近發(fā)布了 Keras 的界面,Keras 的開展和受歡迎程度還在不斷連續(xù)。
即便沒有巨子支撐,Theano 仍堅持獨占鰲頭
在新的深度學習結(jié)構(gòu)的海洋中,Theano(4)是我們的排名中最陳舊的庫。Theano 創(chuàng)始性地運用了核算圖(computational graph),并在研討界遍及做深度學習和機器學習之時仍堅持盛行。Theano 本質(zhì)上是一個 Python 的數(shù)值核算庫,但能夠與像 Lasagne 這樣的高檔深度學習庫(15)一同運用。盡管 Google 支撐 TensorFlow(1)和 Keras(2),F(xiàn)acebook 支撐 PyTorch(5)和 Caffe2(11),MXNet(7)是 Amazon Web Services 的官方深度學習結(jié)構(gòu),Microsoft 規(guī)劃并保護了 CNTK(9),Theano 在沒遭到職業(yè)巨子的正式支撐下仍然盛行。
Sonnet 是增加最快的庫
2017 年頭,Google 的 DeepMind 揭露發(fā)布了 Sonnet(6)的代碼,這是一個以 TensorFlow 為根底的高檔面向?qū)ο髱臁onnet 的 Google 查找成果回來頁數(shù)比上個季度增加了 272%,是我們列表中一切庫中最大的。盡管 Google 在 2014 年收買了英國人工智能公司DeepMind,但 DeepMind 和 Google Brain 仍然在大體上是獨立團隊。DeepMind 專心于通用人工智能,Sonnet 能夠協(xié)助用戶為他們的詳細 AI 主意和研討做頂層規(guī)劃。
Python 是深度學習的接口言語
PyTorch(5)是我們表中增加速度第二的庫,該結(jié)構(gòu)的僅有接口是 Python。與上季度比較,PyTorch 的 Google 查找成果增加了 236%。在我們排的 23 個開源深度學習結(jié)構(gòu)和包裝器中,只要三個沒有 Python 接口:Dlib(10)、MatConvNet(20)和OpenNN(23)。在 23 個庫中,C ++ 和 R 接口別離只要 7 個和 6 個。盡管數(shù)據(jù)科學界在運用 Python 方面有些挨近同一個一致,但對深度學習庫而言,還有許多的挑選。
約束
當然,有些庫因為現(xiàn)已存在了更長的時刻會有更高的數(shù)據(jù),因而排名更高。僅有考慮到這一點的目標,是 Google 查找季度增加率。
數(shù)據(jù)出現(xiàn)中遇到的一些困難:
·神經(jīng)規(guī)劃和 wolfram 數(shù)學是專有的,故被刪去
·cntk 也被稱為「微軟認知東西包」,可是我們只運用了 ctnk 稱號
·neon 變成了 nervana neon
·paddle 被改為 paddlepaddle
·一些庫顯然是其他庫的衍生品,如 Caffe 和 Caffe2。如果它們有獨自/獨立的 Github 庫房,我們分隔處理這些庫。
辦法
一切源代碼和數(shù)據(jù)都在我們的 Github 頁面上。我們首先從五個不同的來歷中生成了 23 個開源深度學習庫的列表,然后收集了一切這些庫的目標,以取得排名。
Github 的數(shù)據(jù)根據(jù) star 數(shù)和 fork 數(shù)、Stack Overflow 的數(shù)據(jù)包含包稱號的標簽和問題,Google 查找成果則根據(jù)曩昔五年的 Google 查找成果總數(shù),并核算成果在曩昔三個月與前三個月比較的季度增加率。
一些注意事項:
·有幾個庫是常用詞匯(caffe、chainer、lasagne),因而用于斷定 Google 查找成果數(shù)量的查找詞,包含庫的稱號和術(shù)語即“deep learning”。
·任何不可用的 Stack Overflow 計數(shù)都轉(zhuǎn)換為零計數(shù)。
·計數(shù)被規(guī)范化為均值 0 和誤差 1,然后均勻得到 Github 和 Stack Overflow 分數(shù),并結(jié)合 Serch 成果,然后得到總分。
·做了一些手動查看以承認 Github 庫房方位。

