Tensorflow是最好的框架!

深度栗 编译整理量子位 报道 | 公众号 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) ,并迅速迭代。

加了个油。

诚挚招聘

量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。

量子位 QbitAI · 头条号签约作者

վ’ᴗ’ ի 追踪AI技术和产品新动态

发表评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据