beta.update.net {LassoNet}R Documentation

Updates β\beta coefficients.

Description

This function updates β\beta for given penalty parameters.

Usage

beta.update.net(x,y,beta,lambda1,lambda2,M1,n.iter,iscpp,tol)

Arguments

x

input data matrix of size n×pn \times p; n - number of observations; p - number of covariates

y

response vector or size n×1n \times 1

beta

initial value for β\beta; default - zero vector of size n×1n \times 1

lambda1

lasso penalty parameter

lambda2

network penalty parameter

M1

penalty matrix

n.iter

maximum number of iterations for β\beta step; default - 1e5

iscpp

binary choice for using cpp function in coordinate updates; 1 - use C++ (default), 0 - use R

tol

convergence tolerance level; default - 1e-6

Details

Updates the coefficient vector β\beta given the data and penalty parameters λ\lambda1 and λ\lambda2. Convergence criterion is defined as i=1pβi,jβi,j1\sum_{i=1}^p |\beta_{i,j} - \beta_{i,j-1}| \leq to.

Value

beta

updated β\beta vector

convergence

binary variable; 1 - yes

steps

number of steps until convergence

Author(s)

Maintainer: Jonas Striaukas <jonas.striaukas@gmail.com>

References

Weber, M., Striaukas, J., Schumacher, M., Binder, H. "Network-Constrained Covariate Coefficient and Connection Sign Estimation" (2018) <doi:10.2139/ssrn.3211163>

Examples

p<-200
n<-100
beta.0=array(1,c(p,1))
x<-matrix(rnorm(n*p),n,p)
y<-rnorm(n,mean=0,sd=1)
lambda1<-1
lambda2<-1
M1<-diag(p)
updates<-beta.update.net(x, y, beta.0, lambda1, lambda2, M1)

[Package LassoNet version 0.8.3 Index]