
Create a new Graph
for stacking. A stacked learner uses predictions of
several base learners and fits a super learner using these predictions as
features in order to predict the outcome.
All input arguments are cloned and have no references in common with the returned Graph
.
pipeline_stacking(
base_learners,
super_learner,
method = "cv",
folds = 3,
use_features = TRUE
)
Graph
list
of Learner
A list of base learners.
Learner
The super learner that makes the final prediction based on the base learners.
character(1)
"cv"
(default) for building a super learner using cross-validated predictions of the
base learners or "insample"
for building a super learner using the
predictions of the base learners trained on all training data.
integer(1)
Number of cross-validation folds. Only used for method = "cv"
. Default 3.
logical(1)
Whether the original features should also be passed to the super learner.
Default TRUE
.
if (requireNamespace("kknn")) {
library(mlr3)
library(mlr3learners)
base_learners = list(
lrn("classif.rpart", predict_type = "prob"),
lrn("classif.kknn", predict_type = "prob")
)
super_learner = lrn("classif.log_reg")
graph_stack = pipeline_stacking(base_learners, super_learner)
graph_learner = as_learner(graph_stack)
graph_learner$train(tsk("german_credit"))
}
Run the code above in your browser using DataLab