当 ranger 不是一个选项时,使插入符训练 rf 更快
Making caret train rf faster when ranger is not an option
我正在尝试 运行 代码使用旧版本 R 的网站,不接受 ranger 作为库。我必须使用 caret 包。我正在尝试在我的火车数据框中处理大约 800,000 行,这是我使用的代码
control <- trainControl(method = 'repeatedcv',
number = 3,
repeats = 1,
search = 'grid')
tunegrid <- expand.grid(.mtry = c(sqrt(ncol(train_1))))
fit <- train(value~.,
data = train_1,
method = 'rf',
ntree = 73,
tuneGrid = tunegrid,
trControl = control)
查看以前的帖子,我尝试调整我的控制参数,有什么方法可以使模型 运行 更快?我是否可以指定一个特定的设置,以便它只生成一个带有我设置的参数的模型,而不是尝试多个选项?
这是我优化过的 ranger 代码,目前模型准确
fit <- ranger(value ~ .,
data = train_1,
num.trees = 73,
max.depth = 35,mtry = 7,importance='impurity',splitrule = "extratrees")
非常感谢您的宝贵时间
当您指定 method='rf'
时,caret
正在使用 randomForest
包构建模型。如果您不想执行 caret
有用的所有 cross-validation,只需直接使用 randomForest
包构建您的模型。例如
library(randomForest)
fit <- randomForest(value ~ ., data=train_1)
您可以为 ntree
、mtry
等指定值
请注意,randomForest
包对于大型数据集来说速度很慢(或者根本不起作用)。如果 ranger
不可用,您是否尝试过 Rborist
包?
我正在尝试 运行 代码使用旧版本 R 的网站,不接受 ranger 作为库。我必须使用 caret 包。我正在尝试在我的火车数据框中处理大约 800,000 行,这是我使用的代码
control <- trainControl(method = 'repeatedcv',
number = 3,
repeats = 1,
search = 'grid')
tunegrid <- expand.grid(.mtry = c(sqrt(ncol(train_1))))
fit <- train(value~.,
data = train_1,
method = 'rf',
ntree = 73,
tuneGrid = tunegrid,
trControl = control)
查看以前的帖子,我尝试调整我的控制参数,有什么方法可以使模型 运行 更快?我是否可以指定一个特定的设置,以便它只生成一个带有我设置的参数的模型,而不是尝试多个选项?
这是我优化过的 ranger 代码,目前模型准确
fit <- ranger(value ~ .,
data = train_1,
num.trees = 73,
max.depth = 35,mtry = 7,importance='impurity',splitrule = "extratrees")
非常感谢您的宝贵时间
当您指定 method='rf'
时,caret
正在使用 randomForest
包构建模型。如果您不想执行 caret
有用的所有 cross-validation,只需直接使用 randomForest
包构建您的模型。例如
library(randomForest)
fit <- randomForest(value ~ ., data=train_1)
您可以为 ntree
、mtry
等指定值
请注意,randomForest
包对于大型数据集来说速度很慢(或者根本不起作用)。如果 ranger
不可用,您是否尝试过 Rborist
包?