0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

11種深度學(xué)習(xí)框架影響力評估

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-09-30 08:48 ? 次閱讀

編者按:Jeff Hale根據(jù)網(wǎng)上招聘、調(diào)研報告、網(wǎng)絡(luò)搜索、論文、教程、GitHub等數(shù)據(jù),評估了11種深度學(xué)習(xí)框架的影響力。

現(xiàn)在數(shù)據(jù)科學(xué)領(lǐng)域最熱門的方向仍舊是深度學(xué)習(xí)。相應(yīng)地,深度學(xué)習(xí)框架也處于飛速變革之中?,F(xiàn)在最流行的框架,除Theano外,5年前都不存在。

我想搜集一些哪個框架更值得關(guān)注的證據(jù),所以我搞了這個影響力評分。我使用了7個不同類別的11個數(shù)據(jù)源,以評估框架的使用量、興趣、流行度。接著我對這些數(shù)據(jù)進(jìn)行加權(quán)組合,得到了本文的結(jié)果。具體的代碼可以在Kaggle Kernel上看到:discdiver/deep-learning-framework-power-scores-2018 2018年9月20日更新:應(yīng)眾多讀者要求,我擴(kuò)大了框架的評估范圍,加入了Caffe、Deeplearning4J、Caffe2、Chainer?,F(xiàn)在的評測包括了KDNuggets使用調(diào)研中所有報告使用率在1%以上的框架。

2018年9月21日更新:我改進(jìn)了一些測度的方法。

不多啰嗦了,下面是深度學(xué)習(xí)框架的影響力評分:

毫無疑問,TensorFlow位居第一。不過我有一些意料之外的發(fā)現(xiàn),詳情見下。

框架

評測的所有框架都是開源的,除了其中一個框架外都提供了Python接口,有些框架提供了R或其他語言的接口。

TensorFlow是毫無爭議的贏家。GitHub上最熱,谷歌搜索最多,Medium文章、亞馬遜書籍、ArXiv論文最多。使用TensorFlow的開發(fā)者最多,大多數(shù)網(wǎng)上招聘的工作描述中也提到了它。TensorFlow背后站著Google。

Keras擁有“為人類而不是機(jī)器設(shè)計的API”。幾乎各項評估中,它都是第二流行的框架。Keras以TensorFlow、Theano或CNTK為底層引擎。如果你是深度學(xué)習(xí)的新手,建議從Keras開始。

總體而言,PyTorch是第三流行的框架,也是第二流行的獨(dú)立框架。它比TensorFlow要年輕,流行度的增速十分迅猛。它也支持TensorFlow尚不支持的一些定制。PyTorch背后站著的是Facebook。

Caffe是第四流行的框架。它差不多快5歲了。相對而言,某些雇主還要求熟悉Caffe,一些學(xué)術(shù)論文也還用Caffe,但最近使用Caffe的人不多。

Theano是蒙特利爾大學(xué)2007年研發(fā)的,也是最古老的有顯著影響力的Python深度學(xué)習(xí)框架。它的流行度降了一大截,主要開發(fā)者也宣布不會再發(fā)布加入新功能的大版本了。不過,目前仍有一些更新。Theano仍然是排名第五的框架。

亞馬遜使用Apache孵化的MXNET。它是第六流行的深度學(xué)習(xí)庫。

CNTK是微軟的認(rèn)知工具集。它讓我想起了微軟其他很多產(chǎn)品,試圖和谷歌、Facebook提供的工具競爭,但沒贏得多少使用。

Deeplearning4J,也稱為DL4J,配套Java語言使用。它是唯一不提供Python接口的準(zhǔn)流行框架。不過,你可以導(dǎo)入用Keras寫的模型。這也是唯一一個兩個不同的搜索項(Deeplearning4J和DL4J)偶爾返回不同結(jié)果的框架。我在每項測度中使用了較高的數(shù)字。由于這個框架的評分相當(dāng)?shù)停虼诉@并沒有帶來什么實(shí)質(zhì)性的改變。

