Introduction
LIBLINEAR is a linear classifier for data with millions of instances and features. It supports L2-regularized logistic regression (LR), L2-loss linear SVM, and L1-loss linear SVM.
The approach for L1-SVM and L2-SVM is a coordinate descent method:
C.-J. Hsieh, K.-W. Chang, C.-J. Lin, S. S. Keerthi, and S. Sundararajan. A dual coordinate descent method for large-scale linear SVM. ICML 2008.
Main features of LIBLINEAR include
1) Same data format as LIBSVM, our general-purpose SVM solver, and also similar usage
2) One-vs-the rest multi-class classification
3) Cross validation for model selection
4) Probability estimates (logistic regression only)
5) Weights for unbalanced data
6) MATLAB/Octave interface
When to use LIBLINEAR but not LIBSVM
There are some large data for which with/without nonlinear mappings gives similar performances. Without using kernels, one can train a much larger set via a linear classifier. Document classification is one such application. In the following example (20,242 instances and 47,236 features; available on LIBSVM data sets), the cross-validation time is significantly reduced by using LIBLINEAR:
% time libsvm-2.85/svm-train -c 4 -t 0 -e 0.1 -m 800 -v 5 rcv1_train.binary
Cross Validation Accuracy = 96.8136%
345.569s
% time liblinear-1.21/train -c 4 -e 0.1 -v 5 rcv1_train.binary
Cross Validation Accuracy = 97.0161%
2.944s
Download LIBLINEAR
Here you can get it! http://0rz.tw/9748Y
The package includes the source code in C/C++. A README file with detailed explanation is provided. For MS Windows users, there is a subdirectory in the zip file containing binary executable files.
2008年5月27日
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言