skscope: Fast Sparsity-Constrained Optimization in Python

Zezhi Wang, Jin Zhu, Peng Chen, Huiyang Peng, Xiaoke Zhang +3 more
3/27/2024
stat.MLcs.LGstat.CO

Official code: abess-team/skscope (314 stars, MIT, JAX, last commit 2024-10-26). 1 more implementation below.

Abstract

Applying iterative solvers on sparsity-constrained optimization (SCO) requires tedious mathematical deduction and careful programming/debugging that hinders these solvers' broad impact. In the paper, the library skscope is introduced to overcome such an obstacle. With skscope, users can solve the SCO by just programming the objective function. The convenience of skscope is demonstrated through two examples in the paper, where sparse linear regression and trend filtering are addressed with just four lines of code. More importantly, skscope's efficient implementation allows state-of-the-art solvers to quickly attain the sparse solution regardless of the high dimensionality of parameter space. Numerical experiments reveal the available solvers in skscope can achieve up to 80x speedup on the competing relaxation solutions obtained via the benchmarked convex solver. skscope is published on the Python Package Index (PyPI) and Conda, and its source code is available at: https://github.com/abess-team/skscope.

View on arXivView PDF

Code Implementations(2)

abess-team/skscopeOfficial100%
JAXMIT

skscope: Sparse-Constrained OPtimization via itErative-solvers

31416C, C++Dec 7, 20221 years agoMIT
auto-differentiationjaxnon-convex-optimizationnonlinear-optimizationpython+2 more

Reproducible materials for "[JMLR] skscope: Fast Sparsity-Constrained Optimization in Python"

10C, C++Feb 4, 20251 years ago
pythonsparsity-optimization

Similar Papers

Cite this paper

@article{wang2024skscope,
  title  = {skscope: Fast Sparsity-Constrained Optimization in Python},
  author = {Zezhi Wang and Jin Zhu and Peng Chen and Huiyang Peng and Xiaoke Zhang and Anran Wang and Junxian Zhu and Xueqin Wang},
  year   = {2024},
  eprint = {2403.18540},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2403.18540v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2403.18540.svg)](https://codeofpaper.com/paper/2403.18540)

Discussion