本文对 23 个深度学习库进行了排名,衡量的标准有三个:GitHub、Stack Overflow 以及谷歌搜索结果。TensorFlow 凭借最大、最活跃的社区主导了该领域,排名第一;Keras 是最为流行的深度学习前端,排名第二;Theano 依然实力强大,即使没有大公司的支持,排名第四;Sonnet 是成长最快的库,排名第六。

排名

我们排名 23 个用于数据科学的深度学习开源库,排名的衡量标准有 3 个:GitHub、Stack Overflow 活动以及谷歌搜索结果。

23个深度学习库大排名:TensorFlow、Keras名列一二,Sonnet增长最快1

上表中给出了每个开源库的总分值,以及各自在 GitHub、Stack Overflow 以及谷歌搜索上的得分(其中 0 为平均值)。比如,Caffe 在 Github 上的标准评分为 1,deeplearning4j 则接近 0。

结果与讨论

排名综合考虑上述 3 个方面而得出:Github(收藏量与 forks)、Stack Overflow(标签与问题)、谷歌搜索(全年与每季的增长率)。上述指标通过可用的 API 获取,所以得出深度学习工具包的完整列表需要一定技巧。计算每个指标的分值有利于我们知道在该方面深度学习库的排名情况。

TensorFlow 凭借最大、最活跃的社区主导了该领域

TensorFlow 在三个指标上的分值均为 2+;相比于排名第三的 Caffe,TensorFlow 的 Github forks 几乎是其 3 倍,Stack Overflow 问题是其 6 倍多。TensorFlow 由谷歌大脑团队于 2015 年首次开源,之后便一路攀升超越 Theano (4) 和 Torch (8) 而排名第一。尽管 TensorFlow 与运行在 C++引擎上的 Python API 一起分发,本次排名中的若干个库可把 TensorFlow 用作后端并提供其接口。这其中包括很快将成为核心 TensorFlow 和 Sonnet (6) 一部分的 Keras (2)。TensorFlow 的流行很可能来自于通用深度学习框架、灵活的接口、漂亮的计算图可视化以及谷歌大量的开发者与社区资源之间的整合。

Caffe 已经被 Caffe2 取代

由于比其他深度学习库(包括 TensorFlow 在内)更高的 Github 分值,Caffe 获得了排名第三的位置。Caffe 一般认为比 Tensorflow 更专业化,其开发聚焦在图像处理、目标识别和预训练卷积神经网络上。2017 年 4 月 Facebook 发布了 Caffe2,并已在所有的库中排名前半。Caffe2 相较于包含循环神经网络的 Caffe 更轻量化、模块化和可扩展。Caffe 与 Caffe2 彼此分离,因此数据科学家可继续使用 Caffe。但是,一些迁移工具比如 Caffe Translator 能提供使用 Caffe2 的方法以驱动现有 Caffe 模型。

Keras 是最为流行的深度学习前端

Keras (2) 是排名最高的非框架深度学习库,可被用作 TensorFlow (1)、Theano (4)、MXNet (7)、CNTK (9) 或 deeplearning4j (14) 的前端。Keras 的表现在三个指标上均高于平均值,其流行得益于简单性和易于上手。在数据集上进行深度学习实验的数据科学家尤其喜欢 Keras。随着 Keras 有了 R 语言接口,Keras 的开发与流行都将会继续下去。

Theano 依然实力强大,即使没有大公司的支持

新的深度学习框架层出不穷,Theano (4) 是排名中出现最早的库。Theano 率先使用计算图,在深度学习与机器学习社区中流行度不减当年。Theano 本质上是一个用于 Python 的数值计算库,也可被用于高阶的深度学习包装器,比如 Lasagne (15)。尽管谷歌支持 TensorFlow (1) 和 Keras (2),Facebook 支持 PyTorch (5) 和 Caffe2 (11),MXNet (7) 是亚马逊云服务官方指定的深度学习框架,CNTK (9) 由微软设计开发并为其所用,Theano 依然很流行,尽管没有得到任何一家大公司的青睐。

Sonnet 是成长最快的库

