objFunctionSmoothGradient {smoothedLasso}R Documentation

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

Description

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

Usage

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

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))


[Package smoothedLasso version 1.6 Index]