mlr_learners_surv.svm | R Documentation |
Survival support vector machine.
Calls survivalsvm::survivalsvm()
from survivalsvm.
Four possible SVMs can be implemented, dependent on the type
parameter. These correspond
to predicting the survival time via regression (regression
), predicting a continuous rank
(vanbelle1
, vanbelle2
), or a hybrid of the two (hybrid
).
Whichever type
is chosen determines how the crank
predict type is calculated,
but in any case all can be considered a valid continuous ranking.
makediff3
is recommended when using type = "hybrid"
.
This Learner can be instantiated via lrn():
lrn("surv.svm")
Task type: “surv”
Predict Types: “crank”, “response”
Feature Types: “logical”, “integer”, “numeric”, “character”, “factor”
Required Packages: mlr3, mlr3proba, mlr3extralearners, survivalsvm
Id | Type | Default | Levels | Range |
type | character | regression | regression, vanbelle1, vanbelle2, hybrid | - |
diff.meth | character | - | makediff1, makediff2, makediff3 | - |
gamma | numeric | NULL | (-\infty, \infty) |
|
mu | numeric | NULL | (-\infty, \infty) |
|
opt.meth | character | quadprog | quadprog, ipop | - |
kernel | character | lin_kernel | lin_kernel, add_kernel, rbf_kernel, poly_kernel | - |
kernel.pars | untyped | - | - | |
sgf.sv | integer | 5 | [0, \infty) |
|
sigf | integer | 7 | [0, \infty) |
|
maxiter | integer | 20 | [0, \infty) |
|
margin | numeric | 0.05 | [0, \infty) |
|
bound | numeric | 10 | [0, \infty) |
|
eig.tol | numeric | 1e-06 | [0, \infty) |
|
conv.tol | numeric | 1e-07 | [0, \infty) |
|
posd.tol | numeric | 1e-08 | [0, \infty) |
|
This learner returns up to two prediction types:
crank
: a vector containing the continuous ranking scores, where each score
corresponds to a specific test observation.
response
: the survival time of each test observation, equal to -crank
.
This prediction type if only available for "type"
equal to regression
or hybrid
.
gamma
, mu
have replaced gamma.mu
so that it's easier to tune these separately.
mu
is only used when type = "hybrid"
.
mlr3::Learner
-> mlr3proba::LearnerSurv
-> LearnerSurvSVM
new()
Creates a new instance of this R6 class.
LearnerSurvSVM$new()
clone()
The objects of this class are cloneable with this method.
LearnerSurvSVM$clone(deep = FALSE)
deep
Whether to make a deep clone.
RaphaelS1
Van Belle, Vanya, Pelckmans, Kristiaan, Van Huffel, Sabine, Suykens, AK J (2011). “Improved performance on high-dimensional survival data by application of Survival-SVM.” Bioinformatics, 27(1), 87–94.
Van Belle, Vanya, Pelckmans, Kristiaan, Van Huffel, Sabine, Suykens, AK J (2011). “Support vector methods for survival analysis: a comparison between ranking and regression approaches.” Artificial intelligence in medicine, 53(2), 107–118.
Shivaswamy, K P, Chu, Wei, Jansche, Martin (2007). “A support vector approach to censored targets.” In Seventh IEEE international conference on data mining (ICDM 2007), 655–660. IEEE.
Dictionary of Learners: mlr3::mlr_learners.
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.
set.seed(123)
# Define the Learner and set parameter values
learner = lrn("surv.svm", gamma = 0.1)
print(learner)
# Define a Task
task = mlr3::tsk("rats")
# Create train and test set
ids = mlr3::partition(task)
# Train the learner on the training ids
learner$train(task, row_ids = ids$train)
# print the model
print(learner$model)
# Make predictions for the test rows
predictions = learner$predict(task, row_ids = ids$test)
# Score the predictions
predictions$score()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.