Skip to content

duhaime/lightning

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lightning

Large-scale sparse linear classification and regression in Python/Cython.

lightning follows the scikit-learn API conventions.

Dependencies

The required dependencies to build the software are Python >= 2.6, setuptools, Numpy >= 1.3, SciPy >= 0.7, scikit-learn (git version), Cython >= 0.15.1 and a working C/C++ compiler.

To run the tests you will also need nose >= 0.10.

Install

First run:

make cython

Then to install in your home directory, use:

python setup.py install --home

To install for all users on Unix/Linux:

python setup.py build
sudo python setup.py install

Documentation

Classification:

  • CDClassifier Learning linear classifiers by coordinate descent in the primal. Supports different losses and penalties.
  • SGDClassifier Learning linear classifiers by stochastic (sub)gradient descent. Supports different losses and penalties.
  • LinearSVC Learning linear SVM by coordinate descent in the dual. Supports optimizing for accuracy or AUC.
  • KernelSVC Learning kernel SVM by Newton's method in the primal. Nice if kernel matrix fits is memory.

Regression:

  • CDRegressor Learning linear regressors by coordinate descent in the primal. Supports different losses and penalties.
  • SGDRegressor Learning linear regressors by stochastic (sub)gradient descent. Supports different losses and penalties.

Citation

If you used lightning in your research, please consider citing the following paper:

Block Coordinate Descent Algorithms for Large-scale Sparse Multiclass Classification. [BibTeX]
Mathieu Blondel, Kazuhiro Seki, and Kuniaki Uehara.
Machine Learning, May 2013.

For more information, see http://www.mblondel.org/code/mlj2013/

About

Large-scale sparse linear classification and regression in Python/Cython.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published