c-lasso -- a Python package for constrained sparse and robust regression and classification
Léo Simpson, Patrick L. Combettes, Christian L. Müller
Code Available — Be the first to reproduce this paper.
ReproduceCode
- github.com/Leo-Simpson/c-lassoOfficialIn papernone★ 31
Abstract
We introduce c-lasso, a Python package that enables sparse and robust linear regression and classification with linear equality constraints. The underlying statistical forward model is assumed to be of the following form: \[ y = X + subject to C =0 \] Here, X R^n dis a given design matrix and the vector y R^n is a continuous or binary response vector. The matrix C is a general constraint matrix. The vector R^d contains the unknown coefficients and an unknown scale. Prominent use cases are (sparse) log-contrast regression with compositional data X, requiring the constraint 1_d^T = 0 (Aitchion and Bacon-Shone 1984) and the Generalized Lasso which is a special case of the described problem (see, e.g, (James, Paulson, and Rusmevichientong 2020), Example 3). The c-lasso package provides estimators for inferring unknown coefficients and scale (i.e., perspective M-estimators (Combettes and M\"uller 2020a)) of the form \[ _ R^d, R_0 f (X - y, ) + _1 subject to C = 0 \] for several convex loss functions f(,). This includes the constrained Lasso, the constrained scaled Lasso, and sparse Huber M-estimators with linear equality constraints.