mlr_pipeops_proxy {mlr3pipelines} | R Documentation |
Wrap another PipeOp or Graph as a Hyperparameter
Description
Wraps another PipeOp
or Graph
as determined by the content
hyperparameter.
Input is routed through the content
and the content
s' output is returned.
The content
hyperparameter can be changed during tuning, this is useful as an alternative to PipeOpBranch
.
Format
Abstract R6Class
inheriting from PipeOp
.
Construction
PipeOpProxy$new(innum = 0, outnum = 1, id = "proxy", param_vals = list())
-
innum
::numeric(1)\cr 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. -
outnum
:: 'numeric(1)
Determines the number of output channels. -
id
::character(1)
Identifier of resulting object. See$id
slot ofPipeOp
. -
param_vals
:: namedlist
List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Defaultlist()
.
Input and Output Channels
PipeOpProxy
has multiple input channels depending on the innum
construction argument, named
"input1"
, "input2"
, ... if innum
is nonzero; if innum
is 0, there is only one vararg
input channel named "..."
.
PipeOpProxy
has multiple output channels depending on the outnum
construction argument,
named "output1"
, "output2"
, ...
The output is determined by the output of the content
operation (a PipeOp
or Graph
).
State
The $state
is the trained content
PipeOp
or Graph
.
Parameters
-
content
::PipeOp
|Graph
ThePipeOp
orGraph
that is being proxied (or an object that is converted to aGraph
byas_graph()
). Defaults to an instance ofPipeOpFeatureUnion
(combines all input if they areTask
s).
Internals
The content
will internally be coerced to a graph via
as_graph()
prior to train and predict.
The default value for content
is PipeOpFeatureUnion
,
Fields
Fields inherited from PipeOp
.
Methods
Only methods inherited from PipeOp
.
See Also
https://mlr-org.com/pipeops.html
Other PipeOps:
PipeOp
,
PipeOpEnsemble
,
PipeOpImpute
,
PipeOpTargetTrafo
,
PipeOpTaskPreproc
,
PipeOpTaskPreprocSimple
,
mlr_pipeops
,
mlr_pipeops_boxcox
,
mlr_pipeops_branch
,
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_quantilebin
,
mlr_pipeops_randomprojection
,
mlr_pipeops_randomresponse
,
mlr_pipeops_regravg
,
mlr_pipeops_removeconstants
,
mlr_pipeops_renamecolumns
,
mlr_pipeops_replicate
,
mlr_pipeops_scale
,
mlr_pipeops_scalemaxabs
,
mlr_pipeops_scalerange
,
mlr_pipeops_select
,
mlr_pipeops_smote
,
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
Examples
library("mlr3")
library("mlr3learners")
set.seed(1234)
task = tsk("iris")
# use a proxy for preprocessing and a proxy for learning, i.e.,
# no preprocessing and classif.kknn
g = po("proxy", id = "preproc", param_vals = list(content = po("nop"))) %>>%
po("proxy", id = "learner", param_vals = list(content = lrn("classif.kknn")))
rr_kknn = resample(task, learner = GraphLearner$new(g), resampling = rsmp("cv", folds = 3))
rr_kknn$aggregate(msr("classif.ce"))
# use pca for preprocessing and classif.rpart as the learner
g$param_set$values$preproc.content = po("pca")
g$param_set$values$learner.content = lrn("classif.rpart")
rr_pca_rpart = resample(task, learner = GraphLearner$new(g), resampling = rsmp("cv", folds = 3))
rr_pca_rpart$aggregate(msr("classif.ce"))