Survival DeepHit Learner
mlr_learners_surv.deephit.Rd
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
.
Prediction types
This learner returns two prediction types:
distr
: a survival matrix in two dimensions, where observations are represented in rows and time points in columns. Calculated using the internalsurvivalmodels::predict.pycox()
function.crank
: the expected mortality usingsurvivalmodels::surv_to_risk()
.
Meta Information
Task type: “surv”
Predict Types: “crank”, “distr”
Feature Types: “integer”, “numeric”
Required Packages: mlr3, mlr3proba, mlr3extralearners, survivalmodels, distr6, reticulate
Parameters
Id | Type | Default | Levels | Range |
frac | numeric | 0 | \([0, 1]\) | |
cuts | integer | 10 | \([1, \infty)\) | |
cutpoints | untyped | - | - | |
scheme | character | equidistant | equidistant, quantiles | - |
cut_min | numeric | 0 | \([0, \infty)\) | |
num_nodes | untyped | c(32L, 32L) | - | |
batch_norm | logical | TRUE | TRUE, FALSE | - |
dropout | numeric | - | \([0, 1]\) | |
activation | character | relu | celu, elu, gelu, glu, hardshrink, hardsigmoid, hardswish, hardtanh, relu6, leakyrelu, ... | - |
custom_net | untyped | - | - | |
device | untyped | - | - | |
mod_alpha | numeric | 0.2 | \([0, 1]\) | |
sigma | numeric | 0.1 | \([0, \infty)\) | |
optimizer | character | adam | adadelta, adagrad, adam, adamax, adamw, asgd, rmsprop, rprop, sgd, sparse_adam | - |
rho | numeric | 0.9 | \((-\infty, \infty)\) | |
eps | numeric | 1e-08 | \((-\infty, \infty)\) | |
lr | numeric | 1 | \((-\infty, \infty)\) | |
weight_decay | numeric | 0 | \((-\infty, \infty)\) | |
learning_rate | numeric | 0.01 | \((-\infty, \infty)\) | |
lr_decay | numeric | 0 | \((-\infty, \infty)\) | |
betas | untyped | c(0.9, 0.999) | - | |
amsgrad | logical | FALSE | TRUE, FALSE | - |
lambd | numeric | 1e-04 | \([0, \infty)\) | |
alpha | numeric | 0.75 | \([0, \infty)\) | |
t0 | numeric | 1e+06 | \((-\infty, \infty)\) | |
momentum | numeric | 0 | \((-\infty, \infty)\) | |
centered | logical | TRUE | TRUE, FALSE | - |
etas | untyped | c(0.5, 1.2) | - | |
step_sizes | untyped | c(1e-06, 50) | - | |
dampening | numeric | 0 | \((-\infty, \infty)\) | |
nesterov | logical | FALSE | TRUE, FALSE | - |
batch_size | integer | 256 | \((-\infty, \infty)\) | |
epochs | integer | 1 | \([1, \infty)\) | |
verbose | logical | TRUE | TRUE, FALSE | - |
num_workers | integer | 0 | \((-\infty, \infty)\) | |
shuffle | logical | TRUE | TRUE, FALSE | - |
best_weights | logical | FALSE | TRUE, FALSE | - |
early_stopping | logical | FALSE | TRUE, FALSE | - |
min_delta | numeric | 0 | \((-\infty, \infty)\) | |
patience | integer | 10 | \((-\infty, \infty)\) | |
interpolate | logical | FALSE | TRUE, FALSE | - |
inter_scheme | character | const_hazard | const_hazard, const_pdf | - |
sub | integer | 10 | \([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
as.data.table(mlr_learners)
for a table of available Learners in the running session (depending on the loaded packages).Chapter in the mlr3book: https://mlr3book.mlr-org.com/basics.html#learners
mlr3learners for a selection of recommended learners.
mlr3cluster for unsupervised clustering learners.
mlr3pipelines to combine learners with pre- and postprocessing steps.
mlr3tuning for tuning of hyperparameters, mlr3tuningspaces for established default tuning spaces.
Super classes
mlr3::Learner
-> mlr3proba::LearnerSurv
-> LearnerSurvDeephit
Examples
lrn("surv.deephit")
#> <LearnerSurvDeephit:surv.deephit>: Neural Network
#> * Model: -
#> * Parameters: list()
#> * Packages: mlr3, mlr3proba, mlr3extralearners, survivalmodels, distr6,
#> reticulate
#> * Predict Types: [crank], distr
#> * Feature Types: integer, numeric
#> * Properties: -