Learn R Programming

mlr3learners (version 0.5.1)

mlr_learners_classif.ranger: Ranger Classification Learner

Description

Random classification forest. Calls ranger::ranger() from package ranger.

Arguments

Custom mlr3 defaults

  • num.threads:

    • Actual default: NULL, triggering auto-detection of the number of CPUs.

    • Adjusted value: 1.

    • Reason for change: Conflicting with parallelization via future.

  • mtry:

    • This hyperparameter can alternatively be set via our hyperparameter mtry.ratio as mtry = max(ceiling(mtry.ratio * n_features), 1). Note that mtry and mtry.ratio are mutually exclusive.

Dictionary

This Learner can be instantiated via the dictionary mlr_learners or with the associated sugar function lrn():

mlr_learners$get("classif.ranger")
lrn("classif.ranger")

Meta Information

  • Task type: “classif”

  • Predict Types: “response”, “prob”

  • Feature Types: “logical”, “integer”, “numeric”, “character”, “factor”, “ordered”

  • Required Packages: mlr3, mlr3learners, ranger

Parameters

Id Type Default Levels Range
alpha numeric 0.5 \((-\infty, \infty)\)
always.split.variables list - -
class.weights list NULL -
holdout logical FALSE TRUE, FALSE -
importance character - none, impurity, impurity_corrected, permutation -
keep.inbag logical FALSE TRUE, FALSE -
max.depth integer NULL \([0, \infty)\)
min.node.size integer 1 \([1, \infty)\)
min.prop numeric 0.1 \((-\infty, \infty)\)
minprop numeric 0.1 \((-\infty, \infty)\)
mtry integer - \([1, \infty)\)
mtry.ratio numeric - \([0, 1]\)
num.random.splits integer 1 \([1, \infty)\)
num.threads integer 1 \([1, \infty)\)
num.trees integer 500 \([1, \infty)\)
oob.error logical TRUE TRUE, FALSE -
regularization.factor list 1 -
regularization.usedepth logical FALSE TRUE, FALSE -
replace logical TRUE TRUE, FALSE -
respect.unordered.factors character ignore ignore, order, partition -
sample.fraction numeric - \([0, 1]\)
save.memory logical FALSE TRUE, FALSE -
scale.permutation.importance logical FALSE TRUE, FALSE -
se.method character infjack jack, infjack -
seed integer NULL \((-\infty, \infty)\)
split.select.weights list NULL -
splitrule character gini gini, extratrees -
verbose logical TRUE TRUE, FALSE -
write.forest logical TRUE TRUE, FALSE -

Super classes

mlr3::Learner -> mlr3::LearnerClassif -> LearnerClassifRanger

Methods

Public methods

Method new()

Creates a new instance of this R6 class.

Usage

LearnerClassifRanger$new()

Method importance()

The importance scores are extracted from the model slot variable.importance. Parameter importance.mode must be set to "impurity", "impurity_corrected", or "permutation"

Usage

LearnerClassifRanger$importance()

Returns

Named numeric().

Method oob_error()

The out-of-bag error, extracted from model slot prediction.error.

Usage

LearnerClassifRanger$oob_error()

Returns

numeric(1).

Method clone()

The objects of this class are cloneable with this method.

Usage

LearnerClassifRanger$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

References

Wright, N. M, Ziegler, Andreas (2017). “ranger: A Fast Implementation of Random Forests for High Dimensional Data in C++ and R.” Journal of Statistical Software, 77(1), 1--17. 10.18637/jss.v077.i01.

Breiman, Leo (2001). “Random Forests.” Machine Learning, 45(1), 5--32. ISSN 1573-0565, 10.1023/A:1010933404324.

See Also

  • Chapter in the mlr3book: https://mlr3book.mlr-org.com/basics.html#learners

  • Package mlr3extralearners for more learners.

  • Dictionary of Learners: mlr_learners

  • as.data.table(mlr_learners) for a table of available Learners in the running session (depending on the loaded packages).

  • mlr3pipelines to combine learners with pre- and postprocessing steps.

  • Extension packages for additional task types:

    • mlr3proba for probabilistic supervised regression and survival analysis.

    • mlr3cluster for unsupervised clustering.

  • mlr3tuning for tuning of hyperparameters, mlr3tuningspaces for established default tuning spaces.

Other Learner: mlr_learners_classif.cv_glmnet, mlr_learners_classif.glmnet, mlr_learners_classif.kknn, mlr_learners_classif.lda, mlr_learners_classif.log_reg, mlr_learners_classif.multinom, mlr_learners_classif.naive_bayes, mlr_learners_classif.nnet, mlr_learners_classif.qda, mlr_learners_classif.svm, mlr_learners_classif.xgboost, mlr_learners_regr.cv_glmnet, mlr_learners_regr.glmnet, mlr_learners_regr.kknn, mlr_learners_regr.km, mlr_learners_regr.lm, mlr_learners_regr.ranger, mlr_learners_regr.svm, mlr_learners_regr.xgboost, mlr_learners_surv.cv_glmnet, mlr_learners_surv.glmnet, mlr_learners_surv.ranger, mlr_learners_surv.xgboost

Examples

Run this code
# NOT RUN {
if (requireNamespace("ranger", quietly = TRUE)) {
  learner = mlr3::lrn("classif.ranger")
  print(learner)

  # available parameters:
learner$param_set$ids()
}
# }

Run the code above in your browser using DataLab