smoothedLasso
A Framework to Smooth L1 Penalized Regression Operators using Nesterov Smoothing
Description
We provide full functionality to smooth L1 penalized regression operators and to compute regression estimates thereof. For this, the objective function of a user-specified regression operator is first smoothed using Nesterov smoothing (see Y. Nesterov (2005) <doi:10.1007/s10107-004-0552-5>), resulting in a modified objective function with explicit gradients everywhere. The smoothed objective function and its gradient are minimized via BFGS, and the obtained minimizer is returned. Using Nesterov smoothing, the smoothed objective function can be made arbitrarily close to the original (unsmoothed) one. In particular, the Nesterov approach has the advantage that it comes with explicit accuracy bounds, both on the L1/L2 difference of the unsmoothed to the smoothed objective functions as well as on their respective minimizers (see G. Hahn, S.M. Lutz, N. Laha, C. Lange (2020) <doi:10.1101/2020.09.17.301788>). A progressive smoothing approach is provided which iteratively smoothes the objective function, resulting in more stable regression estimates. A function to perform cross validation for selection of the regularization parameter is provided.
Downloads
275
Last 30 days
15339th
690
Last 90 days
2.6K
Last year
Trend: +18% (30d vs prior 30d)
CRAN Check Status
Show all 14 flavors
| Flavor | Status |
|---|---|
| r-devel-linux-x86_64-debian-clang | NOTE |
| r-devel-linux-x86_64-debian-gcc | NOTE |
| r-devel-linux-x86_64-fedora-clang | OK |
| r-devel-linux-x86_64-fedora-gcc | OK |
| r-devel-macos-arm64 | OK |
| r-devel-windows-x86_64 | OK |
| r-oldrel-macos-arm64 | OK |
| r-oldrel-macos-x86_64 | OK |
| r-oldrel-windows-x86_64 | OK |
| r-patched-linux-x86_64 | OK |
| r-release-linux-x86_64 | OK |
| r-release-macos-arm64 | OK |
| r-release-macos-x86_64 | OK |
| r-release-windows-x86_64 | OK |
Check details (2 non-OK)
CRAN incoming feasibility
Maintainer: ‘Georg Hahn <ghahn@hsph.harvard.edu>’
No Authors@R field in DESCRIPTION.
Please add one, modifying
Authors@R: c(person(given = "Georg",
family = "Hahn",
role = c("aut", "cre"),
email = "ghahn@hsph.harvard.edu"),
person(given = c("Sharon", "M."),
family = "Lutz",
role = "ctb"),
person(given = "Nilanjana",
family = "Laha",
role = "ctb"),
person(given = "Christoph",
family = "Lange",
role = "ctb"))
as necessary.
CRAN incoming feasibility
Maintainer: ‘Georg Hahn <ghahn@hsph.harvard.edu>’
No Authors@R field in DESCRIPTION.
Please add one, modifying
Authors@R: c(person(given = "Georg",
family = "Hahn",
role = c("aut", "cre"),
email = "ghahn@hsph.harvard.edu"),
person(given = c("Sharon", "M."),
family = "Lutz",
role = "ctb"),
person(given = "Nilanjana",
family = "Laha",
role = "ctb"),
person(given = "Christoph",
family = "Lange",
role = "ctb"))
as necessary.
Check History
NOTE 12 OK · 2 NOTE · 0 WARNING · 0 ERROR · 0 FAILURE Mar 10, 2026
CRAN incoming feasibility
Maintainer: ‘Georg Hahn <ghahn@hsph.harvard.edu>’
No Authors@R field in DESCRIPTION.
Please add one, modifying
Authors@R: c(person(given = "Georg",
family = "Hahn",
role = c("aut", "cre"),
...[truncated]...
person(given = "Nilanjana",
family = "Laha",
role = "ctb"),
person(given = "Christoph",
family = "Lange",
role = "ctb"))
as necessary.
CRAN incoming feasibility
Maintainer: ‘Georg Hahn <ghahn@hsph.harvard.edu>’
No Authors@R field in DESCRIPTION.
Please add one, modifying
Authors@R: c(person(given = "Georg",
family = "Hahn",
role = c("aut", "cre"),
...[truncated]...
person(given = "Nilanjana",
family = "Laha",
role = "ctb"),
person(given = "Christoph",
family = "Lange",
role = "ctb"))
as necessary.