2017 年早期,谷歌 DeepMind 公开发布了 Sonnet(6) 的代码,这是一个建立在 TensorFlow 上的高级目标导向的库。其在谷歌搜索结果的页数对比上一季度增长了 272%,是我们选取的库中增长最快的。尽管谷歌在 2014 年收购了这个英国的人工智能公司,DeepMind 和谷歌大脑仍然保持最大程度的独立性。DeepMind 关注人工生成的智能,而 Sonnet 能帮助用户在他们具体的 AI 想法和研究上构建高级结构。

Python 是深度学习接口的主要语言

PyTorch(5) 是一个底部接口为 Python 的框架,在我们的列表中是成长第二快的库。对比上一个季度,PyTorch 的谷歌搜索结果增长了 236%。在所有 23 个开源深度学习框架和封装中,只有三个没有使用 Python 接口:Dlib、MatConvNet 和 OpenNN,有 6 到 7 个库分别使用了 C++和 R 的接口。尽管数据科学社区某种程度上都一致同意使用 Python,实际上在深度学习中还是有很多的选择。

局限性

使用更长久的库通常会有更高的指标,因此排名会更加靠前。我们这里只使用了唯一的指标,即谷歌搜索季度增长率(Google search quarterly growth rate)。

数据中展示了几种困难:

1.神经网络设计和数学软件都是特有的,因此被删去

2.CNTK 也称作微软认知工具箱,但我们只使用了原始的 cntk 命名

3.Neon 改为 Nervana Neon

4.Paddle 改为 PaddlePaddle

有些库明显是由其它库衍生出来的,比如 Caffe 和 Caffe2。我们决定将拥有唯一的 GitHub 资料库的库作为单个处理。

方法

首先,我们从 5 个不同的来源中生成了一个 23 个开源深度学习库的列表,然后收集它们的所有指标,并给出排名。GitHub 数据基于 star 指标和 fork 指标,Stack Overflow 数据基于标签和包含软件包名称的问题,谷歌搜索结果基于过去 5 年内谷歌搜索的结果总数目和过去 3 个月对比之前 3 个月计算得出的季度增长率。

关注中国IDC圈官方微信:idc-quan 我们将定期推送IDC产业最新资讯

查看心情排 行你看到此篇文章的感受是:


  • 支持

  • 高兴

  • 震惊

  • 愤怒

  • 无聊

  • 无奈

  • 谎言

  • 枪稿

  • 不解

  • 标题党
2019-06-17 17:29:58
大数据资讯 Teradata CTO宝立明:运用分析引擎实现机器学习和深度学习
Teradata天睿公司首席技术官宝立明(Stephen Brobst)认为,高级分析的发展可以分为三个阶段:第一阶段是描述性分析,用于洞察过去;第二阶段是预测性分析,能够了解未来;第三 <详情>
2019-01-17 10:50:00
国内资讯 为中国医疗AI建言献策,医疗人工智能技术发展与产业应用研讨会召开
“智能化医疗器械产业科技创新服务平台开发及应用”课题旨在建立基于医疗器械产业大数据和云服务的新型产业科技创新支撑平台。 <详情>
2018-03-09 12:04:00
大数据资讯 全国仅两家!曙光深度学习开源平台入列国家AI重大工程
3月5日上午,十三届全国人大一次会议在人民大会堂开幕,国务院总理李克强在政府工作报告中再提“人工智能”。 <详情>
2018-01-18 14:11:00
市场情报 《2017年人工智能行业发展研究报告白皮书》发布 以数洞见行业未来
2010年以来,基于深度学习的人工智能技术陆续在谷歌、Facebook、百度等顶尖互联网公司获得广泛应用;2016年,谷歌的战略重心已从“移动先行”全面转向“人工智能先行”;20 <详情>
2017-12-27 09:29:00
国际资讯 禁止数据中心使用 GeForce 的英伟达,是在滥用自己的垄断地位吗?
一直以来,对于不少游戏玩家来说,英伟达旗下的 GeForce 消费级显卡一直是热门之选;随着人工智能和深度学习的兴起,GeForce 又被某些用户用于进行深度学习相关任务。 <详情>