当前位置: 首页 > 科技观察

Python扩大领先优势,PyTorch仅占6.4%

时间:2023-03-13 11:45:46 科技观察

近日,著名数据科学网站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软件调查获得超过2,300票,略低于2017年,这可能是因为只有一家供应商RapidMiner积极参与了KDnuggets投票。平均而言,每位参与者选择了他们使用的7种不同工具,因此仅投票给一种工具会引入偏见。KDnuggets排除了大约260个这些“唯一好的”投票(主要来自RapidMiner),因为尽管他们代表该工具的合法用户,但他们的行为是非典型的并且会扭曲结果。以下是基于2052名参与者的初步结果分析,其中排除了“只有好”的选民。大约两周后将提供更详细的分析和匿名数据。顶级分析、数据科学、机器学习工具图1:KDnuggests分析/数据科学2018年软件调查:2018年顶级工具及其相对于2016-2017年的排名变化。(为了更有效的比较,KDnuggests排除了“好”投票者并重新计算了2016年、2017年的调查结果。)上图显示了前11个工具,每个工具的使用率至少为20%。表1:来自KDnuggests2018年软件调查的分析/数据科学/机器学习软件***此处,“2018%share”列是指使用该工具的用户百分比,“%change”是指2017年软件调查相比对于百分比变化,绿色和红色标记表示百分比变化了10%或更多。每个选民平均使用的工具数量为7,略高于2017年调查中的6.75(其中也不包括“好”选民)。与2017年的软件调查相比,进入前11名的新工具是Keras。Knime从第11位下降,可能是因为他们今年没有积极动员用户投票。以下是一些观察结果。Python正在蚕食R的用户空间。Python的使用率在2017年超过50%,今年它的使用率上升到66%,而R的使用率最近下降,跌破50%。RapidMiner在历次调查中,领先的数据科学平台RapidMiner传播迅速,用户使用率从2017年的33%上升到今年的52.7%。据RapidMiner创始人兼董事长IngoMierswa称,他们已经采取了一些措施来鼓励用户参与调查。对于KDnuggets的调查,IngoMierswa表示:“在过去的两年里,我们向用户发送了电子邮件来宣传这项调查,但今年有超过400名用户回复了邮件,并表示他们很乐意帮助RapidMiner的传播。而且今年RapidMiner月活跃用户增长率超过去年300%,所以我们向更多用户发送了更多关于KDnuggets调查的邮件。我很高兴看到这样一个活跃的社区。”SQL作为数据管理系统的编程语言保持稳定,SQL(包括SparkSQL和SQLtoHadoop工具)的使用率继续保持在40%左右,与前三项调查结果相同。所以如果你是一个有抱负的数据科学家,学好SQL,会用很久!趋势调查中唯一使用率超过2%的新工具是SparkSQL,为11.7%。下表列出了使用量增长20%或更多的工具,2018年使用率达到或超过3%。表2:使用量增幅最大的顶级分析/数据科学/机器学习工具。在2017年使用率达到或超过2%的56种工具中,有19种(仅三分之一)的使用量在2018年有所增加,而其余37种则有所下降。这与最近的收购(Angoss的Datawatch,Salford的Minitab)一起表明数据科学平台的整合正在进行中。2017年使用率至少为3%的工具今年下降了25%或更多,详见下表。表3:使用率下降的顶级分析/数据科学工具***。深度学习工具调查中使用深度学习工具的选民比例近两年来一直保持稳定。33%的选民在2018年使用深度学习工具,2017年为32%,2016年为18%。谷歌维护的TensorFlow仍然占据主导地位,而快速增长的Keras可作为构建在TensorFlow和MXNet。另一方面,推出一年的PyTorch吸引了一批研究人员和工程师,主要由Facebook带动,使用率为6.4%,排名第三。由于这个深度学习框架已经与Caffe2合并,未来我们肯定会看到更大份额的PyTorch。然而,KDnuggets更侧重于数据科学,更多地使用浅层机器学习算法。我们可能更愿意了解机器学习和深度学习社区的框架选择,所以读者可以在文末对常用的深度学习框架进行投票。深度学习工具排名:Tensorflow,29.9%Keras,22.2%PyTorch,6.4%Theano,4.9%其他深度学习工具,4.9%DeepLearning4J,3.4%MicrosoftCognitiveToolkit(Prev.CNTK),3.0%ApacheMXnet,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%(2017年为59.0%),R上升11%,48.5%(56.6%),SQL下降14%,39.6%(2017年为39.2%),Java上升1%,15.1%(原为15.5%),Unix下降3%,shell/awk/gawk,9.2%(原为10.8%),下降15%其他编程和数据语言,6.9%,(原为7.6%),-C/C++下降9%,6.8%,(原为7.1%),Scala下降3%,5.9%,(原为8.3%),Perl下降29%,1.0%(原为1.9%),Julia下降46%,0.7%(原为1.2%),Lisp下降45%,0.3%(原为0.4%),Clojure下降-25%,0.2%(原为0.3%),F下降-38%,#0.1%(原为0.5%),-73%地区参与度本次调查中不同地区的参与度百分比为:欧洲、美国/加拿大37.5%、亚洲36.6%、拉丁美洲11.7%、非洲/中东6.6%、澳大利亚/新西兰4.5%、3.1%与2017年相比,主要变化是欧洲的参与度更高(之前为35.5%),而美国/加拿大的参与度更低(之前为41.5%)。完整结果和3年趋势下表展示了调查结果的详细信息(由于篇幅限制,此处仅列出前12种工具):