Provided by: liblinear-tools_2.1.0+dfsg-4_amd64

**NAME**

liblinear-train - train a linear classifier and produce a model

**SYNOPSIS**

liblinear-train[options]training_set_file[model_file]

**DESCRIPTION**

liblinear-traintrains a linear classifier using liblinear and produces a model suitable for use withliblinear-predict(1).training_set_fileis the file containing the data used for training.model_fileis the file to which the model will be saved. Ifmodel_fileis not provided, it defaults totraining_set_file.model. To obtain good performances, sometimes one needs to scale the data. This can be done withsvm-scale(1).

**OPTIONS**

A summary of options is included below.-stypeSet 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)-ccostSet the parameter C (default:1)-eepsilonSet 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)-BbiasIfbias>= 0, then instance x becomes [x; bias]; ifbias< 0, then no bias term is added (default:-1)-wiweightWeight-adjusts the parameter C of classiby the valueweight-vnn-fold cross validation mode-CFind parameter C (only for -s 0 and 2)-qQuiet mode (no outputs).

**EXAMPLES**

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 Conduct cross validation many times by L2-loss SVM and find the parameter C which achieves the best cross validation accuracy: train -C datafile For parameter selection by -C, users can specify other solvers (currently -s 0 and -s 2 are supported) and different number of CV folds. Further, users can use the -c option to specify the smallest C value of the search range. This setting is useful when users want to rerun the parameter selection procedure from a specified C under a different setting, such as a stricter stopping tolerance -e 0.0001 in the above example. train -C -s 0 -v 3 -c 0.5 -e 0.0001 datafile 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) usingliblinear-predict(1): liblinear-predict -b 1 test_file data_file.model output_file

**SEE** **ALSO**

liblinear-predict(1),svm-predict(1),svm-train(1)

**AUTHORS**

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). March 08, 2011 LIBLINEAR-TRAIN(1)