Generates a more balanced data set by creating
synthetic instances of the minority class using the SMOTE algorithm.
The algorithm samples for each minority instance a new data point based on the
neighbors of that data point.
It can only be applied to tasks with purely numeric features.
smotefamily::SMOTE for details.
R6Class object inheriting from
PipeOpSmote$new(id = "smote", param_vals = list())
Identifier of resulting object, default
param_vals :: named
List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Default
Input and output channels are inherited from
The output during training is the input
Task with added synthetic rows for the minority class.
The output during prediction is the unchanged input.
$state is a named
list with the
$state elements inherited from
The parameters are the parameters inherited from
PipeOpTaskPreproc, as well as:
The number of nearest neighbors used for sampling new values. See
Desired times of synthetic minority instances over the original number of majority instances. See
Only fields inherited from
Only methods inherited from
Chawla NV, Bowyer KW, Hall LO, Kegelmeyer WP (2002). “SMOTE: Synthetic Minority Over-sampling Technique.” Journal of Artificial Intelligence Research, 16, 321–357. doi: 10.1613/jair.953.
library("mlr3") # Create example task data = smotefamily::sample_generator(1000, ratio = 0.80) data$result = factor(data$result) task = TaskClassif$new(id = "example", backend = data, target = "result") task$data() table(task$data()$result) # Generate synthetic data for minority class pop = po("smote") smotedata = pop$train(list(task))[]$data() table(smotedata$result)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.