Skip to contents

Neural network 'Deephit' for survival analysis. Calls survivalmodels::deephit() from pacakge 'survivalmodels'.

Details

Custom nets can be used in this learner either using the survivalmodels::build_pytorch_net utility function or using torch via reticulate. The number of output channels depends on the number of discretised time-points, i.e. the parameters cuts or cutpoints.

Dictionary

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

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

Meta Information

Parameters

IdTypeDefaultLevelsRange
fracnumeric0\([0, 1]\)
cutsinteger10\([1, \infty)\)
cutpointsuntyped--
schemecharacterequidistantequidistant, quantiles-
cut_minnumeric0\([0, \infty)\)
num_nodesuntypedc , 32, 32-
batch_normlogicalTRUETRUE, FALSE-
dropoutnumeric-\([0, 1]\)
activationcharacterrelucelu, elu, gelu, glu, hardshrink, hardsigmoid, hardswish, hardtanh, relu6, leakyrelu, ...-
custom_netuntyped--
deviceuntyped--
mod_alphanumeric0.2\([0, 1]\)
sigmanumeric0.1\([0, \infty)\)
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)\)
interpolatelogicalFALSETRUE, FALSE-
inter_schemecharacterconst_hazardconst_hazard, const_pdf-
subinteger10\([1, \infty)\)

Installation

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

References

Lee, Changhee, Zame, William, Yoon, Jinsung, Van Der Schaar, Mihaela (2018). “Deephit: A deep learning approach to survival analysis with competing risks.” In Proceedings of the AAAI conference on artificial intelligence, volume 32 number 1.

See also

Author

RaphaelS1

Super classes

mlr3::Learner -> mlr3proba::LearnerSurv -> LearnerSurvDeephit

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

LearnerSurvDeephit$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

learner = mlr3::lrn("surv.deephit")
print(learner)
#> <LearnerSurvDeephit:surv.deephit>: Neural Network
#> * Model: -
#> * Parameters: list()
#> * Packages: mlr3, mlr3proba, mlr3extralearners, survivalmodels, distr6,
#>   reticulate
#> * Predict Type: crank
#> * Feature types: integer, numeric
#> * Properties: -

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