第18届年度KDnuggets软件投票又一次受到了分析、数据科学界和软件生产商的热情参与。与去年相似,约有2900人参与了此次投票。最近几年,Python的使用增长率一直比R快,到今年,Python终于以微弱的优势超过了R的使用率 (52.6% Vs 52.1%)。然而最大的惊喜应该是深度学习工具的广泛共享和使用。2017年深度学习有32%的使用率,而在2016年只有18%,2015年9%。谷歌Tensorflow迅速成为深度学习平台的领头者,以20.2%的使用率领先于其他平台。它去年的使用率只有6.8%,但在今年它进入了使用工具的前10名。2014年分析、数据挖掘、数据科学的主要工具有四种:R、Python、SQL和SAS,而2017年达到了五种,分别是Python、R、SQL、Saprk和Tensorflow。RapidMiner以33%左右的使用率占据着数据挖掘/数据科学中最流行的通用平台前列,这和2016年几乎完全一样。
我们注意到,许多软件厂商都鼓励自己的用户投票给自己,但所有的软件厂商都有平等的机会这么做,因此这并不违反KDnuggets准则。我们没有看到任何机器自动投票或只投给一个工具的情形。
Spark增长到约23%,在Hadoop体系中保持前10位的领先地位。
除了TensorFlow外,在顶端也出现了另一个新工具Anaconda,有22%的使用率。
分析、数据科学、机器学习领域使用率居前的工具
表1:分析/数据科学领域2015-2017年KDnuggets 投票结果对比
上图展示了前11名的结果,每一个实用工具的支持票数都超过了500。在上表中 ,”2017%Usage”是今年使用这个工具的投票者百分比, “%Change 2017 Vs 2016″ 是与2016年使用情况的对比,这里用绿色和红色高亮表示改变超过5%以上的情况,”% alone” 是只使用当前工具的投票者占比。每个投票者工具平均使用数为6.1,和2016年6.0相比几乎没有变化 。对比于 2016年 KDnuggets分析/数据科学票选结果,前11名中新晋的工具是Anaconda和Tensorflow。
各个区域的参与度如下:
• 美国/加拿大(41.5%)
• 欧洲(35.5%)
• 亚洲(10.1%)
• 拉丁美洲(6.5%)
• 非洲/中东地区(3.8%)
• 澳大利亚/新西兰(2.7%)
趋势新工具在调查中有超过2%的使用率是• Keras(9.5%)• PyCharm(9%)
• 微软R(4.3%)
• IBM DSX(3.0%)
• PyTorch(3.0%)
• Teradata(2.4 %)
下表列出了在2017年里使用增长率超过20%且使用率至少达到2%的工具,这其中包括5个深度学习工具和4个Microsoft工具。
表2:使用率增长最快的分析/数据科学工具
DataRobot 虽然使用率不足2%,但它从2016年的0.5%增长到了2017年的1.9%。我们注意到,在2016年中至少有2%使用率的工具中,有22个使用量在增加,27个处于下降阶段。这表明,数据科学平台市场仍然没有被整合起来。下表展示了在2016年至少有2%的使用率,但在2017年使用率至少减少了20%的工具。Turi和Salford在最近被收购,Perl和Octave被Python和R打败,RapidInsight也许是没有提醒其用户投票给自己,QlikView很可能输给了Tableau,C4.5可以算是过时技术了。有趣的是,Hadoop体系的的开源工具里,针对于MLlib和其他免费开源分析/数据挖掘工具的使用量也在减少。
表3:使用率下降最快的分析/数据科学工具
深度学习工具今年深度学习工具的使用率跃升到32%,2016年只有18%,2015年的9%。谷歌Tensorflow是占主导地位的平台,取代了去年的领导者Theano / Pylearn2。排名前列的工具有:
• Tensorflow,20.2%使用率
• Keras,9.5%
• Theano,5.8%
• Other Deep Learning Tools,4.8%
• Mirrosoft CNTK,3.4%
• Caffe,3.1%
• PyTorch,3.0%
• DL4J 2.2%
• MxNet,1.8%
• Torch,1.2%
• Lasagne,0.9%
Hadoop的/大数据工具我们已经简化了Hadoop体系下的针对于Hadoop/Spark类工具的的分类。Hadoop下的商业/开源工具、SQL和Spark的使用率占到了33%。这比2016年的39%略低,但2016年很多工具都被划分为大数据工具。2015年,Spark/Hadoop的工具使用率为29%。在2017年的大数据工具的使用是:• Spark,22.7%
• Hadoop 开源工具,15.0%
• Hadoop SQL,10.3%
• Hadoop 商业工具 7.6%
Python、Java、Unix,scala大受欢迎 而C/C ++,Perl,Julia,F#,Clojure和Lisp下降。以下是按投票排名的主要编程语言:• Python,52.6%的使用率(2016年45.8%)
• R,52.1%(2016年49.0%),增长6%
• SQL,34.9%(35.5%),下跌2%
• Java,13.8%(16.8%),下跌18%
• Unix Shell/ AWK / GAWK,9.6%(10.4%),下跌7%
• C / C ++,6.3%,(7.3%),下跌13%
• Perl,1.7%,(2.3%),下跌27%
• Julia,1.1%(1.1%),无变化
Python不断学习竞争对手Julia,持续增长,然而Julia的使用率却令人惊讶地保持了不变。