diff --git a/DESCRIPTION b/DESCRIPTION index 8854b7c99..1b712b33e 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -63,6 +63,7 @@ Collate: 'NO_OP.R' 'PipeOpTaskPreproc.R' 'PipeOpApply.R' + 'PipeOpBackupLearner.R' 'PipeOpBalanceSample.R' 'PipeOpBranch.R' 'PipeOpChunk.R' diff --git a/NAMESPACE b/NAMESPACE index 2179c6a0d..54b465294 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -16,6 +16,7 @@ export(LearnerRegrWeightedAverage) export(NO_OP) export(PipeOp) export(PipeOpApply) +export(PipeOpBackupLearner) export(PipeOpBalanceSample) export(PipeOpBranch) export(PipeOpChunk) diff --git a/attic/PipeOpBackupLearner.R b/R/PipeOpBackupLearner.R similarity index 98% rename from attic/PipeOpBackupLearner.R rename to R/PipeOpBackupLearner.R index daeae642d..053cad690 100644 --- a/attic/PipeOpBackupLearner.R +++ b/R/PipeOpBackupLearner.R @@ -85,4 +85,4 @@ PipeOpBackupLearner = R6Class("PipeOpBackupLearner", inherit = PipeOp, ) ) -register_pipeop("backuplearner", PipeOpBackupLearner) +mlr_pipeops$add("backuplearner", PipeOpBackupLearner) diff --git a/man/PipeOp.Rd b/man/PipeOp.Rd index c07275cec..20cad792a 100644 --- a/man/PipeOp.Rd +++ b/man/PipeOp.Rd @@ -129,6 +129,7 @@ Other mlr3pipelines backend related: \code{\link{Graph}}, Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/PipeOpEnsemble.Rd b/man/PipeOpEnsemble.Rd index bf9d0ad15..963bc8508 100644 --- a/man/PipeOpEnsemble.Rd +++ b/man/PipeOpEnsemble.Rd @@ -25,6 +25,7 @@ channel is created that can take an arbitrary number of inputs. \seealso{ Other PipeOps: \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/PipeOpTaskPreproc.Rd b/man/PipeOpTaskPreproc.Rd index 2948b7788..b57ffda5b 100644 --- a/man/PipeOpTaskPreproc.Rd +++ b/man/PipeOpTaskPreproc.Rd @@ -101,6 +101,7 @@ Other mlr3pipelines backend related: \code{\link{Graph}}, Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_apply.Rd b/man/mlr_pipeop_apply.Rd index c9793f32d..844f47c39 100644 --- a/man/mlr_pipeop_apply.Rd +++ b/man/mlr_pipeop_apply.Rd @@ -30,6 +30,7 @@ performance. \seealso{ Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_backup_learner.Rd b/man/mlr_pipeop_backup_learner.Rd new file mode 100644 index 000000000..fe71176b6 --- /dev/null +++ b/man/mlr_pipeop_backup_learner.Rd @@ -0,0 +1,65 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/PipeOpBackupLearner.R +\docType{data} +\name{mlr_pipeop_backup_learner} +\alias{mlr_pipeop_backup_learner} +\alias{PipeOpBackupLearner} +\title{PipeOpBackupLearner} +\format{\code{\link{R6Class}} object inheriting from \code{\link{PipeOp}}.} +\usage{ +PipeOpBackupLearner +} +\description{ +Uses an \code{\link[mlr3:Learner]{mlr3::Learner}} to repair predictions done by +a previous \code{\link{PipeOpLearner}}. + +Inherits the \code{$param_set} and \code{$values} from the \code{Learner} it is constructed from. +} +\section{Public Members / Active Bindings}{ + +\itemize{ +\item \code{learner} :: \code{\link{Learner}} \cr +Learner to use for backup prediction. Defaults to +\code{\link[mlr3:mlr_learners_classif.featureless]{classif.featureless}}. +} +} + +\section{Methods}{ + +\itemize{ +\item \code{PipeOpLearner$new(learner = mlr_learners$get("classif.featureless", id = "backuplearner", predict_type = "prob"), id = "backuplearner")} \cr +(\code{\link{Learner}}, \code{character(1)}) -> \code{self} \cr +Constructor. The given learner will be used for backup prediction. +} +} + +\seealso{ +Other PipeOps: \code{\link{PipeOpEnsemble}}, + \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, + \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_balancesample}}, + \code{\link{mlr_pipeop_branch}}, + \code{\link{mlr_pipeop_chunk}}, + \code{\link{mlr_pipeop_copy}}, + \code{\link{mlr_pipeop_encode}}, + \code{\link{mlr_pipeop_featureunion}}, + \code{\link{mlr_pipeop_filter}}, + \code{\link{mlr_pipeop_impute}}, + \code{\link{mlr_pipeop_learner}}, + \code{\link{mlr_pipeop_majorityvote}}, + \code{\link{mlr_pipeop_modelavg}}, + \code{\link{mlr_pipeop_mutate}}, + \code{\link{mlr_pipeop_nop}}, + \code{\link{mlr_pipeop_pca}}, + \code{\link{mlr_pipeop_scale}}, + \code{\link{mlr_pipeop_select}}, + \code{\link{mlr_pipeop_subsample}}, + \code{\link{mlr_pipeop_unbranch}}, + \code{\link{mlr_pipeops}} + +Other Meta PipeOps: \code{\link{mlr_pipeop_learner_cv}}, + \code{\link{mlr_pipeop_learner}} +} +\concept{Meta PipeOps} +\concept{PipeOps} +\keyword{datasets} diff --git a/man/mlr_pipeop_balancesample.Rd b/man/mlr_pipeop_balancesample.Rd index bb6c9e1df..b863edfeb 100644 --- a/man/mlr_pipeop_balancesample.Rd +++ b/man/mlr_pipeop_balancesample.Rd @@ -54,6 +54,7 @@ table(new_task$truth()) Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, \code{\link{mlr_pipeop_copy}}, diff --git a/man/mlr_pipeop_branch.Rd b/man/mlr_pipeop_branch.Rd index 66b8964c0..dfde5ad85 100644 --- a/man/mlr_pipeop_branch.Rd +++ b/man/mlr_pipeop_branch.Rd @@ -61,6 +61,7 @@ PipeOpBranch$new(choices) \%>>\% gunion(list(pca, nop)) \%>>\% PipeOpUnbranch$ne Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_chunk}}, \code{\link{mlr_pipeop_copy}}, diff --git a/man/mlr_pipeop_chunk.Rd b/man/mlr_pipeop_chunk.Rd index 878eb43fb..6598376ba 100644 --- a/man/mlr_pipeop_chunk.Rd +++ b/man/mlr_pipeop_chunk.Rd @@ -41,6 +41,7 @@ op$train(list(task = task)) Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_copy}}, diff --git a/man/mlr_pipeop_copy.Rd b/man/mlr_pipeop_copy.Rd index f42c58b14..951f32cc9 100644 --- a/man/mlr_pipeop_copy.Rd +++ b/man/mlr_pipeop_copy.Rd @@ -27,6 +27,7 @@ copies that will be made. Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_encode.Rd b/man/mlr_pipeop_encode.Rd index a6cb1f93f..750015e2b 100644 --- a/man/mlr_pipeop_encode.Rd +++ b/man/mlr_pipeop_encode.Rd @@ -36,6 +36,7 @@ Use the \code{$affect_columns} functionality to only encode a subset of columns, Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_featureunion.Rd b/man/mlr_pipeop_featureunion.Rd index d57b7b6e3..71ce6ffbf 100644 --- a/man/mlr_pipeop_featureunion.Rd +++ b/man/mlr_pipeop_featureunion.Rd @@ -34,6 +34,7 @@ is the length of \code{innum}, and the resulting columns are prefixed with the v Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_filter.Rd b/man/mlr_pipeop_filter.Rd index 206f43386..ca735d8a1 100644 --- a/man/mlr_pipeop_filter.Rd +++ b/man/mlr_pipeop_filter.Rd @@ -63,6 +63,7 @@ head(po$state$scores, 10) Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_impute.Rd b/man/mlr_pipeop_impute.Rd index fb142047f..ab8738060 100644 --- a/man/mlr_pipeop_impute.Rd +++ b/man/mlr_pipeop_impute.Rd @@ -29,6 +29,7 @@ sum(complete.cases(new_task$data())) Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_learner.Rd b/man/mlr_pipeop_learner.Rd index 06a9ca2c3..eeee790ca 100644 --- a/man/mlr_pipeop_learner.Rd +++ b/man/mlr_pipeop_learner.Rd @@ -34,6 +34,7 @@ Constructor. The given learner will be used for prediction. Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, @@ -53,7 +54,8 @@ Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{mlr_pipeop_unbranch}}, \code{\link{mlr_pipeops}} -Other Meta PipeOps: \code{\link{mlr_pipeop_learner_cv}} +Other Meta PipeOps: \code{\link{mlr_pipeop_backup_learner}}, + \code{\link{mlr_pipeop_learner_cv}} } \concept{Meta PipeOps} \concept{PipeOps} diff --git a/man/mlr_pipeop_learner_cv.Rd b/man/mlr_pipeop_learner_cv.Rd index cd570640f..c9941a55f 100644 --- a/man/mlr_pipeop_learner_cv.Rd +++ b/man/mlr_pipeop_learner_cv.Rd @@ -52,7 +52,8 @@ The \code{\link{ParamSet}} of \code{$learner} is also made available. } \seealso{ -Other Meta PipeOps: \code{\link{mlr_pipeop_learner}} +Other Meta PipeOps: \code{\link{mlr_pipeop_backup_learner}}, + \code{\link{mlr_pipeop_learner}} } \concept{Meta PipeOps} \concept{Pipeops} diff --git a/man/mlr_pipeop_majorityvote.Rd b/man/mlr_pipeop_majorityvote.Rd index caf51a3e5..bf7c722a1 100644 --- a/man/mlr_pipeop_majorityvote.Rd +++ b/man/mlr_pipeop_majorityvote.Rd @@ -26,6 +26,7 @@ op = PipeOpMajorityVote$new(3) Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_modelavg.Rd b/man/mlr_pipeop_modelavg.Rd index 59efce6e4..b47841218 100644 --- a/man/mlr_pipeop_modelavg.Rd +++ b/man/mlr_pipeop_modelavg.Rd @@ -25,6 +25,7 @@ op = PipeOpModelAvg$new() Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_mutate.Rd b/man/mlr_pipeop_mutate.Rd index e2c065567..a81aa7483 100644 --- a/man/mlr_pipeop_mutate.Rd +++ b/man/mlr_pipeop_mutate.Rd @@ -31,6 +31,7 @@ then features may still be overwritten. Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_nop.Rd b/man/mlr_pipeop_nop.Rd index 39c6d65ec..af507eff3 100644 --- a/man/mlr_pipeop_nop.Rd +++ b/man/mlr_pipeop_nop.Rd @@ -17,6 +17,7 @@ Can be useful during graph construction to keep the original task in conjunction Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_pca.Rd b/man/mlr_pipeop_pca.Rd index 153eff210..9f06a1a0e 100644 --- a/man/mlr_pipeop_pca.Rd +++ b/man/mlr_pipeop_pca.Rd @@ -21,6 +21,7 @@ op1 = PipeOpPCA$new() Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_scale.Rd b/man/mlr_pipeop_scale.Rd index 09cb588f9..eacae405d 100644 --- a/man/mlr_pipeop_scale.Rd +++ b/man/mlr_pipeop_scale.Rd @@ -19,6 +19,7 @@ See \code{\link[base:scale]{base::scale()}} for details and parameters. Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_select.Rd b/man/mlr_pipeop_select.Rd index 2ad60f183..5f2d60e6b 100644 --- a/man/mlr_pipeop_select.Rd +++ b/man/mlr_pipeop_select.Rd @@ -31,6 +31,7 @@ Invert selection. If this is \code{TRUE}, the features selected by Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_subsample.Rd b/man/mlr_pipeop_subsample.Rd index 32fa4e203..b3562a04b 100644 --- a/man/mlr_pipeop_subsample.Rd +++ b/man/mlr_pipeop_subsample.Rd @@ -29,6 +29,7 @@ Sample with replacement? Default is \code{FALSE}. Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeop_unbranch.Rd b/man/mlr_pipeop_unbranch.Rd index c83f01b7a..3ef34bc3e 100644 --- a/man/mlr_pipeop_unbranch.Rd +++ b/man/mlr_pipeop_unbranch.Rd @@ -42,6 +42,7 @@ PipeOpBranch$new(choices) \%>>\% gunion(list(pca, nop)) \%>>\% PipeOpUnbranch$ne Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/man/mlr_pipeops.Rd b/man/mlr_pipeops.Rd index 48c54a2dc..c786839e3 100644 --- a/man/mlr_pipeops.Rd +++ b/man/mlr_pipeops.Rd @@ -35,6 +35,7 @@ Other mlr3pipelines backend related: \code{\link{Graph}}, Other PipeOps: \code{\link{PipeOpEnsemble}}, \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOp}}, \code{\link{mlr_pipeop_apply}}, + \code{\link{mlr_pipeop_backup_learner}}, \code{\link{mlr_pipeop_balancesample}}, \code{\link{mlr_pipeop_branch}}, \code{\link{mlr_pipeop_chunk}}, diff --git a/attic/test_pipeop_backup_learner.R b/tests/testthat/test_pipeop_backup_learner.R similarity index 100% rename from attic/test_pipeop_backup_learner.R rename to tests/testthat/test_pipeop_backup_learner.R