cvSGL {SGL} | R Documentation |
Fits and cross-validates a regularized generalized linear model via penalized maximum likelihood. The model is fit for a path of values of the penalty parameter, and a parameter value is chosen by cross-validation. Fits linear, logistic and Cox models.
cvSGL(data, index, type = "linear", maxit = 1000, thresh = 0.001, min.frac = 0.05, nlam = 20, gamma = 0.8, nfold = 10, standardize = TRUE, verbose = FALSE, step = 1, reset = 10, alpha = 0.95, lambdas = NULL)
data |
For |
index |
A p-vector indicating group membership of each covariate |
type |
model type: one of ("linear","logit", "cox") |
maxit |
Maximum number of iterations to convergence |
thresh |
Convergence threshold for change in beta |
min.frac |
The minimum value of the penalty parameter, as a fraction of the maximum value |
nlam |
Number of lambda to use in the regularization path |
gamma |
Fitting parameter used for tuning backtracking (between 0 and 1) |
nfold |
Number of folds of the cross-validation loop |
standardize |
Logical flag for variable standardization prior to fitting the model. |
verbose |
Logical flag for whether or not step number will be output |
step |
Fitting parameter used for inital backtracking step size (between 0 and 1) |
reset |
Fitting parameter used for taking advantage of local strong convexity in nesterov momentum (number of iterations before momentum term is reset) |
alpha |
The mixing parameter. |
lambdas |
A user inputted sequence of lambda values for fitting. We recommend leaving this NULL and letting SGL self-select values |
The function runs SGL
nfold
+1 times; the initial run is to find the lambda
sequence, subsequent runs are used to compute the cross-validated error rate and its standard deviation.
An object with S3 class "cv.SGL"
lldiff |
An |
llSD |
An |
lambdas |
The actual list of |
type |
Response type (linear/logic/cox) |
fit |
A model fit object created by a call to |
Noah Simon, Jerry Friedman, Trevor Hastie, and Rob Tibshirani
Maintainer: Noah Simon nrsimon@uw.edu
Simon, N., Friedman, J., Hastie, T., and Tibshirani, R. (2011)
A Sparse-Group Lasso,
http://faculty.washington.edu/nrsimon/SGLpaper.pdf
SGL
set.seed(1) n = 50; p = 100; size.groups = 10 index <- ceiling(1:p / size.groups) X = matrix(rnorm(n * p), ncol = p, nrow = n) beta = (-2:2) y = X[,1:5] %*% beta + 0.1*rnorm(n) data = list(x = X, y = y) cvFit = cvSGL(data, index, type = "linear")