| mlr_learners_classif.svm {mlr3learners} | R Documentation |
Support Vector Machine
Description
Support vector machine for classification.
Calls e1071::svm() from package e1071.
Dictionary
This mlr3::Learner can be instantiated via the dictionary mlr3::mlr_learners or with the associated sugar function mlr3::lrn():
mlr_learners$get("classif.svm")
lrn("classif.svm")
Meta Information
Task type: “classif”
Predict Types: “response”, “prob”
Feature Types: “logical”, “integer”, “numeric”
Required Packages: mlr3, mlr3learners, e1071
Parameters
| Id | Type | Default | Levels | Range |
| cachesize | numeric | 40 | (-\infty, \infty) |
|
| class.weights | untyped | NULL | - | |
| coef0 | numeric | 0 | (-\infty, \infty) |
|
| cost | numeric | 1 | [0, \infty) |
|
| cross | integer | 0 | [0, \infty) |
|
| decision.values | logical | FALSE | TRUE, FALSE | - |
| degree | integer | 3 | [1, \infty) |
|
| epsilon | numeric | 0.1 | [0, \infty) |
|
| fitted | logical | TRUE | TRUE, FALSE | - |
| gamma | numeric | - | [0, \infty) |
|
| kernel | character | radial | linear, polynomial, radial, sigmoid | - |
| nu | numeric | 0.5 | (-\infty, \infty) |
|
| scale | untyped | TRUE | - | |
| shrinking | logical | TRUE | TRUE, FALSE | - |
| tolerance | numeric | 0.001 | [0, \infty) |
|
| type | character | C-classification | C-classification, nu-classification | - |
Super classes
mlr3::Learner -> mlr3::LearnerClassif -> LearnerClassifSVM
Methods
Public methods
Inherited methods
Method new()
Creates a new instance of this R6 class.
Usage
LearnerClassifSVM$new()
Method clone()
The objects of this class are cloneable with this method.
Usage
LearnerClassifSVM$clone(deep = FALSE)
Arguments
deepWhether to make a deep clone.
References
Cortes, Corinna, Vapnik, Vladimir (1995). “Support-vector networks.” Machine Learning, 20(3), 273–297. doi:10.1007/BF00994018.
See Also
Chapter in the mlr3book: https://mlr3book.mlr-org.com/chapters/chapter2/data_and_basic_modeling.html#sec-learners
Package mlr3extralearners for more learners.
-
as.data.table(mlr_learners)for a table of available Learners in the running session (depending on the loaded packages). -
mlr3pipelines to combine learners with pre- and postprocessing steps.
Extension packages for additional task types:
-
mlr3proba for probabilistic supervised regression and survival analysis.
-
mlr3cluster for unsupervised clustering.
-
-
mlr3tuning for tuning of hyperparameters, mlr3tuningspaces for established default tuning spaces.
Other Learner:
mlr_learners_classif.cv_glmnet,
mlr_learners_classif.glmnet,
mlr_learners_classif.kknn,
mlr_learners_classif.lda,
mlr_learners_classif.log_reg,
mlr_learners_classif.multinom,
mlr_learners_classif.naive_bayes,
mlr_learners_classif.nnet,
mlr_learners_classif.qda,
mlr_learners_classif.ranger,
mlr_learners_classif.xgboost,
mlr_learners_regr.cv_glmnet,
mlr_learners_regr.glmnet,
mlr_learners_regr.kknn,
mlr_learners_regr.km,
mlr_learners_regr.lm,
mlr_learners_regr.nnet,
mlr_learners_regr.ranger,
mlr_learners_regr.svm,
mlr_learners_regr.xgboost
Examples
if (requireNamespace("e1071", quietly = TRUE)) {
# Define the Learner and set parameter values
learner = lrn("classif.svm")
print(learner)
# Define a Task
task = tsk("sonar")
# Create train and test set
ids = partition(task)
# Train the learner on the training ids
learner$train(task, row_ids = ids$train)
# print the model
print(learner$model)
# importance method
if("importance" %in% learner$properties) print(learner$importance)
# Make predictions for the test rows
predictions = learner$predict(task, row_ids = ids$test)
# Score the predictions
predictions$score()
}