Skip to contents

DeepSurv fits a neural network based on the partial likelihood from a Cox PH. Calls survivalmodels::dnnsurv() from package 'survivalmodels'.

Dictionary

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

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

Meta Information

Parameters

IdTypeDefaultLevelsRange
fracnumeric0\([0, 1]\)
num_nodesuntypedc(32L, 32L)-
batch_normlogicalTRUETRUE, FALSE-
dropoutnumeric-\([0, 1]\)
activationcharacterrelucelu, elu, gelu, glu, hardshrink, hardsigmoid, hardswish, hardtanh, relu6, leakyrelu, ...-
deviceuntyped--
optimizercharacteradamadadelta, adagrad, adam, adamax, adamw, asgd, rmsprop, rprop, sgd, sparse_adam-
rhonumeric0.9\((-\infty, \infty)\)
epsnumeric1e-08\((-\infty, \infty)\)
lrnumeric1\((-\infty, \infty)\)
weight_decaynumeric0\((-\infty, \infty)\)
learning_ratenumeric0.01\((-\infty, \infty)\)
lr_decaynumeric0\((-\infty, \infty)\)
betasuntypedc(0.9, 0.999)-
amsgradlogicalFALSETRUE, FALSE-
lambdnumeric1e-04\([0, \infty)\)
alphanumeric0.75\([0, \infty)\)
t0numeric1e+06\((-\infty, \infty)\)
momentumnumeric0\((-\infty, \infty)\)
centeredlogicalTRUETRUE, FALSE-
etasuntypedc(0.5, 1.2)-
step_sizesuntypedc(1e-06, 50)-
dampeningnumeric0\((-\infty, \infty)\)
nesterovlogicalFALSETRUE, FALSE-
batch_sizeinteger256\((-\infty, \infty)\)
epochsinteger1\([1, \infty)\)
verboselogicalTRUETRUE, FALSE-
num_workersinteger0\((-\infty, \infty)\)
shufflelogicalTRUETRUE, FALSE-
best_weightslogicalFALSETRUE, FALSE-
early_stoppinglogicalFALSETRUE, FALSE-
min_deltanumeric0\((-\infty, \infty)\)
patienceinteger10\((-\infty, \infty)\)

Installation

Package 'survivalmodels' is not on CRAN and has to be install from GitHub via remotes::install_github("RaphaelS1/survivalmodels").

References

Katzman, L J, Shaham, Uri, Cloninger, Alexander, Bates, Jonathan, Jiang, Tingting, Kluger, Yuval (2018). “DeepSurv: personalized treatment recommender system using a Cox proportional hazards deep neural network.” BMC medical research methodology, 18(1), 1--12.

See also

Author

RaphaelS1

Super classes

mlr3::Learner -> mlr3proba::LearnerSurv -> LearnerSurvDeepsurv

Methods

Inherited methods


Method new()

Creates a new instance of this R6 class.

Usage


Method clone()

The objects of this class are cloneable with this method.

Usage

LearnerSurvDeepsurv$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

learner = mlr3::lrn("surv.deepsurv")
print(learner)
#> <LearnerSurvDeepsurv:surv.deepsurv>: Neural Network
#> * Model: -
#> * Parameters: list()
#> * Packages: mlr3, mlr3proba, mlr3extralearners, survivalmodels, distr6,
#>   reticulate
#> * Predict Types:  [crank], distr
#> * Feature Types: integer, numeric
#> * Properties: -

# available parameters:
learner$param_set$ids()
#>  [1] "frac"           "num_nodes"      "batch_norm"     "dropout"       
#>  [5] "activation"     "device"         "optimizer"      "rho"           
#>  [9] "eps"            "lr"             "weight_decay"   "learning_rate" 
#> [13] "lr_decay"       "betas"          "amsgrad"        "lambd"         
#> [17] "alpha"          "t0"             "momentum"       "centered"      
#> [21] "etas"           "step_sizes"     "dampening"      "nesterov"      
#> [25] "batch_size"     "epochs"         "verbose"        "num_workers"   
#> [29] "shuffle"        "best_weights"   "early_stopping" "min_delta"     
#> [33] "patience"