Caffe2是另一個Facebook開源產(chǎn)品。它基于Caffe構(gòu)建,現(xiàn)在是PyTorch項目的一部分(同一GitHub倉庫)。由于現(xiàn)在Caffe2沒有自己的代碼倉庫,我使用了舊倉庫的GitHub數(shù)據(jù)。

Chainer是由日本公司Preferred Networks開發(fā)的框架。它有一小批使用者。

FastAI基于PyTorch構(gòu)建。它的API借鑒了Keras,只需很少的代碼(比Keras還要少)就可以得到強(qiáng)力的結(jié)果。目前而言,F(xiàn)astAI屬于前沿框架,目前正處于為預(yù)計2018年10月發(fā)布的1.0版本重寫代碼的階段。FastAI的作者Jeremy Howard是Kaggle的主席。他曾經(jīng)寫過一篇Introducing Pytorch for fast.ai,討論為何FastAI從使用Keras轉(zhuǎn)向創(chuàng)建自己的框架。

現(xiàn)在還沒有什么職位需要用這個框架,本身使用也不廣泛。然而,由于FastAI的免費(fèi)在線課程很流行,自然而然就有不少使用者。這個框架強(qiáng)大易用,因此可能會很快普及。

標(biāo)準(zhǔn)

我選擇了以下7個類別來評估深度學(xué)習(xí)框架的流行度和關(guān)注度。

在線招聘描述

KDnuggets使用調(diào)研

谷歌搜索量

Medium文章

亞馬遜數(shù)據(jù)

ArXiv論文

GitHub熱度

數(shù)據(jù)采集自2018年9月16日至2018年9月21日,源數(shù)據(jù)可以通過谷歌試算表訪問:https://docs.google.com/spreadsheets/d/1mYfHMZfuXGpZ0ggBVDot3SJMU-VsCsEGceEL8xd1QBo/edit?usp=sharing

我使用了Python的pandas庫探索流行度,并使用plotly庫進(jìn)行可視化。如果你想要查看可交互的plotly圖表,請訪問我在文章開頭提到過的Kaggle Kernel。

在線招聘描述

現(xiàn)在的工作市場上哪種深度學(xué)習(xí)庫需求更高?我搜集了LinkedIn、Indeed、Simply Hired、Monster、Angel List的上的數(shù)據(jù)。

毫無疑問,TensorFlow是這方面的贏家。如果你想找一份深度學(xué)習(xí)的工作,可以學(xué)一下TensorFlow。

我通過“machine learning”(機(jī)器學(xué)習(xí))加庫名的方式搜索。比如,“machine learning TensorFlow”。我測試了若干搜索方法,這個方法可以得到相關(guān)性最高的結(jié)果。

之所以額外加上一個搜索詞,是因為有些框架的名字可能有歧義,比如Caffe可能有多種含義。

使用量

KDnuggets是一個流行的數(shù)據(jù)科學(xué)網(wǎng)站。它在調(diào)研軟件使用情況的時候提問:

你在過去12個月的真實(shí)項目上用了什么分析、大數(shù)據(jù)、數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)軟件?

讓人有點(diǎn)意外的是,Keras的使用量很高——差不多快趕上TensorFlow了。有意思,美國的雇主們熱衷找具備TensorFlow技術(shù)的人,而Keras的使用率差不多一樣高。

KDnuggets有好幾年的數(shù)據(jù)。盡管我在分析中只使用了2018年的數(shù)據(jù),我需要指出,2017年后,Caffe、Theano、MXNET、CNTK的使用量下降了。

谷歌搜索熱度

最大搜索引擎上的網(wǎng)絡(luò)搜索量是一項很好的評估流行度的指標(biāo)。我查看了過去一年谷歌趨勢的搜索歷史。谷歌沒有提供搜索量的絕對值,不過它提供了不同搜索項的對比圖形。

Keras和TensorFlow的差距不大,PyTorch位居第三,其他框架的搜索量相對較低。

現(xiàn)在,讓我們簡單看下搜索量隨時間的改變趨勢,這能提供歷史上下文。Google自帶兩年搜索趨勢變化的圖表。

