In this post, I want to show how I use NLTK for preprocessing and tokenization, but then apply machine learning techniques (e.g. building a linear SVM using stochastic gradient descent) using Scikit-Learn.
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.
Main features of LIBLINEAR include
* Same data format as LIBSVM, our general-purpose SVM solver, and also similar usage
* Multi-class classification: 1) one-vs-the rest, 2) Crammer & Singer
* Cross validation for model selection
* Probability estimates (logistic regression only)
* Weights for unbalanced data
* MATLAB/Octave, Java interfaces
G. Forman, M. Scholz, und S. Rajaram. KDD '09: Proceedings of the 15th ACM SIGKDD international conference on Knowledge discovery and data mining, Seite 299--308. New York, NY, USA, ACM, (2009)
B. Lauser, und A. Hotho. Proc. of the 7th European Conference in Research and Advanced Technology for Digital Libraries, ECDL 2003, Volume 2769 von LNCS, Seite 140-151. Springer, (2003)