深度學習框架排行榜:找工作學TensorFlow,PyTorch搜索量逼近Keras
深度栗 編譯整理
量子位 報道 | 公眾號 QbitAI
深度學習的世界,風雲變幻。
五年前,還是Theano稱霸的天下,如今完全不一樣的了。
所以,一個叫Jeff Hale的數據科學家,想全方位觀察一下,每個深度學習框架有多受歡迎,發現了很多有趣的現象。
先總體看一下,各個深度學習框架的武力值 (Power Scores) :
TensorFlow的第一名無可爭辯,也是找工作所需技能首選,但依然有些數據出人意料。
比如,走出美國,最常用的框架就成了Keras。
比如,PyTorch的谷歌搜索量逼近Keras。
比如,FastAI框架正在迅速積累開發者。
選手依次介紹
這些框架都是開源的,除了一位選手之外,大家都支持Python,有些還支持R或其他語言。
谷歌系選手
TensorFlow是最重量級的選手,谷歌系。GitHub活躍度最高,谷歌搜索量最大,關於它ArXiv論文也最多。
使用TensorFlow的開發者數量也是最多的。
第二受歡迎的是Keras,幾乎每一項指標都是第二名。根據官方標語,它是「為人類設計,不是為機器設計的API」。
Keras是在TensorFlow、Theano或者NLTK上運行的。容易上手,新人之選。
Facebook系選手
第三名是PyTorch,Facebook系,也是獨立框架的第二名(Keras不獨立) 。它比TensorFlow出生要晚,但熱度增長很快。
PyTorch支持自定義(Customization) ,這一點TensorFlow是不行的。
第四名。Theano是蒙特利爾大學2007年開發出來的,也是最早強大起來的Python深度學習框架。
可是自從Joshua Bengio宣布停止更新不再維護,它就失去了許多擁躉。
MXNET排第五,來自Apache。不過,它的分數和Theano已經很接近了,隨時可能取代第四名。不過,去年報告顯示,MXNET用量有所下降。搜索量也不是很高。
來自微軟
第六名CNTK,是微軟發布的認知工具包。微軟為了和谷歌、Facebook競爭,推出了許多這樣的產品,但用戶並暫時不是很多。
Deeplearning4J第七。榜單中唯一不支持Python的框架,用的是Java。
即便如此,用戶還是可以把用Keras寫的模型導入DL4J。
這位選手,是中途加入比賽的,最初的榜單里並沒有它。Jeff選擇補上它,所以為它多累計了4天數據。
DL4J特殊的地方在於,用全稱和簡稱分別統計的數據,差異比較大。做法是統一選取較高的數據。但總體分數不高,所以對結果影響不大。
第八是FastAI,基於PyTorch搭建的新框架。API受到了Keras的啟發,要用更少的代碼得到更好的結果。
它出生沒多久,10月就要發布1.0版本了。FastAI接下來的課程,基本都會基於這個框架了。由於免費課程用戶量很大,Jeff看好框架今後的增長。
FastAI背後的大佬是Jeremy Howard,Kaggle前總裁,也曾經是冠軍Kaggler。
以上就是全部參賽選手,Caffe沒在裡面,因為進化成了Caffe 2,Caffe 2又並進PyTorch了。
比賽項目有哪些
招聘需求 (Job Listings)
和機器學習有關的工作崗位,要求用什麼框架?這個問題的答案里,TensorFlow的出鏡率最高。
這裡使用機器學習+框架名(如machine learning TensorFlow) 來統計的,Jeff發現這樣效果最好。
所以,找工作還是學TensorFlow吧。
用量 (Usage) :出了美國,Keras是冠軍
這裡用了KDnuggets 2018年做的問卷調查,是向全球的數據科學家提問:
過去12個月,你用過什麼分析、大數據、數據科學以及機器學習軟體,來做項目?
答案如下。
有些意外的是,Keras的佔比超過20%,非常逼近TensorFlow了。
以及,TensorFlow在美國有壓倒性優勢,但在世界上的其他地方,Keras是最常用的。
谷歌搜索 (Google Search Activity)
觀察一個框架有多受歡迎,看搜索量也是個好方法。
這裡用的是過去一年的Google Trends。谷歌不提供絕對數據,只有相對數據。
百分制,TensorFlow拿到78分,排名第二的Keras只有38分。這是今年9月15日的數據。
不過,第三名PyTorch和第二名Keras相差無幾。
其他選手的搜索量,和前三名相比,幾乎可以忽略不計。
再看一下搜索值,在兩年時間內的變化:
前三名在16、17年都發生了迅速的增長,但近幾個月來都沒有很兇猛的漲勢。
另外,季節性變化也是有的,寒暑假搜索量會下降。
文章發表 (Publications) :有驚喜
文章在哪?Medium、Amazon Books、ArXiv……
· Medium
這是發表技術類文章的好去處,也是打破排名規律的地方。
Keras超過了TensorFlow,接近5萬篇。
排名第三的PyTorch,已經不到1萬篇。
FastAI第四,和第三名分數接近,且遠遠超過了後面的其他對手。
可能因為Keras和FastAI都是初學者友好的產品,才有了這樣的結果。
· 亞馬遜圖書
雖然TensorFlow又贏回來了,但還是有驚喜。
MXNET排到第三名,超過了PyTorch。
大概是因為PyTorch還年輕,而這項指標是越老越吃香的。
· ArXiv
在論文在線存儲之地,搜索每個框架。
TensorFlow領先不意外,但也領先太多了,是第二名PyTorch的5倍左右。
第二名到第六名相去不遠。
需要對比一下,在Medium學術型的文章里,Keras排名第一,而在ArXiv上面表現並不突出。
GitHub活躍度
這裡,標星 (Star) 、分叉 (Fork) 、關注量 (Watch) 和貢獻者 (Contributor) ,是分開統計的。
TensorFlow依然優勢明顯,尤其是前三項。
但在貢獻者數量上,選手們的差距並沒有那麼大。尤其是剛剛出生的FastAI,已經積累了不少用戶。
各類指標合體
按照餅圖中的權重分配,把所有的比賽結果,融為一體。
招聘需求和KDnuggets問卷這兩項加起來,就佔了一半比重。
而谷歌搜索量、發表文章以及GitHub活動一共佔一半。
原始數據長這樣,觀賞的時候,可以鍛煉一下脖子:
整合之後,就是文章開頭看到的樣子。
學習,學習
PyTorch有朝一日能不能超越TensorFlow?
FastAI的一大批學生,會不會喜歡他們的新框架?
只有時間才知道。
不過,不妨礙各位先選個框架開始學:
Keras適合新手,TensorFlow適合掌握需求,PyTorch靈活性更好。
FastAI 1.0或許可以期待一下?畢竟團隊承諾讓用戶輕鬆用上最新的深度學習策略 (Strategies) ,並迅速迭代。
加了個油。
—完—
加入社群
量子位AI社群28群開始招募啦,歡迎對AI感興趣的同學,在量子位公眾號(QbitAI)對話界面回復關鍵字「交流群」,獲取入群方式;
此外,量子位專業細分群(自動駕駛、CV、NLP、機器學習等)正在招募,面向正在從事相關領域的工程師及研究人員。
進專業群請在量子位公眾號(QbitAI)對話界面回復關鍵字「專業群」,獲取入群方式。(專業群審核較嚴,敬請諒解)
誠摯招聘
量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復「招聘」兩個字。


※用DensePose,教照片里的人學跳舞,系群體鬼畜
※DeepMind的腦補AI再獲新技能:看文字知場景、複雜環境、連續視頻……
TAG:量子位 |