New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

sklearn-contrib-lightning

Package Overview
Dependencies
Maintainers
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sklearn-contrib-lightning

Large-scale sparse linear classification, regression and ranking in Python

  • 0.6.2.post0
  • PyPI
  • Socket score

Maintainers
3

.. -- mode: rst --

.. image:: https://github.com/scikit-learn-contrib/lightning/actions/workflows/main.yml/badge.svg?branch=master :target: https://github.com/scikit-learn-contrib/lightning/actions/workflows/main.yml

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.200504.svg :target: https://doi.org/10.5281/zenodo.200504

lightning

lightning is a library for large-scale linear classification, regression and ranking in Python.

Highlights:

  • follows the scikit-learn <https://scikit-learn.org>_ API conventions
  • supports natively both dense and sparse data representations
  • computationally demanding parts implemented in Cython <https://cython.org>_

Solvers supported:

  • primal coordinate descent
  • dual coordinate descent (SDCA, Prox-SDCA)
  • SGD, AdaGrad, SAG, SAGA, SVRG
  • FISTA

Example

Example that shows how to learn a multiclass classifier with group lasso penalty on the News20 dataset (c.f., Blondel et al. 2013 <http://www.mblondel.org/publications/mblondel-mlj2013.pdf>_):

.. code-block:: python

from sklearn.datasets import fetch_20newsgroups_vectorized
from lightning.classification import CDClassifier

# Load News20 dataset from scikit-learn.
bunch = fetch_20newsgroups_vectorized(subset="all")
X = bunch.data
y = bunch.target

# Set classifier options.
clf = CDClassifier(penalty="l1/l2",
                   loss="squared_hinge",
                   multiclass=True,
                   max_iter=20,
                   alpha=1e-4,
                   C=1.0 / X.shape[0],
                   tol=1e-3)

# Train the model.
clf.fit(X, y)

# Accuracy
print(clf.score(X, y))

# Percentage of selected features
print(clf.n_nonzero(percentage=True))

Dependencies

lightning requires Python >= 3.7, setuptools, Joblib, Numpy >= 1.12, SciPy >= 0.19 and scikit-learn >= 0.19. Building from source also requires Cython and a working C/C++ compiler. To run the tests you will also need pytest.

Installation

Precompiled binaries for the stable version of lightning are available for the main platforms and can be installed using pip:

.. code-block:: sh

pip install sklearn-contrib-lightning

or conda:

.. code-block:: sh

conda install -c conda-forge sklearn-contrib-lightning

The development version of lightning can be installed from its git repository. In this case it is assumed that you have the git version control system, a working C++ compiler, Cython and the numpy development libraries. In order to install the development version, type:

.. code-block:: sh

git clone https://github.com/scikit-learn-contrib/lightning.git cd lightning python setup.py install

Documentation

http://contrib.scikit-learn.org/lightning/

On GitHub

https://github.com/scikit-learn-contrib/lightning

Citing

If you use this software, please cite it. Here is a BibTex snippet that you can use:

.. code-block::

@misc{lightning_2016, author = {Blondel, Mathieu and Pedregosa, Fabian}, title = {{Lightning: large-scale linear classification, regression and ranking in Python}}, year = 2016, doi = {10.5281/zenodo.200504}, url = {https://doi.org/10.5281/zenodo.200504} }

Other citing formats are available in its Zenodo entry <https://doi.org/10.5281/zenodo.200504>_.

Authors

  • Mathieu Blondel
  • Manoj Kumar
  • Arnaud Rachez
  • Fabian Pedregosa
  • Nikita Titov

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc