专栏首页AI研习社Github 项目推荐 | 用 Python 实现的大规模线性回归、分类和排名库 —— lightning

Github 项目推荐 | 用 Python 实现的大规模线性回归、分类和排名库 —— lightning

Lightning 是大规模线性回归、分类、排名的 Python 库。

Highlights:

  • 遵循 scikit-learn API 约定(http://scikit-learn.org/)
  • 本地支持密集和稀疏数据表示
  • 在 Cython 中实现的计算要求较高的部分

Solvers supported:

  • 原始坐标下降
  • 双坐标下降 (SDCA,Prox-SDCA)
  • SGD,AdaGrad,SAG,SAGA,SVRG
  • FISTA

示例

该示例展示了如何在 News20 数据集中学习具有组套索惩罚的多类分类器。

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))

依赖

  • Python >= 2.7
  • Numpy >= 1.3
  • SciPy >= 0.7
  • scikit-learn >= 0.15
  • 从源代码构建还需要 Cython 和一个可用的 C / C ++ 编译器
  • 要运行测试,nose >= 0.10

安装

Lightning 稳定版本的预编译二进制文件在主要平台可用,需要用 pip 安装:

pip install sklearn-contrib-lightning

或者用 conda:

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

开发版本的 Lightning 可以从 git 库上安装。在这种情况下,假设你拥有 git 版本控制系统,一个可用的 C ++ 编译器,Cython 和 numpy 开发库,然后输入:

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

文档

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

Github

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

本文分享自微信公众号 - AI研习社(okweiwu)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-05-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python操作文本文件

    mwangblog
  • python类(一)

    mwangblog
  • 2018最吸金编程语言

    精讲java
  • Django中六个常用的自定义装饰器

    jhao104
  • centos 问题解决记录

    Echo_fy
  • 基于 Django 的手机管理系统

    希希里之海
  • 如果电脑技术最初是中国人发明的,那现在编程是不是就是中文的?

    精讲java
  • Pipenv一键搭建python虚拟环境

    zhaoolee
  • python函数

    mwangblog
  • 2018-06-30 TensorFlow实战:SoftMax手写体MNIST识别(Python完整源码)

    用户1733354

扫码关注云+社区

领取腾讯云代金券