Perform (weighted) majority vote prediction from classification Predictions by connecting
PipeOpClassifAvg to multiple PipeOpLearner outputs.
If the incoming Learner's
$predict_type is set to "response", the prediction obtained is also a "response" prediction
with each instance predicted to the prediction from incoming Learners with the
highest total weight. If the Learner's $predict_type is set to "prob", the
prediction obtained is also a "prob" type prediction with the probability predicted to be a weighted
average of incoming predictions.
All incoming Learner's $predict_type must agree.
Weights can be set as a parameter; if none are provided, defaults to equal weights for each prediction. Defaults to equal weights for each model.
R6Class inheriting from PipeOpEnsemble/PipeOp.
PipeOpClassifAvg$new(innum = 0, id = "classifavg", param_vals = list())
innum :: numeric(1)
Determines the number of input channels.
If innum is 0 (default), a vararg input channel is created that can take an arbitrary number of inputs.
id :: character(1)
Identifier of the resulting  object, default "classifavg".
param_vals :: named list
List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Default list().
Input and output channels are inherited from PipeOpEnsemble. Instead of a Prediction, a PredictionClassif
is used as input and output during prediction.
The $state is left empty (list()).
The parameters are the parameters inherited from the PipeOpEnsemble.
Inherits from PipeOpEnsemble by implementing the private$weighted_avg_predictions() method.
Only fields inherited from PipeOpEnsemble/PipeOp.
Only methods inherited from PipeOpEnsemble/PipeOp.
Other PipeOps: PipeOpEnsemble,
  PipeOpImpute,
  PipeOpTaskPreproc, PipeOp,
  mlr_pipeops_boxcox,
  mlr_pipeops_branch,
  mlr_pipeops_chunk,
  mlr_pipeops_classbalancing,
  mlr_pipeops_classweights,
  mlr_pipeops_colapply,
  mlr_pipeops_collapsefactors,
  mlr_pipeops_copy,
  mlr_pipeops_encodeimpact,
  mlr_pipeops_encodelmer,
  mlr_pipeops_encode,
  mlr_pipeops_featureunion,
  mlr_pipeops_filter,
  mlr_pipeops_fixfactors,
  mlr_pipeops_histbin,
  mlr_pipeops_ica,
  mlr_pipeops_imputehist,
  mlr_pipeops_imputemean,
  mlr_pipeops_imputemedian,
  mlr_pipeops_imputenewlvl,
  mlr_pipeops_imputesample,
  mlr_pipeops_kernelpca,
  mlr_pipeops_learner,
  mlr_pipeops_missind,
  mlr_pipeops_modelmatrix,
  mlr_pipeops_mutate,
  mlr_pipeops_nop,
  mlr_pipeops_pca,
  mlr_pipeops_quantilebin,
  mlr_pipeops_regravg,
  mlr_pipeops_removeconstants,
  mlr_pipeops_scalemaxabs,
  mlr_pipeops_scalerange,
  mlr_pipeops_scale,
  mlr_pipeops_select,
  mlr_pipeops_smote,
  mlr_pipeops_spatialsign,
  mlr_pipeops_subsample,
  mlr_pipeops_unbranch,
  mlr_pipeops_yeojohnson,
  mlr_pipeops
Other Ensembles: PipeOpEnsemble,
  mlr_learners_avg,
  mlr_pipeops_regravg
# NOT RUN {
library("mlr3")
# Simple Bagging
gr = greplicate(n = 5,
  po("subsample") %>>%
  po("learner", lrn("classif.rpart"))
) %>>%
  po("classifavg")
 mlr3::resample(tsk("iris"), GraphLearner$new(gr), rsmp("holdout"))
# }
Run the code above in your browser using DataLab