Мне нравится скорость пакета ranger для создания случайных моделей леса, но не вижу, как настроить mtry или количество деревьев. Я понимаю, что могу сделать это с помощью синтаксиса train () каретки, но я предпочитаю увеличение скорости за счет использования чистого рейнджера.
Вот мой пример создания базовой модели с использованием рейнджера (который отлично работает):
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)
И я бы предпочел настроиться с помощью обычного (читай: не-csrf) алгоритма RF, который предоставляет рейнджер. Любая идея относительно решения настройки гиперпараметров для любого пути в рейнджере? Спасибо!