Learn R Programming

mpath (version 0.3-26)

cv.nclreg_fit: Internal function of cross-validation for nclreg

Description

Internal function to conduct k-fold cross-validation for nclreg, produces a plot, and returns cross-validated log-likelihood values for lambda

Usage

cv.nclreg_fit(x, y, weights, lambda=NULL, balance=TRUE, 
rfamily=c("clossR", "closs", "gloss", "qloss"), s=1.5, nfolds=10, foldid, 
type = c("loss", "error"), plot.it=TRUE, se=TRUE, n.cores=2, trace=FALSE, 
parallel=FALSE, ...)

Arguments

x

x matrix as in nclreg.

y

response y as in nclreg.

weights

Observation weights; defaults to 1 per observation

lambda

Optional user-supplied lambda sequence; default is NULL, and nclreg chooses its own sequence

balance

for rfamily="closs", "gloss", "qloss" only

rfamily

response variable distribution and nonconvex loss function

s

nonconvex loss tuning parameter for robust regression and classification.

nfolds

number of folds >=3, default is 10

foldid

an optional vector of values between 1 and nfold identifying what fold each observation is in. If supplied, nfold can be missing and will be ignored.

type

cross-validation criteria. For type="loss", loss function values and type="error" is misclassification error.

plot.it

a logical value, to plot the estimated log-likelihood values if TRUE.

se

a logical value, to plot with standard errors.

n.cores

The number of CPU cores to use. The cross-validation loop will attempt to send different CV folds off to different cores.

trace

a logical value, print progress of cross validation or not

parallel

a logical value, parallel computing or not

Other arguments that can be passed to nclreg.

Value

an object of class "cv.nclreg" is returned, which is a list with the ingredients of the cross-validation fit.

fit

a fitted nclreg object for the full data.

residmat

matrix of log-likelihood values with row values for lambda and column values for kth cross-validation

cv

The mean cross-validated log-likelihood values - a vector of length length(lambda).

cv.error

estimate of standard error of cv.

foldid

an optional vector of values between 1 and nfold identifying what fold each observation is in.

lambda

a vector of lambda values

lambda.which

index of lambda that gives minimum cv value.

lambda.optim

value of lambda that gives minimum cv value.

Details

The function runs nclreg nfolds+1 times; the first to compute the lambda sequence, and then to compute the fit with each of the folds omitted. The error or the log-likelihood value is accumulated, and the average value and standard deviation over the folds is computed. Note that cv.nclreg can be used to search for values for alpha: it is required to call cv.nclreg with a fixed vector foldid for different values of alpha.

References

Zhu Wang (2019) MM for Penalized Estimation, https://arxiv.org/abs/1912.11119

See Also

nclreg and plot, predict, and coef methods for "cv.nclreg" object.