紅:TensorFlow;黃:Keras;藍(lán):PyTorch;綠:Caffe

過去一年里,TensorFlow的搜索量沒什么顯著增長,但Keras和PyTorch的搜索量增加了。谷歌趨勢只允許同時比較五個搜索項,所以其他框架在另外的圖表上比較——都沒顯示出什么明顯的趨勢,除了相對TensorFlow而言極低的搜索量。

發(fā)表

我納入了多種發(fā)表類型。讓我們先看下Medium文章。

Medium文章

Medium上有很多流行的數(shù)據(jù)科學(xué)文章和指南。

終于出現(xiàn)新贏家了,Keras超過了TensorFlow,而相比其他評估項,F(xiàn)astAI的表現(xiàn)很突出。

我猜想這可能是因為Keras和FastAI對初學(xué)者更友好。新的深度學(xué)習(xí)從業(yè)者對這兩個框架的興趣較大,而Medium上有大量教程。

我使用了谷歌的站內(nèi)搜索,限定時間為12個月內(nèi),使用框架名加“l(fā)earning”(學(xué)習(xí))作為關(guān)鍵詞——同樣是為了避免“caffe”帶來的歧義。相比其他關(guān)鍵詞組合,這導(dǎo)致的搜索結(jié)果下降最少。

現(xiàn)在讓我們看下亞馬遜上有關(guān)這些框架的書籍?dāng)?shù)量。

亞馬遜書籍

我在Amazon.com的圖書 > 計算機(jī)技術(shù)分類下搜索每個深度學(xué)習(xí)框架的名稱。

TensorFlow又獲勝了。MXNET的書比期望的多,而Theano的書比期望的少。相對其流行度而言,PyTorch的書不多,這可能是因為這個框架比較年輕。注意這一測量偏向老框架,因為書的出版周期比較長。

ArXiv論文

機(jī)器學(xué)習(xí)方面的學(xué)術(shù)論文,最常發(fā)表在ArXiv上。我同樣使用谷歌站內(nèi)搜索,限定時間為12個月內(nèi)。

TensorFlow還是第一。注意,相比學(xué)術(shù)論文而言,Keras在Meidum和亞馬遜上要流行得多。PyTorch在這一類別排名第二,顯示它在實(shí)現(xiàn)新想法方面的靈活性。Caffe的評分也相對較好。

GitHub熱度

GitHub熱度是另一項框架流行度的指標(biāo)。我為收藏、分叉、關(guān)注、貢獻(xiàn)者分別制作了圖表,因為這些數(shù)據(jù)更適合分別呈現(xiàn),而不是混在一起。

TensorFlow也是最流行的,有大量活躍用戶。考慮到FastAI甚至還不滿一歲,它在GitHub上的熱度相當(dāng)不錯。有意思的是,相比另外三個測度,不同框架的貢獻(xiàn)者數(shù)量總體而言比較接近。

收集、分析了所有數(shù)據(jù)后,是時候?qū)⑺鼈冋铣梢粋€測度了。

影響力評分過程

我是這樣得出影響力評分的:

將所有特征的尺度縮放至0到1

聚合在線招聘描述和GitHub熱度的子類別

根據(jù)下圖的權(quán)重對類別進(jìn)行加權(quán)

如上圖所示,在線招聘描述、KDnuggets一組,網(wǎng)絡(luò)搜索、發(fā)表、GitHub熱度一組,平分權(quán)重。這樣劃分看起來是最合適的,平衡了多種類別。

為了便于查看,各項加權(quán)評分乘以100

累加每個框架的各項評分以得到單一的影響力評分

下為各個類別的統(tǒng)計數(shù)據(jù):

下為加權(quán)和聚合子類別后的各項評分:

這就得到了文章開頭的圖表:

100是最高可能得分,意味著在所有類別都是第一。TensorFlow幾乎達(dá)到了100分,這并不令人意外,畢竟它在每個類別中都是第一(或者幾乎是第一)。Keras毫無爭議地位居第二。

我再重復(fù)一遍,如果你想要以可交互的方式查看圖表,或者分叉Jupyter Notebook,請訪問我開頭提到的Kaggle Kernel。

