机器学习功能通过在多个核心上分配工作来处理大量数据
Machine learning functions to deal with a large amount of data, by distributing work across multiple cores
我正在尝试 运行 一些机器学习算法在一些大数据(不是大数据)上使用 r。
我用来测试我的代码的(相对较小的)玩具数据只有不到 100'000 行和 850 列(包括 1 个具有 14 个级别的因子列)
我正在尝试 运行 一个 svm(包:e1071
),一棵树(包:tree
),一个随机森林(包:randomForest
)和一棵提升树(包:gbm
)。
我用的电脑是12核的。当我打开 activity 监视器时,函数似乎随机使用内核(一次最多 4 个)。 是否有一种功能可以更有效地将工作分配到所有内核?
caret
包可以完成所有这些,同时允许您使用多核选项。
library(doMC)
registerDoMC(cores = 5)
#All subsequent models are then run in parallel
model <- train(y ~ ., data = training, method = "rf")
的示例
我正在尝试 运行 一些机器学习算法在一些大数据(不是大数据)上使用 r。
我用来测试我的代码的(相对较小的)玩具数据只有不到 100'000 行和 850 列(包括 1 个具有 14 个级别的因子列)
我正在尝试 运行 一个 svm(包:e1071
),一棵树(包:tree
),一个随机森林(包:randomForest
)和一棵提升树(包:gbm
)。
我用的电脑是12核的。当我打开 activity 监视器时,函数似乎随机使用内核(一次最多 4 个)。 是否有一种功能可以更有效地将工作分配到所有内核?
caret
包可以完成所有这些,同时允许您使用多核选项。
library(doMC)
registerDoMC(cores = 5)
#All subsequent models are then run in parallel
model <- train(y ~ ., data = training, method = "rf")
的示例