Python 扩大领先优势,其中 PyTorch 仅占 6.4%
近日,著名数据科学网站 KDnuggets 发布了 2018 年数据科学和机器学习工具调查结果。超过 2000 人对自己「过去 12 个月内在项目开发中使用过的数据挖掘/机器学习工具和编程语言」进行了投票。该统计还对过去三年来的排名进行了对比分析。
这份投票结果既有预料之内,也有预料之外的部分。数据显示,Python 作为机器学习常用的编程语言正在不断扩大领先优势,R 语言的使用率第一次降到了 50% 以下。在深度学习框架上,最近呼声很高的深度学习框架 PyTorch 仅仅占据了 6.4% 的使用率,远远落后于 TensorFlow 的 29.9% 和 Keras 的 22.2%。
Python 继续侵蚀着 R 的用户领域,RapidMiner 热门度增加,SQL 保持稳定,TensorFlow 和 Keras 引领前进,Hadoop 衰落,数据科学平台整合等等。
第 19 次年度 KDnuggets 软件调查有超过 2300 人参与投票,略微少于 2017 年,可能是因为仅有一个供应商 RapidMiner 积极地参与 KDnuggests 调查的投票。平均来说,每个参与者选择 7 个使用过的不同工具,因此仅投票一个工具会带来偏差。KDnuggets 排除了大约 260 个这样的「独好」投票(主要来自 RapidMiner),因为即使他们代表了该工具的合法用户,他们的行为也是非典型的,并且会歪曲结果。
以下是基于 2052 个参与者的初始结果分析,其中「独好」投票者已被排除。更多详细分析和匿名数据将在大约两周内公布。
最受欢迎的分析、数据科学、机器学习工具
图 1:KDnuggests 分析/数据科学 2018 年软件调查:2018 年最受欢迎工具,以及它们相对于 2016-2017 年的排名变化。(为了更有效的比较,KDnuggests 排除了「独好」投票者并重新计算了 2016 年、2017 年的调查结果。)
上图显示了排名前 11 的工具,每个工具的使用率至少为 20%。
表 1:KDnuggests 2018 年软件调查最受欢迎的分析/数据科学/机器学习软件
在这里,「2018 % share」一栏是指使用该工具的用户百分比,「% change」是指和 2017 年软件调查相比的变化比例,绿色和红色标记表示比例的变化幅度达到了 10% 或更多。
每个投票人的平均使用工具数量是 7 个,略微高于 2017 年调查的 6.75 个(也排除了「独好」投票人)。
和 2017 年的软件调查相比,进入前 11 名的新工具是 Keras。Knime 从第 11 名下跌,可能是因为今年他们并没有积极调动其用户参与投票。
以下是一些观察结果。
Python 正在吞噬 R 的用户领域
2017 年 Python 的使用率超过 50%,今年它的使用率上升至 66%,而 R 的使用率首次下跌,跌破 50%。
RapidMiner
在之前的几次问卷中,RapidMiner 这一顶级数据科学平台正快速传播,它的用户使用率由 2017 年的 33% 增长到了今年的 52.7%。根据 RapidMiner 的创始人和董事长 Ingo Mierswa,他们采取了一些措施鼓励用户参与该调查。
对于 KDnuggets 的问卷调查,Ingo Mierswa 说:「近两年我们都向用户发送邮件推广该问卷调查,但今年有超过 400 多位用户回邮件表示很高兴能帮助 RapidMiner 的传播。而且今年 RapidMiner 月度活跃用户增长率超出去年 300%,因此我们向更多用户发送了关于 KDnuggets 问卷调查的邮件。我很高兴看到如此活跃的社区。」
SQL 保持稳定
作为数据管理系统的程序语言,SQL(包括 Spark SQL 和 SQL to Hadoop 工具)继续保持着约 40% 的使用率,和之前 3 次调查结果一样。因此,如果你是一位有雄心壮志的数据科学家,学习 SQL 吧,它在很长一段时间里都会很有用!
趋势
该调查唯一使用率超过 2% 的新工具是 Spark SQL,使用率达到 11.7%。下表列举了使用率增幅达到 20% 及以上、2018 年使用率为 3% 以上的工具。
表 2:使用率增幅最大的主要分析/数据科学/机器学习工具。
整合
2017 年使用率达到 2% 及以上的 56 个工具中,有 19 个(仅 1/3)工具在 2018 年使用率有所上升,其余 37 个均下降。这和近期的收购案(Datawatch 收购 Angoss、Minitab 收购 Salford)一道表明数据科学平台的整合正在进行过程中。
2017 年使用率至少 3% 的工具,今年下降了 25% 甚至更多,详见下表。
表 3:使用率跌幅最大的主要分析/数据科学工具。
深度学习工具
近两年,该调查中使用深度学习工具的投票者所占份额保持稳定。2018 年有 33% 的投票者使用深度学习工具,2017 年和 2016 年分别有 32% 和 18%。谷歌维护的 TensorFlow 仍然占主导地位,而发展迅速的 Keras 可作为构建在 TensorFlow 和 MXNet 等框架上的高级 API。
另一方面,主要由 Facebook 推动,推出已过一年的 PyTorch 吸引了一批研究者和工程人员,使用率达到 6.4%,排名第三。由于这款深度学习框架已和 Caffe2 合并,在未来我们肯定将会看到 PyTorch 占据更大的份额。
不过 KDnuggets 更关注数据科学,也更常使用浅层的机器学习算法。我们可能更希望了解机器学习及深度学习社区在框架上的选择,因此读者可以在文末对常用的深度学习框架进行投票。
深度学习工具排名:
Tensorflow, 29.9%
Keras, 22.2%
PyTorch, 6.4%
Theano, 4.9%
Other Deep Learning Tools, 4.9%
DeepLearning4J, 3.4%
Microsoft Cognitive Toolkit (Prev. CNTK), 3.0%
Apache MXnet, 1.5%
Caffe, 1.5%
Caffe2, 1.2%
TFLearn, 1.1%
Torch, 1.0%
Lasagne, 0.3%
大数据工具:Hadoop 使用率下降
2018 年,大约 33% 的用户使用大数据工具,要么是 Hadoop,要么是 Spark,和 2017 年一样。但 Hadoop 的使用率显著下降,跌幅超过 30%。
以下是相关细节:
编程语言
Python 似乎不仅正在取代 R,还包括除了 SQL、Java、C/C++ 之外的大多数其它语言,这三者与 Python 大致处于同一个级别。自 KDnuggets 开始做这项调查以来,R 使用率首次出现下跌。其它语言也出现了衰落的趋势。
以下是按热门度排序的主要编程语言:
Python, 65.6% (was 59.0% in 2017), 11% up
R, 48.5% (was 56.6%), 14% down
SQL, 39.6% (was 39.2%), 1% up
Java, 15.1% (was 15.5%), 3% down
Unix, shell/awk/gawk, 9.2% (was 10.8%), 15% down
Other programming and data languages, 6.9%, (was 7.6%), -9% down
C/C++, 6.8%, (was 7.1%), 3% down
Scala, 5.9%, (was 8.3%), 29% down
Perl, 1.0% (was 1.9%), 46% down
Julia, 0.7% (was 1.2%), 45% down
Lisp, 0.3% (was 0.4%), -25% down
Clojure, 0.2% (was 0.3%), -38% down
F, # 0.1% (was 0.5%), -73% down
地区参与度
本次调查中不同地区的参与比例是:
欧洲,37.5%
美国/加拿大,36.6%
亚洲,11.7%
拉丁美洲,6.6%
非洲/中东,4.5%
澳大利亚/新西兰,3.1%
和 2017 年相比,主要的变化是欧洲的参与比例变高了(之前为 35.5%),而美国/加拿大的参与比例变低了(之前为 41.5%)。
完整结果和 3 年来的趋势
以下表格展示了调查结果的细节(由于篇幅限制,此处仅列出排名前 12 的工具):
更完整的列表请参考原文
翻译:机器之心

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里获邀加入 JCP ,参与制定 Java 全球标准和技术规范
2018年5月17日,作为唯一中国代表,阿里巴巴获邀加入 Java 全球管理组织 Java Community Process (JCP) 的最高执行委员会。此次获得执行委员会席位,让中国企业首次加入到 Java 全球标准的制定中,更多“中国标准”有望成为全球规范。 JCP 是一个开放性的国际技术标准组织,职责是发展和更新 Java 技术规范。由24个成员组成的执行委员会则是该组织的最高决策机构,负责规划 Java 的技术演进方向。 Java 是全球使用最为广泛的开发语言之一。目前 Java 技术已无处不在,无论是手机应用、电脑软件还是物联网,众多中国互联网企业也将 Java 作为主要编程语言。但长期以来,Java 标准规范的制定主要由甲骨文、ARM、IBM、Intel、SAP、Twitter 等国外企业主导。此次阿里加入 JCP 执行委员会后,将把更多中国开发者的声音带入 Java 规范的制定中,使更多“中国标准”成为全球规范。2017年阿里就面向全球发布了《阿里巴巴 Java 开发规约》,这一规约集合了众多中国工程师的智慧与经验,帮助全球开发者实现了更为高效、更加容错、更有协作性的...
- 下一篇
甲骨文称 Java 序列化的存在是个错误,计划删除
甲骨文计划从 Java 中去除序列化功能,因其在安全方面一直是一个棘手的问题。 Java 序列化也称为 Java 对象序列化,该功能用于将对象编码为字节流...Oracle 的 Java 平台小组的首席架构师 Mark Reinhold 说:“删除序列化是一个长期目标,并且是 Project Amber 的一部分,它专注于面向生产力的 Java 语言功能。” 为了替换当前的序列化技术,一旦记录,会在平台中放置一个小的序列化框架,支持 Java 版本的数据类。该框架可以支持记录图形,开发人员可以插入他们选择的序列化引擎,支持 JSON 或 XML 等格式,从而以安全的方式序列化记录。 但 Reinhold 还不能确定哪个版本的 Java 将具有记录功能。 序列化在 1997 年是一个“可怕的错误”,Reinhold 说。 他估计至少有三分之一甚至是一半的 Java 漏洞涉及序列化,序列化总体上是脆弱的,但具有在简单用例中易于使用的特性。 编译自:InfoWorld
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16