# NOT RUN {
library(mlr3)
library(mlr3learners)
library(paradox)
library(mlr3tuning)
library(mlr3hyperband)
# Define hyperparameter and budget parameter for tuning with hyperband
ps = ParamSet$new(list(
ParamInt$new("nrounds", lower = 1, upper = 4, tag = "budget"),
ParamDbl$new("eta", lower = 0, upper = 1),
ParamFct$new("booster", levels = c("gbtree", "gblinear", "dart"))
))
# Define termination criterion
# Hyperband terminates itself
terminator = trm("none")
# Create tuning instance
inst = TuningInstanceSingleCrit$new(
task = tsk("iris"),
learner = lrn("classif.xgboost"),
resampling = rsmp("holdout"),
measure = msr("classif.ce"),
search_space = ps,
terminator = terminator,
)
# Load tuner
tuner = tnr("hyperband", eta = 2L)
# }
# NOT RUN {
# Trigger optimization
tuner$optimize(inst)
# Print all evaluations
inst$archive$data()
# }
Run the code above in your browser using DataLab