# objFunctionSmoothGradient: Auxiliary function which computes the gradient of the... In smoothedLasso: A Framework to Smooth L1 Penalized Regression Operators using Nesterov Smoothing

## Description

Auxiliary function which computes the gradient of the smoothed L1 penalized regression operator.

## Usage

 `1` ```objFunctionSmoothGradient(betavector, w, du, dv, dw, mu, entropy = TRUE) ```

## Arguments

 `betavector` The vector of regression coefficients. `w` The function encoding the dependence structure among the regression coefficients. `du` The derivative (gradient) of the objective of the regression operator. `dv` The derivative (gradient) of the penalty of the regression operator. `dw` The derivative (Jacobian matrix) of the function encoding the dependence structure among the regression coefficients. `mu` The Nesterov smoothing parameter. `entropy` A boolean switch to select the entropy prox function (default) or the squared error prox function.

## Value

The value of the gradient for the input betavector.

## References

Hahn, G., Lutz, S., Laha, N., and Lange, C. (2020). A framework to efficiently smooth L1 penalties for linear regression. bioRxiv:2020.09.17.301788.

## Examples

 ```1 2 3 4 5 6 7 8 9``` ```library(smoothedLasso) n <- 100 p <- 500 betavector <- runif(p) X <- matrix(runif(n*p),nrow=n,ncol=p) y <- X %*% betavector lambda <- 1 temp <- standardLasso(X,y,lambda) print(objFunctionSmoothGradient(betavector,temp\$w,temp\$du,temp\$dv,temp\$dw,mu=0.1)) ```

smoothedLasso documentation built on March 21, 2021, 9:07 a.m.