喜欢 ranger 包用于随机森林模型创建的速度,但不知道如何调整mtry或树的数量。我意识到可以通过caret的train()语法实现这一点,但我更喜欢使用纯ranger带来的速度提升。
以下是我的基本模型创建示例,使用ranger非常好用:
library(ranger)
data(iris)
fit.rf = ranger(
Species ~ .,
training_data = iris,
num.trees = 200
)
print(fit.rf)
从官方调优选项文档来看,似乎csrf()函数可以提供调整超参数的能力,但我无法正确使用语法:
library(ranger)
data(iris)
fit.rf.tune = csrf(
Species ~ .,
training_data = iris,
params1 = list(num.trees = 25, mtry=4),
params2 = list(num.trees = 50, mtry=4)
)
print(fit.rf.tune)
结果为:
Error in ranger(Species ~ ., training_data = iris, num.trees = 200) :
unused argument (training_data = iris)
我更倾向于使用ranger提供的常规(非csrf)rf算法进行调优。有没有关于ranger中这两种路径的超参数调整解决方案的想法?谢谢!