Wrap a Learner into a PipeOp with Cross-validation Plus Confidence Intervals as Predictions
Source:R/PipeOpLearnerPICVPlus.R
mlr_pipeops_learner_pi_cvplus.Rd
Wraps an mlr3::Learner
into a PipeOp
.
Inherits the $param_set
(and therefore $param_set$values
) from the Learner
it is constructed from.
Using PipeOpLearnerPICVPlus
, it is possible to embed a mlr3::Learner
into a Graph
.
PipeOpLearnerPICVPlus
can then be used to perform cross validation plus (or jackknife plus).
During training, PipeOpLearnerPICVPlus
performs cross validation on the training data.
During prediction, the models from the training stage are used to construct predictive confidence intervals for the prediction data based on
out-of-fold residuals and out-of-fold predictions.
Construction
learner
::LearnerRegr
LearnerRegr
to use for the cross validation models in the Cross Validation Plus method. This argument is always cloned; to access theLearner
insidePipeOpLearnerPICVPlus
by-reference, use$learner
.id
::character(1)
Identifier of the resulting object, internally defaulting to theid
of theLearner
being wrapped.param_vals
:: namedlist
List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Default islist()
.
Input and Output Channels
PipeOpLearnerPICVPlus
has one input channel named "input"
, taking a Task
specific to the Learner
type given to learner
during construction; both during training and prediction.
PipeOpLearnerPICVPlus
has one output channel named "output"
, producing NULL
during training and a PredictionRegr
during prediction.
The output during prediction is a PredictionRegr
with predict_type
quantiles
on the prediction input data.
The alpha
and 1 - alpha
quantiles are the quantiles
of the prediction interval produced by the cross validation plus method.
The response
is the median of the prediction of all cross validation models on the prediction data.
State
The $state
is a named list
with members:
cv_model_states
::list
List of the state of each cross validation model created by theLearner
's$.train()
function during resampling with method"cv"
.residuals
::data.table
data.table
with columnsfold
andresidual
. Lists the Regression residuals for each observation and cross validation fold.
This state is given the class "pipeop_learner_cv_state"
.
Parameters
The parameters of the Learner
wrapped by this object, as well as:
folds
::numeric(1)
Number of cross validation folds. Initialized to 3.alpha
::numeric(1)
Quantile to use for the cross validation plus prediction intervals. Initialized to 0.05.
Fields
Fields inherited from PipeOp
, as well as:
learner_model
::Learner
orlist
If thePipeOpLearnerPICVPlus
has been trained, this is alist
containing theLearner
s of the cross validation models. Otherwise, this contains theLearner
that is being wrapped. Read-only.predict_type
Predict type of thePipeOpLearnerPICVPlus
, which is always"response" "quantiles"
. This can be different to the predict type of theLearner
that is being wrapped.
Methods
Methods inherited from PipeOp
.
References
Barber RF, Candes EJ, Ramdasa A, Tibshirani RJ (2021). “Predictive inference with the jackknife+.” Annals of Statistics, 49, 486–507. doi:10.1214/20-AOS1965 .
See also
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_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_learner_quantiles
,
mlr_pipeops_missind
,
mlr_pipeops_modelmatrix
,
mlr_pipeops_multiplicityexply
,
mlr_pipeops_multiplicityimply
,
mlr_pipeops_mutate
,
mlr_pipeops_nearmiss
,
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_tomek
,
mlr_pipeops_tunethreshold
,
mlr_pipeops_unbranch
,
mlr_pipeops_updatetarget
,
mlr_pipeops_vtreat
,
mlr_pipeops_yeojohnson
Other Meta PipeOps:
mlr_pipeops_learner
,
mlr_pipeops_learner_cv
,
mlr_pipeops_learner_quantiles