喜欢随机森林模型创建的游侠包的速度,但无法看到如何调整mtry或树的数量.我意识到我可以通过插入符号的train()语法来实现这一点,但我更喜欢使用纯粹的游侠来提高速度.
这是我使用游侠创建基本模型的例子(效果很好):
library(ranger)
data(iris)
fit.rf = ranger(
Species ~ .,
training_data = iris,
num.trees = 200
)
print(fit.rf)
Run Code Online (Sandbox Code Playgroud)
查看调优选项的官方文档,似乎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)
Run Code Online (Sandbox Code Playgroud)
结果是:
Error in ranger(Species ~ ., training_data = iris, num.trees = 200) :
unused argument (training_data = iris)
Run Code Online (Sandbox Code Playgroud)
而且我更愿意使用常规(读取:非csrf)rf算法游侠提供.对于游侠中任何一条路径的超参数调整解决方案有任何想法吗?谢谢!