我试图找出CRAN / github / R-Forge中的R或R包中存在哪些统计/数据挖掘算法,可以在1台服务器上并行处理大型数据集,也可以顺序处理内存问题或同时在多台机器上运行。 这是为了评估我是否可以轻松地将它们移植到ff / ffbase,如ffbase :: bigglm.ffdf。
我想将这些分为三部分:
并行更新或处理参数估算的算法
Buckshot(https://github.com/lianos/buckshot)
lm.fit @大数据编程(https://github.com/RBigData)
顺序工作的算法(在R中获取数据,但只使用1个进程,只有1个进程更新参数)
bigglm(http://cran.r-project.org/web/packages/biglm/index.html)
复合泊松线性模型(http://cran.r-project.org/web/packages/cplm/index.html)
Kmeans @ biganalytics(http://cran.r-project.org/web/packages/biganalytics/index.html)
处理部分数据
我想排除简单的并行化,例如通过例如超参数优化。 crossvalidating。 这些模型/优化器或算法的其他指针是什么?也许是贝叶斯?也许是一个名为RGraphlab的软件包(http://graphlab.org/)?
答案 0 :(得分:1)
您是否已阅读CRAN上的High Performance Computing任务视图?
它涵盖了您提到的许多要点,并概述了这些领域中的软件包。
答案 1 :(得分:1)
随机森林并行运行是微不足道的。这是foreach vignette中的一个例子:
x <- matrix(runif(500), 100)
y <- gl(2, 50)
library(randomForest); library(foreach)
rf <- foreach(ntree=rep(250, 4), .combine=combine,
.packages='randomForest') %dopar% randomForest(x, y, ntree=ntree)
您可以使用此构造在您的群集中的每个核心上拆分林。