Я хочу настроить гиперпараметры для случайного леса с помощью пакета MLR. У меня есть несколько вопросов:
1) Как мне решить, какой из параметров мне следует настроить? Я слышал что-то о том, как поддерживать максимально возможное количество деревьев num.trees и настраивать mtry? (Я не мог найти ничего в Интернете, подтверждающего это)
2) Какой должен быть у меня диапазон настройки мтры? Есть ли здесь хорошее эмпирическое правило между 0 и 1/3 параметра? Если да, то как мне интегрировать это в приведенный ниже код, если у меня разные наборы данных (т.е. что бы я написал вместо lower = 0 и upper = 10)?
3) Наконец, имеет ли смысл создавать обучающегося дважды, один раз с помощью функции makeLearner, где я устанавливаю параметр в par.val, а затем один раз с помощью функции makeTuneWrapper? Все равно не перезаписывает?
learnerRF = makeLearner("regr.ranger", par.vals = list("num.trees" = 5000))
parsRF = makeParamSet(
makeIntegerParam("mtry", lower = 0 , upper = 10),
)
tuneRF = makeTuneControlGrid()
inner = makeResampleDesc("CV", iters = 10)
learnerRF = makeTuneWrapper(learnerRF, resampling = inner, par.set = parsRF,control = tuneRF, show.info = FALSE)