未來

目前為止,TensorFlow的領(lǐng)先地位難以動搖。短期內(nèi),它應(yīng)該會繼續(xù)統(tǒng)治深度學(xué)習(xí)領(lǐng)域。不過,考慮到深度學(xué)習(xí)世界的飛速變革,長期來看,TensorFlow的領(lǐng)先可能發(fā)生變化。

時間會告訴我們,PyTorch是否能超越TensorFlow,就像React超越Angular一樣。這兩對框架還挺適合類比的。PyTorch和React都是由Facebook支撐的靈活度很高的框架,通常認(rèn)為要比谷歌支撐的競爭者更容易使用。

FastAI能獲取課程之外的用戶嗎?它有一大堆自帶的學(xué)生用戶,比Keras對初學(xué)者更友好的API。

你覺得未來會怎么樣?請留言分享你的想法。

給學(xué)習(xí)者的建議

如果你掌握了Python、numpy、pandas、sklearn、matplotlib技能,考慮學(xué)習(xí)一個深度學(xué)習(xí)框架,我建議你從Keras開始。它的用戶數(shù)量很大,也受到雇主的認(rèn)可,Medium上也有很多文章可以參考,API也很容易使用。

如果你已經(jīng)掌握了Keras,決定下一個要學(xué)習(xí)的框架不太容易。我建議你選擇TensorFlow或者PyTorch,深入學(xué)習(xí),以做出很棒的深度學(xué)習(xí)模型。

如果你想要熟練掌握需求量最大的框架,你應(yīng)該選擇TensorFlow。但研究人員很喜歡用PyTorch,因為它既易用又靈活。Quora上有一個關(guān)于選TensorFlow還是PyTorch的問題:https://www.quora.com/Should-I-go-for-TensorFlow-or-PyTorch

如果你具備了這些框架的經(jīng)驗,我建議你留意下FastAI。如果你想學(xué)習(xí)基礎(chǔ)和高級的深度學(xué)習(xí)技能,可以看下FastAI的免費(fèi)在線課程。FastAI 1.0許諾讓你可以很容易地實(shí)現(xiàn)最新的深度學(xué)習(xí)策略,并快速迭代。

不管你選什么框架,我希望你現(xiàn)在對哪個深度學(xué)習(xí)框架需求最高,使用最多,文章最多有所了解。

如果你覺得這篇文章有意思或者有幫助,請多多轉(zhuǎn)發(fā)、點(diǎn)贊,讓更多人看到這篇文章。

快樂深度學(xué)習(xí)!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴

