glmnet.fit {glmnet} | R Documentation |
Fit a GLM with elastic net regularization for a single value of lambda
Description
Fit a generalized linear model via penalized maximum likelihood for a single value of lambda. Can deal with any GLM family.
Usage
glmnet.fit(
x,
y,
weights,
lambda,
alpha = 1,
offset = rep(0, nobs),
family = gaussian(),
intercept = TRUE,
thresh = 1e-10,
maxit = 1e+05,
penalty.factor = rep(1, nvars),
exclude = c(),
lower.limits = -Inf,
upper.limits = Inf,
warm = NULL,
from.glmnet.path = FALSE,
save.fit = FALSE,
trace.it = 0
)
Arguments
x |
Input matrix, of dimension |
y |
Quantitative response variable. |
weights |
Observation weights. |
lambda |
A single value for the |
alpha |
The elasticnet mixing parameter, with
|
offset |
A vector of length |
family |
A description of the error distribution and link function to be
used in the model. This is the result of a call to a family function. Default
is |
intercept |
Should intercept be fitted (default=TRUE) or set to zero (FALSE)? |
thresh |
Convergence threshold for coordinate descent. Each inner
coordinate-descent loop continues until the maximum change in the objective
after any coefficient update is less than thresh times the null deviance.
Default value is |
maxit |
Maximum number of passes over the data; default is |
penalty.factor |
Separate penalty factors can be applied to each
coefficient. This is a number that multiplies |
exclude |
Indices of variables to be excluded from the model. Default is none. Equivalent to an infinite penalty factor. |
lower.limits |
Vector of lower limits for each coefficient; default
|
upper.limits |
Vector of upper limits for each coefficient; default
|
warm |
Either a |
from.glmnet.path |
Was |
save.fit |
Return the warm start object? Default is FALSE. |
trace.it |
Controls how much information is printed to screen. If
|
Details
WARNING: Users should not call glmnet.fit
directly. Higher-level functions
in this package call glmnet.fit
as a subroutine. If a warm start object
is provided, some of the other arguments in the function may be overriden.
glmnet.fit
solves the elastic net problem for a single, user-specified
value of lambda. glmnet.fit
works for any GLM family. It solves the
problem using iteratively reweighted least squares (IRLS). For each IRLS
iteration, glmnet.fit
makes a quadratic (Newton) approximation of the
log-likelihood, then calls elnet.fit
to minimize the resulting
approximation.
In terms of standardization: glmnet.fit
does not standardize x
and weights
. penalty.factor
is standardized so that they sum up
to nvars
.
Value
An object with class "glmnetfit" and "glmnet". The list returned contains more keys than that of a "glmnet" object.
a0 |
Intercept value. |
beta |
A |
df |
The number of nonzero coefficients. |
dim |
Dimension of coefficient matrix. |
lambda |
Lambda value used. |
dev.ratio |
The fraction of (null) deviance explained. The deviance calculations incorporate weights if present in the model. The deviance is defined to be 2*(loglike_sat - loglike), where loglike_sat is the log-likelihood for the saturated model (a model with a free parameter per observation). Hence dev.ratio=1-dev/nulldev. |
nulldev |
Null deviance (per observation). This is defined to be 2*(loglike_sat -loglike(Null)). The null model refers to the intercept model. |
npasses |
Total passes over the data. |
jerr |
Error flag, for warnings and errors (largely for internal debugging). |
offset |
A logical variable indicating whether an offset was included in the model. |
call |
The call that produced this object. |
nobs |
Number of observations. |
warm_fit |
If |
family |
Family used for the model. |
converged |
A logical variable: was the algorithm judged to have converged? |
boundary |
A logical variable: is the fitted value on the boundary of the attainable values? |
obj_function |
Objective function value at the solution. |