mlr_resamplings_loo: Leave-One-Out Cross-Validation

mlr_resamplings_looR Documentation

Leave-One-Out Cross-Validation

Description

Splits data using leave-one-observation-out. This is identical to cross-validation with the number of folds set to the number of observations.

If this resampling is combined with the grouping features of tasks, it is possible to create custom splits based on an arbitrary factor variable, see the examples.

Dictionary

This Resampling can be instantiated via the dictionary mlr_resamplings or with the associated sugar function rsmp():

mlr_resamplings$get("loo")
rsmp("loo")

Super class

mlr3::Resampling -> ResamplingLOO

Active bindings

iters

(integer(1))
Returns the number of resampling iterations which is the number of rows of the task provided to instantiate. Is NA if the resampling has not been instantiated.

Methods

Public methods

Inherited methods

Method new()

Creates a new instance of this R6 class.

Usage
ResamplingLOO$new()

Method clone()

The objects of this class are cloneable with this method.

Usage
ResamplingLOO$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

References

Bischl B, Mersmann O, Trautmann H, Weihs C (2012). “Resampling Methods for Meta-Model Validation with Recommendations for Evolutionary Computation.” Evolutionary Computation, 20(2), 249–275. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1162/evco_a_00069")}.

See Also

Other Resampling: Resampling, mlr_resamplings_bootstrap, mlr_resamplings_custom_cv, mlr_resamplings_custom, mlr_resamplings_cv, mlr_resamplings_holdout, mlr_resamplings_insample, mlr_resamplings_repeated_cv, mlr_resamplings_subsampling, mlr_resamplings

Examples

# Create a task with 10 observations
task = tsk("penguins")
task$filter(1:10)

# Instantiate Resampling
loo = rsmp("loo")
loo$instantiate(task)

# Individual sets:
loo$train_set(1)
loo$test_set(1)

# Disjunct sets:
intersect(loo$train_set(1), loo$test_set(1))

# Internal storage:
loo$instance # vector

# Combine with group feature of tasks:
task = tsk("penguins")
task$set_col_roles("island", add_to = "group")
loo$instantiate(task)
loo$iters # one fold for each level of "island"

mlr3 documentation built on Nov. 17, 2023, 5:07 p.m.