svmtrain
This function trains an SVM model based on known labels and their corresponding data which comprise an instance matrtix.
libsvm_options
: A string of testing options in the same format as that of LIBSVM.
libsvm_options
:
-s
: svm_type; set type of SVM (default 0)
0 | C-SVC (multi-class classification) | |
1 | nu-SVC (multi-class classification) | |
2 | one-class SVM | |
3 | epsilon-SVR (regression) | |
4 | nu-SVR (regression) |
-t
: kernel_type; set type of kernel function (default 2)
0 | linear: u’*v | |
1 | polynomial: | |
2 | radial basis function: | |
3 | sigmoid: | |
4 | precomputed kernel (kernel values in training_instance_matrix) |
-d
: degree; set degree in kernel function (default 3)
-g
: gamma; set gamma in kernel function (default 1/num_features)
-r
: coef0; set coef0 in kernel function (default 0)
-c
: cost; set the parameter C of C-SVC, epsilon-SVR, and nu-SVR (default 1)
-n
: nu; set the parameter nu of nu-SVC, one-class SVM, and nu-SVR (default 0.5)
-p
: epsilon; set the epsilon in loss function of epsilon-SVR (default 0.1)
-m
: cachesize; set cache memory size in MB (default 100)
-e
: epsilon; set tolerance of termination criterion (default 0.001)
-h
: shrinking; whether to use the shrinking heuristics, 0 or 1 (default 1)
-b
: probability_estimates; whether to train a SVC or SVR model for probability estimates, 0 or 1 (default 0)
-w
: weight; set the parameter C of class i to weight*C, for C-SVC (default 1)
-v
: n; n-fold cross validation mode
-q
: quiet mode (no outputs)
The function svmtrain
function returns a model structure which can be used for future prediction and it contains the following fields:
Parameters
: parameters
nr_class
: number of classes; = 2 for regression/one-class svm
totalSV
: total #SV
rho
: of the decision function(s)
Label
: label of each class; empty for regression/one-class SVM
sv_indices
: values in [1,...,num_traning_data] to indicate SVs in the training set
ProbA
: pairwise probability information; empty if -b 0 or in one-class SVM
ProbB
: pairwise probability information; empty if -b 0 or in one-class SVM
nSV
: number of SVs for each class; empty for regression/one-class SVM
sv_coef
: coefficients for SVs in decision functions
SVs
: support vectors
If you do not use the option -b 1
, ProbA and ProbB are empty matrices. If the ’-v’ option is specified, cross validation is conducted and the returned model is just a scalar: cross-validation accuracy for classification and mean-squared error for regression.
Source Code: svmtrain