The ArchiveAsyncFSelect
stores all evaluated feature subsets and performance scores in a rush::Rush database.
Details
The ArchiveAsyncFSelect is a connector to a rush::Rush database.
Data Structure
The table ($data
) has the following columns:
One column for each feature of the search space (
$search_space
).One column for each performance measure (
$codomain
).runtime_learners
(numeric(1)
)
Sum of training and predict times logged in learners per mlr3::ResampleResult / evaluation. This does not include potential overhead time.timestamp
(POSIXct
)
Time stamp when the evaluation was logged into the archive.
Analysis
For analyzing the feature selection results, it is recommended to pass the ArchiveAsyncFSelect to as.data.table()
.
The returned data table contains the mlr3::ResampleResult for each feature subset evaluation.
S3 Methods
as.data.table.ArchiveFSelect(x, unnest = "x_domain", exclude_columns = "uhash", measures = NULL)
Returns a tabular view of all evaluated feature subsets.
ArchiveAsyncFSelect ->data.table::data.table()
x
(ArchiveAsyncFSelect)unnest
(character()
)
Transforms list columns to separate columns. Set toNULL
if no column should be unnested.exclude_columns
(character()
)
Exclude columns from table. Set toNULL
if no column should be excluded.measures
(List of mlr3::Measure)
Score feature subsets on additional measures.
Super classes
bbotk::Archive
-> bbotk::ArchiveAsync
-> ArchiveAsyncFSelect
Active bindings
benchmark_result
(mlr3::BenchmarkResult)
Benchmark result.ties_method
(
character(1)
)
Method to handle ties in the archive. One of"least_features"
(default) or"random"
.
Methods
Inherited methods
bbotk::Archive$format()
bbotk::Archive$help()
bbotk::ArchiveAsync$clear()
bbotk::ArchiveAsync$data_with_state()
bbotk::ArchiveAsync$nds_selection()
bbotk::ArchiveAsync$pop_point()
bbotk::ArchiveAsync$push_failed_point()
bbotk::ArchiveAsync$push_points()
bbotk::ArchiveAsync$push_result()
bbotk::ArchiveAsync$push_running_point()
Method new()
Creates a new instance of this R6 class.
Usage
ArchiveAsyncFSelect$new(
search_space,
codomain,
rush,
ties_method = "least_features"
)
Arguments
search_space
(paradox::ParamSet)
Search space. Internally created from provided mlr3::Task by instance.codomain
(paradox::ParamSet)
Specifies codomain of function. Most importantly the tags of each output "Parameter" define whether it should be minimized or maximized. The default is to minimize each component.rush
(
Rush
)
If a rush instance is supplied, the optimization runs without batches.ties_method
(
character(1)
)
The method to break ties when selecting sets while optimizing and when selecting the best set. Can be"least_features"
or"random"
. The option"least_features"
(default) selects the feature set with the least features. If there are multiple best feature sets with the same number of features, one is selected randomly. Therandom
method returns a random feature set from the best feature sets. Ignored if multiple measures are used.check_values
(
logical(1)
)
IfTRUE
(default), feature subsets are check for validity.
Method learner()
Retrieve mlr3::Learner of the i-th evaluation, by position or by unique hash uhash
.
i
and uhash
are mutually exclusive.
Learner does not contain a model. Use $learners()
to get learners with models.
Method learners()
Retrieve list of trained mlr3::Learner objects of the i-th evaluation, by position or by unique hash uhash
.
i
and uhash
are mutually exclusive.
Method predictions()
Retrieve list of mlr3::Prediction objects of the i-th evaluation, by position or by unique hash uhash
.
i
and uhash
are mutually exclusive.
Method resample_result()
Retrieve mlr3::ResampleResult of the i-th evaluation, by position or by unique hash uhash
.
i
and uhash
are mutually exclusive.
Method best()
Returns the best scoring feature set(s). For single-crit optimization, the solution that minimizes / maximizes the objective function. For multi-crit optimization, the Pareto set / front.
Arguments
n_select
(
integer(1L)
)
Amount of points to select. Ignored for multi-crit optimization.ties_method
(
character(1L)
)
Method to break ties when multiple points have the same score. Either"least_features"
(default) or"random"
. Ignored for multi-crit optimization. Ifn_select > 1L
, the tie method is ignored and the first point is returned.