Repeated Cross-Validation Resampling
Source:R/ResamplingRepeatedCV.R
mlr_resamplings_repeated_cv.RdSplits data repeats (default: 10) times using a folds-fold (default: 10) cross-validation.
The iteration counter translates to repeats blocks of folds
cross-validations, i.e., the first folds iterations belong to
a single cross-validation.
Iteration numbers can be translated into folds or repeats with provided methods.
Dictionary
This Resampling can be instantiated via the dictionary mlr_resamplings or with the associated sugar function rsmp():
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. doi:10.1162/evco_a_00069 .
See also
Chapter in the mlr3book: https://mlr3book.mlr-org.com/chapters/chapter3/evaluation_and_benchmarking.html#sec-resampling
Package mlr3spatiotempcv for spatio-temporal resamplings.
as.data.table(mlr_resamplings)for a table of available Resamplings in the running session (depending on the loaded packages).mlr3spatiotempcv for additional Resamplings for spatio-temporal tasks.
Other Resampling:
Resampling,
mlr_resamplings,
mlr_resamplings_bootstrap,
mlr_resamplings_custom,
mlr_resamplings_custom_cv,
mlr_resamplings_cv,
mlr_resamplings_holdout,
mlr_resamplings_insample,
mlr_resamplings_loo,
mlr_resamplings_subsampling
Super class
mlr3::Resampling -> ResamplingRepeatedCV
Active bindings
iters(
integer(1))
Returns the number of resampling iterations, depending on the values stored in theparam_set.
Methods
Method folds()
Translates iteration numbers to fold numbers.
Arguments
iters(
integer())
Iteration number.
Returns
integer() of fold numbers.
Method repeats()
Translates iteration numbers to repetition numbers.
Arguments
iters(
integer())
Iteration number.
Returns
integer() of repetition numbers.
Examples
# Create a task with 10 observations
task = tsk("penguins")
task$filter(1:10)
# Instantiate Resampling
repeated_cv = rsmp("repeated_cv", repeats = 2, folds = 3)
repeated_cv$instantiate(task)
repeated_cv$iters
#> [1] 6
repeated_cv$folds(1:6)
#> [1] 1 2 3 1 2 3
repeated_cv$repeats(1:6)
#> [1] 1 1 1 2 2 2
# Individual sets:
repeated_cv$train_set(1)
#> [1] 2 6 9 7 8 10
repeated_cv$test_set(1)
#> [1] 1 3 4 5
# Disjunct sets:
intersect(repeated_cv$train_set(1), repeated_cv$test_set(1))
#> integer(0)
# Internal storage:
repeated_cv$instance # table
#> row_id rep fold
#> <int> <int> <int>
#> 1: 1 1 1
#> 2: 2 1 2
#> 3: 3 1 1
#> 4: 4 1 1
#> 5: 5 1 1
#> 6: 6 1 2
#> 7: 7 1 3
#> 8: 8 1 3
#> 9: 9 1 2
#> 10: 10 1 3
#> 11: 1 2 2
#> 12: 2 2 3
#> 13: 3 2 1
#> 14: 4 2 3
#> 15: 5 2 3
#> 16: 6 2 1
#> 17: 7 2 2
#> 18: 8 2 1
#> 19: 9 2 2
#> 20: 10 2 1
#> row_id rep fold