SuiteLasso: a MATLAB suite for regression problems with generalized Lasso regularizers

Xudong Li, Defeng Sun, Kim-Chuan Toh

The software was first released on January 2019. It was last updated in January 2019. The software is designed to solve linear least squares problems with various generalized lasso regularizers. Currently, it can handle the following regularizers:

  1. Classic Lasso
    $$ \min\Big\{ h(Ax) + \lambda\|x\|_1 \mid x\in \mathbb{R}^n \Big\}$$
    Solver: ClassicLasso_SSNAL.m
  2. Fused Lasso
    $$\min\Big\{ h(Ax) + \lambda\|x\|_1 + \beta\sum_{k=1}^n|x_{k+1}-x_k| \mid x\in \mathbb{R}^n\Big\}$$
    where \(\lambda\) and \(\beta\) are regularization parameters and \(h(x) = \frac{1}{2}\|x\|^2\).
    Solver: FusedLasso_SSNAL.m
  3. Elastic net
    $$\min\Big\{ h(Ax) + \lambda \|x\|_1 + \frac{\beta}{2}\|x\|^2 \mid \mathbb{R}^n \Big\}$$
    where \(\lambda\) and \(\beta\) are regularization parameters.
    Solver: Under construction.
  4. Group Lasso (non-overlapping):
    $$\min\Big\{ h(Ax) + \lambda_1 \|x\|_1 + \lambda_2\sum_{\ell=1}^gw_\ell \|x_{G_\ell}\| \mid x\in \mathbb{R}^n\Big\}$$
    where \(\lambda_1\) and \(\lambda_2\) are regularization parameters and \(h(x) = \frac{1}{2}\|x\|^2\);
    \(G_\ell\), \(\ell=1,\ldots,g\) form a disjoint partition of \(\{1,\ldots,n\}\).
    Solver: Under construction.

Important note: this is a research software. It is not intended nor designed to be a general purpose software at the moment.

  1. Xudong Li, Defeng Sun, and Kim-Chuan Toh, A highly efficient semismooth Netwon augmented Lagrangian method for solving Lasso problems, _SIAM Journal on Optimization, 28 (2018), 433–458.
  2. Xudong Li, Defeng Sun, and Kim-Chuan Toh, On efficiently solving the subproblems of a level-set method for fused lasso problems,  SIAM J. Optimization, 28 (2018), 1842–1866.
  3. Y.J. Zhang, N. Zhang, D.F. Sun and K.C. Toh, An efficient Hessian based algorithm for solving large-scale sparse group Lasso problems, Mathematical Programming, 179 (2020), pp. 223–263.

  • Copyright: This version of SuiteLasso is distributed under the GNU General Public License 2.0. For commercial applications that may be incompatible with this license, please contact the authors to discuss alternatives.


You can download the package from Github: SuiteLasso-0

Please read.Welcome to SuiteLasso-0!

  • Firstly, unpack the software.
  • Run Matlab in the directory SuiteLasso-0.
  • After that, to see whether you have installed SuiteLasso-0 correctly, type:
    >> startup
    >> test_ClassicLasso_random
  • By now, SuiteLasso is ready for you to use.