cglasso: Fits regularization paths for group-lasso penalized learning...

Description Usage Arguments Value

Description

Fits regularization paths for linear constraints group-lasso penalized learning problems at a sequence of regularization parameters lambda.

Usage

1
2
3
4
5
6
cglasso(y, Z, Zc = NULL, k, W = rep(1, times = p), intercept = TRUE,
  A = kronecker(matrix(1, ncol = p), diag(k)), b = rep(0, times = k),
  u = 1, mu_ratio = 1.01, lam = NULL, nlam = 100,
  lambda.factor = ifelse(n < p1, 0.05, 0.001), dfmax = p,
  pfmax = min(dfmax * 1.5, p), tol = 0, outer_maxiter = 3e+08,
  outer_eps = 1e-08, inner_maxiter = 1e+06, inner_eps = 1e-08)

Arguments

y

a vector of response variable with length n.

Z

a matrix, of dimension n*p1, for predictors to be imposed with group lasso penalty.

Zc

a design matrix for those group-lasso-penalty free predictors. Can be missing. Default value is NULL.

k

k is the size for each group in Z. All groups are with the same size. Number of groups is p = p1 / k .

W

a vector in length of p (the total number of groups), matrix with dimension p1*p1 or character specifying function used to caculate weight matrix for each group.

  • If vector, works as penalty factor. Separate penalty weights can be applied to each group of beta'ss to allow differential shrinkage. Can be 0 for some groups, which implies no shrinkage, and results in that group always being included in the model.

  • If matrix, a block diagonal matrix. Diagonal elements are inverted weights matrics for each group.

  • if character, user should provide the function.

Default value is rep(1, times = p).

intercept

whether to include intercept. Default is TRUE.

A, b

linear equality constraints Aβ_p1 = b, where b is a vector with length k, and A is a k*p1 matrix. Default values, b is a vector of 0's and A = kronecker(matrix(1, ncol = p), diag(k)).

u

u is the inital value for penalty parameter of augmented Lanrange method adopted in outer loop - default value is 1.

mu_ratio

mu_ratio is the increasing ratio for u - default value is 1.01. Inital values for scaled Lagrange multipliers are set as 0's. If mu_ratio < 1, there is no linear constraints included. Group lasso coefficients are estimated.

lam

a user supplied lambda sequence. Typically, by leaving this option unspecified users can have the program compute its own lam sequence based on nlam and lambda.factor If lam is provided but a scaler, lam sequence is also created starting from lam. Supplying a value of lambda overrides this. It is better to supply a decreasing sequence of lambda values, if not, the program will sort user-defined lambda sequence in decreasing order automatically.

nlam

the length of lam sequence - default is 100.

lambda.factor

the factor for getting the minimal lambda in lam sequence, where min(lam) = lambda.factor * max(lam). max(lam) is the smallest value of lam for which all penalized group are zero's. The default depends on the relationship between n and p1 If n >= p1 the default is 0.001, close to zero. If n < p1, the default is 0.05. A very small value of lambda.factor will lead to a saturated fit. It takes no effect if there is user-defined lambda sequence.

dfmax

limit the maximum number of groups in the model. Useful for very large p, if a partial path is desired - default is p.

pfmax

limit the maximum number of groups ever to be nonzero. For example once a group enters the model along the path, no matter how many times it exits or re-enters model through the path, it will be counted only once. Default is min(dfmax*1.5, p).

tol

tolerance for vectors beta'ss to be considered as none zero's. For example, coefficient β_j for group j, if max(abs(β_j)) < tol, set β_j as 0's. Default value is 0.

outer_maxiter, outer_eps

outer_maxiter is the maximun munber of loops allowed for Augmented Lanrange method; and outer_eps is the convergence termination tolerance.

inner_maxiter, inner_eps

inner_maxiter is the maximun munber of loops allowed for blockwise-GMD; and inner_eps is the convergence termination tolerance.

Value

A list

lam

the actual sequence of lambda values used

df

the number of nonzero groups in estimated coefficients for Z at each value of lambda

path

a matrix of coefficients


Zhe-Research/compReg documentation built on May 28, 2019, 8:38 a.m.