Skip to contents

Accelerated oblique random survival forest. Calls aorsf::orsf() from aorsf. Note that although the learner has the property "missing" and it can in principle deal with missing values, the behaviour has to be configured using the parameter na_action.

Details

This learner returns three prediction types:

  1. distr: a survival matrix in two dimensions, where observations are represented in rows and (unique event) time points in columns.

  2. response: the restricted mean survival time of each test observation, derived from the survival matrix prediction (distr).

  3. crank: the expected mortality using mlr3proba::.surv_return.

Dictionary

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

mlr_learners$get("surv.aorsf")
lrn("surv.aorsf")

Meta Information

  • Task type: “surv”

  • Predict Types: “crank”, “distr”, “response”

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

  • Required Packages: mlr3, mlr3proba, mlr3extralearners, aorsf, pracma

Parameters

IdTypeDefaultLevelsRange
n_treeinteger500\([1, \infty)\)
n_splitinteger5\([1, \infty)\)
n_retryinteger3\([0, \infty)\)
n_threadinteger0\([0, \infty)\)
pred_aggregatelogicalTRUETRUE, FALSE-
pred_simplifylogicalFALSETRUE, FALSE-
oobaglogicalFALSETRUE, FALSE-
mtryintegerNULL\([1, \infty)\)
mtry_rationumeric-\([0, 1]\)
sample_with_replacementlogicalTRUETRUE, FALSE-
sample_fractionnumeric0.632\([0, 1]\)
control_typecharacterfastfast, cph, net-
split_rulecharacterlogranklogrank, cstat-
control_fast_do_scalelogicalFALSETRUE, FALSE-
control_fast_tiescharacterefronefron, breslow-
control_cph_tiescharacterefronefron, breslow-
control_cph_epsnumeric1e-09\([0, \infty)\)
control_cph_iter_maxinteger20\([1, \infty)\)
control_net_alphanumeric0.5\((-\infty, \infty)\)
control_net_df_targetintegerNULL\([1, \infty)\)
leaf_min_eventsinteger1\([1, \infty)\)
leaf_min_obsinteger5\([1, \infty)\)
split_min_eventsinteger5\([1, \infty)\)
split_min_obsinteger10\([1, \infty)\)
split_min_statnumericNULL\([0, \infty)\)
oobag_pred_typecharacterrisknone, surv, risk, chf, mort-
importancecharacteranovanone, anova, negate, permute-
importance_max_pvaluenumeric0.01\([1e-04, 0.9999]\)
tree_seedsintegerNULL\([1, \infty)\)
oobag_pred_horizonnumericNULL\([0, \infty)\)
oobag_eval_everyintegerNULL\([1, \infty)\)
oobag_fununtypedNULL-
attach_datalogicalTRUETRUE, FALSE-
verbose_progresslogicalFALSETRUE, FALSE-
na_actioncharacterfailfail, omit, impute_meanmode-

Initial parameter values

  • mtry:

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

References

Jaeger BC, Long DL, Long DM, Sims M, Szychowski JM, Min Y, Mcclure LA, Howard G, Simon N (2019). “Oblique random survival forests.” The Annals of Applied Statistics, 13(3). doi:10.1214/19-aoas1261 .

Jaeger BC, Welden S, Lenoir K, Speiser JL, Segar MW, Pandey A, Pajewski NM (2023). “Accelerated and interpretable oblique random survival forests.” Journal of Computational and Graphical Statistics, 1–16. doi:10.1080/10618600.2023.2231048 .

See also

Author

bcjaeger

Super classes

mlr3::Learner -> mlr3proba::LearnerSurv -> LearnerSurvAorsf

Methods

Inherited methods


Method new()

Creates a new instance of this R6 class.

Usage


Method oob_error()

OOB concordance error extracted from the model slot eval_oobag$stat_values

Usage

LearnerSurvAorsf$oob_error()

Returns

numeric().


Method importance()

The importance scores are extracted from the model.

Usage

LearnerSurvAorsf$importance()

Returns

Named numeric().


Method clone()

The objects of this class are cloneable with this method.

Usage

LearnerSurvAorsf$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

learner = mlr3::lrn("surv.aorsf")
print(learner)
#> <LearnerSurvAorsf:surv.aorsf>: Oblique Random Forest
#> * Model: -
#> * Parameters: list()
#> * Packages: mlr3, mlr3proba, mlr3extralearners, aorsf, pracma
#> * Predict Types:  [crank], distr, response
#> * Feature Types: integer, numeric, factor, ordered
#> * Properties: importance, missings, oob_error

# available parameters:
learner$param_set$ids()
#>  [1] "n_tree"                  "n_split"                
#>  [3] "n_retry"                 "n_thread"               
#>  [5] "pred_aggregate"          "pred_simplify"          
#>  [7] "oobag"                   "mtry"                   
#>  [9] "mtry_ratio"              "sample_with_replacement"
#> [11] "sample_fraction"         "control_type"           
#> [13] "split_rule"              "control_fast_do_scale"  
#> [15] "control_fast_ties"       "control_cph_ties"       
#> [17] "control_cph_eps"         "control_cph_iter_max"   
#> [19] "control_net_alpha"       "control_net_df_target"  
#> [21] "leaf_min_events"         "leaf_min_obs"           
#> [23] "split_min_events"        "split_min_obs"          
#> [25] "split_min_stat"          "oobag_pred_type"        
#> [27] "importance"              "importance_max_pvalue"  
#> [29] "tree_seeds"              "oobag_pred_horizon"     
#> [31] "oobag_eval_every"        "oobag_fun"              
#> [33] "attach_data"             "verbose_progress"       
#> [35] "na_action"