Skip to main content

Scikit-learn compatible implementation of nonconvex sparse estimators for single- and multi-task linear regressions (e.g. SCAD, MCP, l1-group-SCAD, etc).

Project description

ncvx-sparse

ncvx-sparse is a Python library for learning high-dimensional linear regresion models (single- and -multi-task) with nonconvex sparsity (e.g. SCAD, MCP, l1-group SCAD). Solvers are written in Cython and implementation follows the Scikit-learn API.

Why imposing sparsity with nonconvex penalties (e.g. LASSO) ? Because…

Currently, the ncvx-sparse solves the following problems:

  1. Single-task linear regression,

\arg \min_{\beta \in \mathbb{R}^p} \frac{1}{2n} \sum_i (y_i - x_i^{\top} \beta)^2 + \lambda \rho P(\beta) + \frac{1-\rho}{2} ||\beta||_2^2

where P stands for:

  • SCAD (SCADnet estimator), with parameter $gamma > 2$.

  1. Multi-task linear regression,

\arg \min_{\beta = (\beta_1 \dots \beta_k) \in \mathbb{R}^{K \times p}} \frac{1}{2} \sum_j^K \sum_i^n (y_{ik} - x_{ik}^{\top} \beta_j)^2

where P stands for:

  • SCAD-l1 i.e. SCAD on the l1-norm of p-th feature vector accross the K tasks,

  • SCAD-l2, same as SCAD-l1 but with respect to the l2-norm (not squared).

Install the released version

Create a Python=3.6 environment (e.g. Anaconda), and install ncvx-sparse from pip. with the following command line in your Anaconda prompt:

pip install -U ncvx-sparse

Example

References

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ncvx-sparse-0.0.1.dev3.tar.gz (195.4 kB view details)

Uploaded Source

Built Distribution

ncvx_sparse-0.0.1.dev3-cp39-cp39-win_amd64.whl (113.0 kB view details)

Uploaded CPython 3.9 Windows x86-64

File details

Details for the file ncvx-sparse-0.0.1.dev3.tar.gz.

File metadata

  • Download URL: ncvx-sparse-0.0.1.dev3.tar.gz
  • Upload date:
  • Size: 195.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.6.13

File hashes

Hashes for ncvx-sparse-0.0.1.dev3.tar.gz
Algorithm Hash digest
SHA256 956588a31b18e2225cc22ebfccf1a9519ed0edf0f8142d32dfa9c32f261eacc1
MD5 341995239795148244d38a4435bc2647
BLAKE2b-256 41331d2dff9ecd2e4c357200e47cc1df533874bcdc8fdf8f358bc9867fc78dfe

See more details on using hashes here.

File details

Details for the file ncvx_sparse-0.0.1.dev3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: ncvx_sparse-0.0.1.dev3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 113.0 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.6.13

File hashes

Hashes for ncvx_sparse-0.0.1.dev3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 44a3dd0c55b4c05a9c257d206137c7b9c38b5c1c2db09ebe414c70da09b0152c
MD5 a3660f19a302e94e48e8a2ce33d462dc
BLAKE2b-256 d403187b0a9563634c27cfd5147d1bff51b66d23deae2e92bd8bea434497d914

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page