knitr::opts_chunk$set( collapse = TRUE, comment = "#>", fig.path = "README-" )
hal9001
The Scalable Highly Adaptive Lasso
Authors: Jeremy Coyle, Nima Hejazi, Rachael Phillips, Lars van der Laan, and Mark van der Laan
hal9001
?hal9001
is an R package providing an implementation of the scalable highly
adaptive lasso (HAL), a nonparametric regression estimator that applies
L1-regularized lasso regression to a design matrix composed of indicator
functions corresponding to the support of the functional over a set of
covariates and interactions thereof. HAL regression allows for arbitrarily
complex functional forms to be estimated at fast (near-parametric) convergence
rates under only global smoothness assumptions [@vdl2017generally;
@bibaut2019fast]. For detailed theoretical discussions of the highly adaptive
lasso estimator, consider consulting, for example, @vdl2017generally,
@vdl2017finite, and @vdl2017uniform. For a computational demonstration of the
versatility of HAL regression, see @benkeser2016hal. Recent theoretical works
have demonstrated success in building efficient estimators of complex
parameters when particular variations of HAL regression are used to estimate
nuisance parameters [e.g., @vdl2019efficient; @ertefaie2020nonparametric].
For standard use, we recommend installing the package from CRAN via
install.packages("hal9001")
To contribute, install the development version of hal9001
from GitHub via
remotes
:
remotes::install_github("tlverse/hal9001")
If you encounter any bugs or have any specific feature requests, please file an issue.
Consider the following minimal example in using hal9001
to generate
predictions via Highly Adaptive Lasso regression:
# load the package and set a seed library(hal9001) set.seed(385971) # simulate data n <- 100 p <- 3 x <- matrix(rnorm(n * p), n, p) y <- x[, 1] * sin(x[, 2]) + rnorm(n, mean = 0, sd = 0.2) # fit the HAL regression hal_fit <- fit_hal(X = x, Y = y, yolo = TRUE) hal_fit$times # training sample prediction preds <- predict(hal_fit, new_data = x) mean(hal_mse <- (preds - y)^2)
Contributions are very welcome. Interested contributors should consult our contribution guidelines prior to submitting a pull request.
After using the hal9001
R package, please cite both of the following:
@software{coyle2022hal9001-rpkg, author = {Coyle, Jeremy R and Hejazi, Nima S and Phillips, Rachael V and {van der Laan}, Lars and {van der Laan}, Mark J}, title = {{hal9001}: The scalable highly adaptive lasso}, year = {2022}, url = {https://doi.org/10.5281/zenodo.3558313}, doi = {10.5281/zenodo.3558313} note = {{R} package version 0.4.2} } @article{hejazi2020hal9001-joss, author = {Hejazi, Nima S and Coyle, Jeremy R and {van der Laan}, Mark J}, title = {{hal9001}: Scalable highly adaptive lasso regression in {R}}, year = {2020}, url = {https://doi.org/10.21105/joss.02526}, doi = {10.21105/joss.02526}, journal = {Journal of Open Source Software}, publisher = {The Open Journal} }
© 2017-2022 Jeremy R. Coyle & Nima S. Hejazi
The contents of this repository are distributed under the GPL-3 license. See
file LICENSE
for details.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.