Cross-validate an elastic net
elastic_net_cv.Rdglmnet's cv.glmnet() on the Rust core: on each fold, fits the whole
lambda path to the other folds (warm starts) and scores the family's
mean deviance on the held-out fold; folds run in parallel. The score per
lambda is the folds' mean weighted by fold weight, with its standard
error. Matches cv.glmnet() on the same folds.
Usage
elastic_net_cv(
formula,
data,
family = "poisson",
link = NULL,
alpha = 1,
lambda = NULL,
nlambda = 100,
lambda_min_ratio = 1e-04,
standardize = TRUE,
penalty_factor = NULL,
offset = NULL,
weights = NULL,
folds = 10,
seed = 1,
foldid = NULL,
theta = NULL,
power = NULL,
link_power = NULL
)Arguments
- formula
A model formula;
offset(...)terms are honoured.- data
A data frame.
- family
"gaussian","poisson","gamma","inverse_gaussian","binomial"(response a proportion,weightsthe trials),"negative_binomial"(needstheta) or"tweedie"(needspower).- link
"identity","log","logit","probit","cloglog","inverse","inverse_squared"or"power"(needslink_power);NULLfor the family's canonical link.- alpha
Mixing between ridge (0) and the lasso (1).
- lambda
Penalty strengths;
NULLfor a path ofnlambdavalues log-spaced from the smallestlambdathat zeroes every coefficient down tolambda_min_ratiotimes it.- nlambda, lambda_min_ratio
The default path.
- standardize
Penalize standardized coefficients.
- penalty_factor
Optional penalty factors: a vector with one per design column, or a named vector for some columns (the rest get 1); 0 leaves a column unpenalized.
- offset
Optional offset added to any
offset()terms.- weights
Optional prior weights.
- folds
Number of folds, used when
foldidisNULL.- seed
Seed of the fold assignment.
- foldid
Optional fold number per row.
- theta
Negative binomial
theta(variancemu + mu^2 / theta).- power
Tweedie power in
(1, 2).- link_power
Exponent of the power link.
Value
A list with lambda, mean, se, lambda_min (lowest mean)
and lambda_1se (the largest lambda within one standard error of
it), and fit, the elastic_net_model on all rows over lambda.