Feature Selection via Random Search
FSelectorRandomSearch
class that implements a simple Random Search.
In order to support general termination criteria and parallelization, we
evaluate feature sets in a batch-fashion of size batch_size
. Larger batches
mean we can parallelize more, smaller batches imply a more fine-grained
checking of termination criteria.
This FSelector can be instantiated via the dictionary
mlr_fselectors or with the associated sugar function fs()
:
mlr_fselectors$get("random_search") fs("random_search")
max_features
integer(1)
Maximum number of features. By default, number of features in mlr3::Task.
batch_size
integer(1)
Maximum number of feature sets to try in a batch.
mlr3fselect::FSelector
-> FSelectorRandomSearch
new()
Creates a new instance of this R6 class.
FSelectorRandomSearch$new()
clone()
The objects of this class are cloneable with this method.
FSelectorRandomSearch$clone(deep = FALSE)
deep
Whether to make a deep clone.
Bergstra J, Bengio Y (2012). “Random Search for Hyper-Parameter Optimization.” Journal of Machine Learning Research, 13(10), 281–305. https://jmlr.csail.mit.edu/papers/v13/bergstra12a.html.
library(mlr3) terminator = trm("evals", n_evals = 5) instance = FSelectInstanceSingleCrit$new( task = tsk("iris"), learner = lrn("classif.rpart"), resampling = rsmp("holdout"), measure = msr("classif.ce"), terminator = terminator ) fselector = fs("random_search") # Modifies the instance by reference fselector$optimize(instance) # Returns best scoring evaluation instance$result # Allows access of data.table of full path of all evaluations as.data.table(instance$archive)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.