2018数据分析、数据科学以及机器学习领域顶级工具的排名与趋势
Python 侵占 R,
RapidMiner激增,
SQL相对稳定,
Tensorflow排名上升且拉动了Keras,
Hadoop下降,
数据科学平台开始进入整合阶段...
在第19届KDnuggets软件年度调查活动中,超过2300名选民参与了投票环节,比2017年少了一些,可能是因为只有一家供应商(RapidMiner)在KDnuggets投票中进行了非常活跃的投票活动。平均而言,参与者大约选择了7种不同的工具,因此只选择了一种工具的选票就凸显出来。 本文排除了大约260个这样的”单票(lone votes)”(主要来自RapidMiner),因为即使他们可以代表使用该工具的用户,他们的经历也非常不典型,并且会导致结果的不一致。为了更好地进行比较,本文还从2016年和2017年的数据中删除了这些单票(2017年约为11%,2016年为12%)。因此,本文所涉及的多数工具的投票比例将会略高于在2017年报道过的比例。本文已排除了”单票”现象,并根据2052名参与者的数据所进行了初步分析,更详细的关联分析和匿名数据分析即将发布。
图1 KDnuggets分析/数据科学领域2018年软件调查:2018年主要工具排名及其在2016 - 2017年度民意调查中的使用率(share of usage)(注:为了便于对比分析,重新计算了2016年,2017年投票的结果以排除”单票("lone" votes)”)
表1 排名数据
在表1中,2018 % share 是使用该工具的选民的百分比,% change是与2017年软件调查相比百分比的变化,绿色和红色突出显示10%或更多的变化。每名受访者的平均工具投票数量为7.0,略高于2017年投票中的6.75(不包括单一工具投票)。与2017年软件投票相比,出现了一个新的软件是Keras。 Knime掉出前11名,可能是因为今年他们的用户没有参与投票活动。
截至2017年,Python已经拥有超过50%的使用率,并将其使用率提高到66%,而自从我们的调查完成之后,R的使用率开始下降,并下降到了50%以下。
在过去的几轮调查中,RapidMiner是最重要的数据科学平台,它的使用率从2017年的33%大幅增加到50%左右。这其中哪个部分是由于用户增长导致的,哪个部分是由于供应商推广导致的?我问过RapidMiner做了什么来鼓励他们的用户,RapidMiner创始人兼总裁Ingo Mierswa的如是回应:“与许多供应商一样,RapidMiner通过多种渠道向用户推广KDnuggets调查,其中包括向过去12个月内使用过我们产品的用户发送了几封电子邮件,之前我们做过同样的推广,但今年的情况有所不同。首先,今年我们得到了更好的回应,超过400位用户亲自回复我们的电子邮件,因为我们的帮助,他们感到非常高兴,但更重要的是,我们看到过去一年每月活跃的RapidMiner用户增长了300% ,所以我们比以前更多地向用户发送电子邮件,我们很高兴有这样一个忠诚的用户社区。”需要指出的是,我注意到RapidMiner不是KDnuggets上的当前广告商。
SQL,包括Spark SQL,SQL to Hadoop工具在内,SQL在最近的3次调查中仍然占有约40%的使用率。 所以,如果你是一位有抱负的数据科学家,学习SQL--它可能会在很长一段时间内很有用。
在调查中,使用率超过2%的唯一新条目是Spark SQL,拥有11.7%的使用率。下表列出了2018年使用率增长20%或以上,并且至少达到3%的工具。
表2 使用率增加最多的数据分析/数据科学/ ML工具
我们注意到2017年有56个工具在2017年拥有2%或更高的使用率,但在2018年只有19个工具的(仅约三分之一)使用率有所增加,而有37份工具的使用率下降。 这与最近的收购(Datawatch收购Angoss,Minitab收购Salford)均表明数据科学平台的整合即将展开。
表3 使用率下降幅度最明显的主要数据分析/数据科学工具
使用深度学习工具的选民比例保持稳定,为33%,2017年为32%,2016年为18%。谷歌Tensorflow是迄今为止最主要的平台,但Keras的出现使其成为了Tensorflow上非常受欢迎的封装。
深度学习工具排名是:
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%
2018年,约33%的人使用Hadoop或Spark等大数据工具 - 与2017年大致相同,但Hadoop使用率显着下降约30%。
Python似乎不仅超越了R,还超越了其他大多数语言,除了SQL,Java和C / C ++之外,它们保持在大致相同的水平。自从我们开展这项调查以来,R的排名已经开始下降。其他语言也有所下降,以下是按受欢迎程度排序的主要编程语言。
Python,65.6%(2017年为59.0%),上升11%
R,48.5%(56.6%),下跌14%
SQL,39.6%(39.2%),1%以上
Java,15.1%(15.5%),下跌3%
Unix,shell / awk / gawk,9.2%(10.8%),15%下降
其他编程和数据语言,6.9%(7.6%),-9%下降
C / C ++,6.8%,(7.1%),下跌3%
斯卡拉,5.9%,(8.3%),29%下降
Perl,1.0%(1.9%),下降46%
朱莉娅0.7%(1.2%),下降45%
Lisp,0.3%(为0.4%),下跌25%
Clojure,0.2%(0.3%),-38%下跌
F,#0.1%(为0.5%),下跌-73%
近3年各地区的参与情况如下:
欧洲:37.5%
美国/加拿大:36.6%
亚洲:11.7%
拉丁美洲:6.6%
非洲/中东:4.5%
澳大利亚/新西兰:3.1%
与2017年相比,主要变化是来自欧洲的参与率升高(从35.5%上升),而来自美国/加拿大的参与率则从41.5%下降。
历届数据分析,数据挖掘,数据科学软件的KDnuggets民意调查的结果及其原文链接如下:
New Leader, Trends, and Surprises in Analytics, Data Science, Machine Learning Software Poll, 2017
R, Python Duel As Top Analytics, Data Science software, 2016
R leads RapidMiner, Python catches up, Big Data tools grow, Spark ignites, 2015
RapidMiner Continues To Lead, 2014
RapidMiner and R vie for first place, 2013
KDnuggets 2012 Poll: Analytics, Data mining, Big Data software used
KDnuggets 2011 Poll: Data Mining/Analytic Tools Used
KDnuggets 2010 Poll: Data Mining / Analytic Tools Used
KDnuggets 2009 Poll: Data Mining Tools Used
KDnuggets 2008 Poll: Data Mining Software Used
KDnuggets 2007 Poll: Data Mining/Analytics Software Tools
文后评论与留言
Jean-Francois Puget,@JFPuget:我有点失望,最新的@kdnuggets民意调查不包括使用XGBoost或其他梯度增强机器。这是一个真正趋势的缺失。#MachineLearning
Miyuru,WSO2流处理器 WSO2流处理器是目前全球许多企业使用的开源,可扩展,功能丰富的流处理平台。 它可以从Kafka,HTTP请求,消息代理获取数据,并且可以使用“Streaming SQL”语言查询数据流。 只用两台商品服务器,它具有高可用性,并且可以处理100K + TPS吞吐量。 它可以在Kafka之上扩展到数百万TPS。 WSO2流处理器是使用Siddhi库构建的,该库执行流处理和复杂事件处理。 请参阅https://wso2.com/analytics,https://github.com/wso2/siddhi
Naveen Goud Bobburi,RStudio是我日常使用的,也不在列表中。
1.本文原作者为Gregory Piatetsky,原文标题《Python eats away at R: Top Software for Analytics, Data Science, Machine Learning in 2018: Trends and Analysis》,原文URLhttps://www.kdnuggets.com/2018/05/poll-tools-analytics-data-science-machine-learning-results.html。
2.由王雨晴、朝乐门负责翻译、校对、编辑和发布。
3.欢迎提出补充和纠正。