GNU/Linux |
Debian 7.2.0(Wheezy) |
amd64 |
![]() |
liblinear-train(1) |
![]() |
liblinear-train − train a linear classifier and produce a model
liblinear-train [options] training_set_file [model_file]
liblinear-train trains a linear classifier using liblinear and produces a model suitable for use with liblinear-predict(1).
training_set_file is the file containing the data used for training. model_file is the file to which the model will be saved. If model_file is not provided, it defaults to training_set_file.model.
To obtain good performances, sometimes one needs to scale the data. This can be done with svm-scale(1).
A summary of
options is included below.
−s type
Set the type of the solver:
0 ... L2-regularized logistic regression
1 ... L2-regularized L2-loss support vector classification (dual) (default)
2 ... L2-regularized L2-loss support vector classification (primal)
3 ... L2-regularized L1-loss support vector classification (dual)
4 ... multi-class support vector classification
5 ... L1-regularized L2-loss support vector classification
6 ... L1-regularized logistic regression
7 ... L2-regularized logistic regression (dual)
−c cost
Set the parameter C (default: 1)
−e epsilon
Set the tolerance of the termination criterion
For −s 0 and 2:
|f’(w)|_2
<= epsilon*min(pos,neg)/l*|f’(w0)_2, where f
is
the primal function and pos/neg are the number of
positive/negative data
(default: 0.01)
For −s 1, 3, 4 and 7:
Dual maximal violation <= epsilon; similar to libsvm (default: 0.1)
For −s 5 and 6:
|f’(w)|_inf
<= epsilon*min(pos,neg)/l*|f’(w0)|_inf,
where f is the primal
function (default: 0.01)
−B bias
If bias >= 0, then
instance x becomes [x; bias]; if bias < 0, then
no bias term is added (default: -1)
−wi weight
Weight-adjusts the parameter C of class i by the value weight
−v n |
n-fold cross validation mode |
|||
−q |
Quiet mode (no outputs). |
Train a linear SVM using L2-loss function:
liblinear-train data_file
Train a logistic regression model:
liblinear-train −s 0 data_file
Do five-fold cross-validation using L2-loss SVM, using a smaller stopping tolerance 0.001 instead of the default 0.1 for more accurate solutions:
liblinear-train −v 5 −e 0.001 data_file
Train four classifiers:
positive
negative Cp Cn
class 1 class 2,3,4 20 10
class 2 class 1,3,4 50 10
class 3 class 1,2,4 20 10
class 4 class 1,2,3 10 10
liblinear-train −c 10 −w1 2 −w2 5 −w3 2 four_class_data_file
If there are only two classes, we train ONE model. The C values for the two classes are 10 and 50:
liblinear-train −c 10 −w3 1 −w2 5 two_class_data_file
Output probability estimates (for logistic regression only) using liblinear-predict(1):
liblinear-predict −b 1 test_file data_file.model output_file
liblinear-predict(1), svm-predict(1), svm-train(1)
liblinear-train was written by the LIBLINEAR authors at National Taiwan university for the LIBLINEAR Project.
This manual page was written by Christian Kastner <debian@kvr.at>, for the Debian project (and may be used by others).
![]() |
liblinear-train(1) | ![]() |