mlr_pipeops_branch | R Documentation |
Perform alternative path branching: PipeOpBranch
has multiple output channels
that connect to different paths in a Graph
. At any time, only one of these
paths will be taken for execution. At the end of the different paths, the
PipeOpUnbranch
PipeOp
must be used to indicate the end of alternative paths.
Not to be confused with PipeOpCopy
, the naming scheme is a bit unfortunate.
R6Class
object inheriting from PipeOp
.
PipeOpBranch$new(options, id = "branch", param_vals = list())
options
:: numeric(1)
| character
If options
is an integer number, it determines the number of
output channels / options that are created, named output1
...output<n>
. The
$selection
parameter will then be an integer.
If options
is a character
, it determines the names of channels directly.
The $selection
parameter will then be factorial.
id
:: character(1)
Identifier of resulting object, default "branch"
.
param_vals
:: named list
List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Default list()
.
PipeOpBranch
has one input channel named "input"
, taking any input ("*"
) both during training and prediction.
PipeOpBranch
has multiple output channels depending on the options
construction argument, named "output1"
, "output2"
, ...
if options
is numeric
, and named after each options
value if options
is a character
.
All output channels produce the object given as input ("*"
) or NO_OP
, both during training and prediction.
The $state
is left empty (list()
).
selection
:: numeric(1)
| character(1)
Selection of branching path to take. Is a ParamInt
if the options
parameter
during construction was a numeric(1)
, and ranges from 1 to options
. Is a
ParamFct
if the options
parameter was a character
and its possible values
are the options
values. Initialized to either 1 (if the options
construction argument is numeric(1)
)
or the first element of options
(if it is character
).
Alternative path branching is handled by the PipeOp
backend. To indicate that
a path should not be taken, PipeOpBranch
returns the NO_OP
object on its
output channel. The PipeOp
handles each NO_OP
input by automatically
returning a NO_OP
output without calling private$.train()
or private$.predict()
,
until PipeOpUnbranch
is reached. PipeOpUnbranch
will then take multiple inputs,
all except one of which must be a NO_OP
, and forward the only non-NO_OP
object on its output.
Only fields inherited from PipeOp
.
Only methods inherited from PipeOp
.
https://mlr-org.com/pipeops.html
Other PipeOps:
PipeOp
,
PipeOpEnsemble
,
PipeOpImpute
,
PipeOpTargetTrafo
,
PipeOpTaskPreproc
,
PipeOpTaskPreprocSimple
,
mlr_pipeops
,
mlr_pipeops_adas
,
mlr_pipeops_blsmote
,
mlr_pipeops_boxcox
,
mlr_pipeops_chunk
,
mlr_pipeops_classbalancing
,
mlr_pipeops_classifavg
,
mlr_pipeops_classweights
,
mlr_pipeops_colapply
,
mlr_pipeops_collapsefactors
,
mlr_pipeops_colroles
,
mlr_pipeops_copy
,
mlr_pipeops_datefeatures
,
mlr_pipeops_encode
,
mlr_pipeops_encodeimpact
,
mlr_pipeops_encodelmer
,
mlr_pipeops_featureunion
,
mlr_pipeops_filter
,
mlr_pipeops_fixfactors
,
mlr_pipeops_histbin
,
mlr_pipeops_ica
,
mlr_pipeops_imputeconstant
,
mlr_pipeops_imputehist
,
mlr_pipeops_imputelearner
,
mlr_pipeops_imputemean
,
mlr_pipeops_imputemedian
,
mlr_pipeops_imputemode
,
mlr_pipeops_imputeoor
,
mlr_pipeops_imputesample
,
mlr_pipeops_kernelpca
,
mlr_pipeops_learner
,
mlr_pipeops_missind
,
mlr_pipeops_modelmatrix
,
mlr_pipeops_multiplicityexply
,
mlr_pipeops_multiplicityimply
,
mlr_pipeops_mutate
,
mlr_pipeops_nmf
,
mlr_pipeops_nop
,
mlr_pipeops_ovrsplit
,
mlr_pipeops_ovrunite
,
mlr_pipeops_pca
,
mlr_pipeops_proxy
,
mlr_pipeops_quantilebin
,
mlr_pipeops_randomprojection
,
mlr_pipeops_randomresponse
,
mlr_pipeops_regravg
,
mlr_pipeops_removeconstants
,
mlr_pipeops_renamecolumns
,
mlr_pipeops_replicate
,
mlr_pipeops_rowapply
,
mlr_pipeops_scale
,
mlr_pipeops_scalemaxabs
,
mlr_pipeops_scalerange
,
mlr_pipeops_select
,
mlr_pipeops_smote
,
mlr_pipeops_smotenc
,
mlr_pipeops_spatialsign
,
mlr_pipeops_subsample
,
mlr_pipeops_targetinvert
,
mlr_pipeops_targetmutate
,
mlr_pipeops_targettrafoscalerange
,
mlr_pipeops_textvectorizer
,
mlr_pipeops_threshold
,
mlr_pipeops_tunethreshold
,
mlr_pipeops_unbranch
,
mlr_pipeops_updatetarget
,
mlr_pipeops_vtreat
,
mlr_pipeops_yeojohnson
Other Path Branching:
NO_OP
,
filter_noop()
,
is_noop()
,
mlr_pipeops_unbranch
library("mlr3")
pca = po("pca")
nop = po("nop")
choices = c("pca", "nothing")
gr = po("branch", choices) %>>%
gunion(list(pca, nop)) %>>%
po("unbranch", choices)
gr$param_set$values$branch.selection = "pca"
gr$train(tsk("iris"))
gr$param_set$values$branch.selection = "nothing"
gr$train(tsk("iris"))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.