最风行的呆板进修R语言软件包是哪些?
当前位置:以往代写 > 其他教程 >最风行的呆板进修R语言软件包是哪些?
2019-06-14

最风行的呆板进修R语言软件包是哪些?

最风行的呆板进修R语言软件包是哪些?

The Data Incubator 中,有着的数据科学(data science)课程。个中大部门的课程都是基于企业和当局相助同伴的需求而设立的。此刻他们但愿开拓一更方向数据为驱动的方法,以相识应该为数据科学企业的培训(data science corporate training,以及享受其提供的免费助学金的有意愿进入业界数据科学规模的硕博士生们传授什么样的内容。功效如下。
排名什么是最风行的呆板进修包(ML packages)?让我们来看一下基于包下载量(package downloads)和社交网站活泼度的排名。最盛行的机械学习R语言软件包是哪些?注:OneR: 1 (SO); mlr: 2 (Github); ranger: 4 (Github); SuperLearner: 5 (Github)
该排名基于 CRAN ( The Comprehensive R Archive Network (https://cran.r-project.org/) ) 下载量和 Stack Overflow 活泼性的平均排名(完整排名 [CSV] (https://github.com/thedataincubator/data-science-blogs/blob/master/ranking.csv)))。
个中 CRAN 的下载量是已往一年的数据。Stack Overflow 则是按照基于问题正文中下载包的名称并以 『R』举办标志的功效数举办排名。
GitHub 的排名则是由存储库中的星星数而来。有关要领的具体信息,请参阅下文 
CARET 排名第一,多个神经网络排名靠前 caret 排名第一也许并不奇怪。它是一个用于建设呆板进修事情流的通用软件包,能很好地与一些算法特定的软件包(排名靠后)整合在一起。
这些包罗了 e1071 ( 用于支持向量机,SVMs), rpart (trees), glmnet ( 正则化回归,regularized regressions), 也许尚有 R,神经网络 (nnet)。有关软件包的具体信息如下 
排名说明白 R 软件包社区的碎片化水平。一些较高级的软件包,好比 rpart 和 tree,陈设了沟通的算法,这与 Python 的 scikit-learn 的一致性和宽度形成比拟。
可是,假如你喜欢 R 的数据操纵本领(就像在 tidyverse 中),那么你就可以利用这些软件包做一些成果强大的模子,而不消切换到 python。另外,跟着 modelr (https://github.com/hadley/modelr) 中添加了更多的成果,我们也许很快能在此列表中看到 tidy tool。
包的细节caret 是一个用于建设呆板进修事情流的一般包,而且它已经处于这个排名的首位置。接着的是实现特定呆板进修算法的几个包:随机丛林(Random Forests)(randomForest), 支撑向量机(Support Vector Machines)(e1071), 分类和回归树(Classification and Regression Trees)(rpart), 和 正则化回归模子(regularized regression models)(glmnet).
nnet 实现了神经网络,而 tree 包同样实现了树的成果。party 用于二叉树的递归支解和可视化,arules 则用于关联挖掘。支持向量机(SVMs)和其他的内核要领例陈设在 kernlab 中。h2o 包用于可扩展的呆板进修,并且是更大的 H2O 项目标一部门。ROCR 用于模子评估,包罗 ROC 曲线(吸收者操纵特征曲线,receiver operating characteristic curve),gbm 实现梯度推进。更多的支解算法(partitioning algorithms)可以利用 RWeka 举办会见,而 rattle 是数据挖掘中的 R 的一个图形用户界面(GUI)。
一些包则只在 Github 中发挥强大成果: mlr 和 SuperLearner 是别的两个元包(meta-package),为 caret 提供雷同的标记插入的成果,ranger 提供了随机丛林(random forests)的 C++ 实现。
最后,OneR 在 Stack Overflow 中排名第一,可是 SO API 常常将其自动批改为「one」,所以功效并不行信。
要领接下来,我们描写一下这种排名所利用的要领。
步调 1: 得到 呆板进修包的详尽列表
一开始,我们设想我们的排名综合思量了包下载量、Stack Overflow 和 Github 活泼度。我们知道能为我们提供这些指标的 API 已经存在了
然而,得到呆板进修的所有 R 包的初始列表是一件越发难题的任务。我们需要一份详尽客观的而且是的一份列表。一份欠好的初始化列表将会严重影响我们的排名。
寻求辅佐。一个伴侣把一篇文章「CRAN 任务视图:呆板进修和统计进修 (CRAN Task View: Machine Learning & Statistical Learning)」先容给我,该文章底部有一份很是不错的列表,而且很容易入手。
这样做的长处是包列表的来历很是具有权威性(CRAN 是官方 R 包存储库)而且它会常常更新(最近的更新:2017 年 1 月 6 日)。感激作者,Torsten Hothorn 通过邮件提供的辅佐。
以前的想法是利用 Google 来寻找「较高级 R 呆板进修包」的列表,然后试着从列表上抓取所有包的名称,将它们团结起来,并利用该列表作为起点。可是抛开工程任务来说,当前可用的列表质量相对较差,不能满意我们的需求。它们过期了,没有明晰的说明要领,而且往往是极其主观的。
确定客观指标一个好的排名需要一个对付「较佳(best)」的界说,这需要用精采的指标来搭建。我们将「较佳」界说为「最风行」。这并不必然意味着这个包是广受接待的(由于糟糕的 API,用户大概常常会搜索 Stack Overflow)
我们为我们的排名选取了 3 个因素:
下载:来自于 CRAN 镜像的下载量Github:包的主存储库页面上星星数量。Stack Overflow: 包括措施包的名称并以 ‘R’ 标志的问题的数量。
CRAN 下载有一些 CRAN 的镜像,而我们利用的是 R-Studio 镜像,因为它有一个便捷的 API。RStudio 必然是 R 中利用最遍及的 IDE,但却并非是的。假如我们从其他 CRAN 的镜像统计下载量,我们的排名大概会更好(但并不会有显著变革)。
GitHub最初,我们通过在 Github 的 search API 上查询包的名字来寻找包的 Github 页面,大概会利用「language:R」,但这么做是不行靠的。有时候很难选择正确的 Github 库,并且不是所有的 R 包都是用 R 语言来实现的(在该搜索 API 中,「language:R」参数好像指的是该存储库写入所利用的最风行的语言)
相反,我们返回 CRAN 来寻找这些 URL。每个包都有一个官方的 CRAN 页面,个中包罗了一些有用的信息,好比源代码链接。这就是我们获得的包的 Github 存储库的位置。
在这之后,利用 API 就可以容易地获得 Github 的星星数。
Stack Overflow从 Stack Overflow 获取有用的功效需要能力。一些 R 包的名称,好比 tree 和 earth,存在着明明的坚苦:Stack Overflow 的功效大概不会被筛选到 R 包的功效傍边,所以我们首先在查询中添加一个 「r」 字符串,这很是有辅佐。
一个好的(最优的?)计策是在问题主题中查询包的名字,然后添加一个 『r』标签(这与添加 『r』 字符串差异)
成立排名我们简朴地将包凭据 3 个指标中的每一个来排名,并取其平均值。该要领没什么出格的处所。
杂注所有的数据都是在 2017 年 1 月 19 日下载的。CRAN 的下载量则是统计了已往 365 天的数据:从 2016 年 1 月 19 日 到 2017 年 1 月 19 日。
数据科学规模最较高级的 R 包?一开始,这个项目是要将「数据科学」规模中所有较高级的包举办排名,但我们很快发明这个范畴太大。
数据科学家做了许多差异的工作。要辅佐一个数据科学家,你要将险些所有的 R 包举办分类。那么,我们应该包括字符串操纵包吗?包是如何从数据库中读取数据的呢?
也许有一天,会有一个更长的项目,它会更多地利用 「Data Science」 来为「数据科学」事情得出一个较高级 R 包的排名。
资源:源代码请查察 The Data Incubator (https://www.thedataincubator.com/) 的 Github (地点:https://github.com/thedataincubator/data-science-blogs/)。假如有乐趣进修更多,请参考:
1.Data science corporate training(地点:https://www.thedataincubator.com/training.html)2. Free eight-week fellowship for masters and PhDs looking to enter industry(地点:https://www.thedataincubator.com/fellowship.html)3. Hiring Data Scientists (地点:https://www.thedataincubator.com/hiring.html)
原文链接:http://www.kdnuggets.com/2017/02/top-r-packages-machine-learning.html
接待插手本站果真乐趣群贸易智能与数据阐明群乐趣范畴包罗各类让数据发生代价的步伐,实际应用案例分享与接头,阐明东西,ETL东西,数据客栈,数据挖掘东西,报表系统等全方位常识QQ群:81035754

    关键字:

在线提交作业