原文標(biāo)題:【2018年】11種深度學(xué)習(xí)框架影響力對比

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    國產(chǎn)深度學(xué)習(xí)框架的挑戰(zhàn)和機(jī)會

    電子發(fā)燒友網(wǎng)報道(文/李彎彎)深度學(xué)習(xí)框架是一底層開發(fā)工具,是集深度學(xué)習(xí)核心訓(xùn)練和推理
    的頭像 發(fā)表于 06-07 00:01 ?3859次閱讀

    11深度學(xué)習(xí)框架影響力對比

    現(xiàn)在數(shù)據(jù)科學(xué)領(lǐng)域最熱門的方向仍舊是深度學(xué)習(xí)。相應(yīng)地,深度學(xué)習(xí)框架也處于飛速變革之中?,F(xiàn)在最流行的框架
    的頭像 發(fā)表于 10-15 11:50 ?8861次閱讀

    Nanopi深度學(xué)習(xí)之路(1)深度學(xué)習(xí)框架分析

    就能實(shí)現(xiàn)!還請關(guān)注我后面的日記。實(shí)際上我也是剛剛有時間學(xué)習(xí)深度學(xué)習(xí),我是個純初學(xué)者,但面對深度學(xué)習(xí)里的各種復(fù)雜理論和公式推導(dǎo),自己實(shí)現(xiàn)個小功
    發(fā)表于 06-04 22:32

    深度學(xué)習(xí)算法和應(yīng)用涌現(xiàn)的背后,是各種各樣的深度學(xué)習(xí)工具和框架

    回顧深度學(xué)習(xí)框架的演變,我們可以清楚地看到深度學(xué)習(xí)框架深度
    的頭像 發(fā)表于 01-21 13:46 ?2701次閱讀

    可滿足中企的企業(yè)數(shù)據(jù)影響力評估模型框架

    的企業(yè)數(shù)據(jù)影響力評估模型( Data ImpactΔ ssessment Model,DAM)框架。考慮到現(xiàn)有υIAM模型尚未提出具體可行的評估方式,在模型
    發(fā)表于 04-28 13:56 ?2次下載
    可滿足中企的企業(yè)數(shù)據(jù)<b class='flag-5'>影響力</b><b class='flag-5'>評估</b>模型<b class='flag-5'>框架</b>

    主流深度學(xué)習(xí)框架的介紹

    導(dǎo)讀:近幾年隨著深度學(xué)習(xí)算法的發(fā)展,出現(xiàn)了許多深度學(xué)習(xí)框架。這些框架各有所長,各具特色。常用的開
    的頭像 發(fā)表于 04-26 18:45 ?8293次閱讀

    深度學(xué)習(xí)框架pytorch入門與實(shí)踐

    深度學(xué)習(xí)框架pytorch入門與實(shí)踐 深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一個分支,它使用多層神經(jīng)網(wǎng)絡(luò)對大量數(shù)
    的頭像 發(fā)表于 08-17 16:03 ?1518次閱讀

    深度學(xué)習(xí)框架是什么?深度學(xué)習(xí)框架有哪些?

    深度學(xué)習(xí)框架是什么?深度學(xué)習(xí)框架有哪些?? 深度
    的頭像 發(fā)表于 08-17 16:03 ?2580次閱讀

    深度學(xué)習(xí)框架的作用是什么

    深度學(xué)習(xí)框架的作用是什么 深度學(xué)習(xí)是一計算機(jī)技術(shù),它利用人工神經(jīng)網(wǎng)絡(luò)來模擬人類的
    的頭像 發(fā)表于 08-17 16:10 ?1480次閱讀

    深度學(xué)習(xí)框架tensorflow介紹

    深度學(xué)習(xí)框架tensorflow介紹 深度學(xué)習(xí)框架TensorFlow簡介
    的頭像 發(fā)表于 08-17 16:11 ?2369次閱讀

    深度學(xué)習(xí)算法庫框架學(xué)習(xí)

    深度學(xué)習(xí)算法庫框架學(xué)習(xí) 深度學(xué)習(xí)是一非常強(qiáng)大的機(jī)器
    的頭像 發(fā)表于 08-17 16:11 ?630次閱讀

    深度學(xué)習(xí)框架對照表

    深度學(xué)習(xí)框架對照表? 隨著人工智能技術(shù)的發(fā)展,深度學(xué)習(xí)正在成為當(dāng)今最熱門的研究領(lǐng)域之一。而深度
    的頭像 發(fā)表于 08-17 16:11 ?743次閱讀

    深度學(xué)習(xí)框架連接技術(shù)

    深度學(xué)習(xí)框架連接技術(shù) 深度學(xué)習(xí)框架是一個能夠幫助機(jī)器學(xué)習(xí)
    的頭像 發(fā)表于 08-17 16:11 ?718次閱讀

    深度學(xué)習(xí)cntk框架介紹

    深度學(xué)習(xí)cntk框架介紹? 深度學(xué)習(xí)是最近幾年來非常熱門的話題,它正在徹底改變我們生活和工作的方式。隨著越來越多的創(chuàng)新和發(fā)展,人工智能和機(jī)器
    的頭像 發(fā)表于 08-17 16:11 ?1233次閱讀

    深度學(xué)習(xí)框架深度學(xué)習(xí)算法教程

    深度學(xué)習(xí)框架深度學(xué)習(xí)算法教程 深度學(xué)習(xí)是機(jī)器
    的頭像 發(fā)表于 08-17 16:11 ?1007次閱讀