CVP_ADMM: Parallel CV (uses CVP_ADMMc)

Description Usage Arguments Value

View source: R/parallel.R

Description

Parallel implementation of cross validation.

Usage

1
2
3
4
5
6
7
CVP_ADMM(X, Y = NULL, A = diag(ncol(X)), B = diag(ncol(X)),
  C = diag(ncol(X)), lam = 10^seq(-2, 2, 0.2), alpha = 1, tau = 10,
  rho = 2, mu = 10, tau.rho = 2, iter.rho = 10, crit = c("ADMM",
  "loglik"), tol.abs = 1e-04, tol.rel = 1e-04, maxit = 1000,
  adjmaxit = NULL, K = 5, crit.cv = c("MSE", "loglik", "penloglik", "AIC",
  "BIC"), start = c("warm", "cold"), cores = 1, trace = c("progress",
  "print", "none"))

Arguments

X

nxp data matrix. Each row corresponds to a single observation and each column contains n observations of a single feature/variable.

Y

option to provide nxr response matrix. Each row corresponds to a single response and each column contains n response of a single feature/response.

A

option to provide user-specified matrix for penalty term. This matrix must have p columns. Defaults to identity matrix.

B

option to provide user-specified matrix for penalty term. This matrix must have p rows. Defaults to identity matrix.

C

option to provide user-specified matrix for penalty term. This matrix must have nrow(A) rows and ncol(B) columns. Defaults to identity matrix.

lam

positive tuning parameters for elastic net penalty. If a vector of parameters is provided, they should be in increasing order. Defaults to grid of values 10^seq(-2, 2, 0.2).

alpha

elastic net mixing parameter contained in [0, 1]. 0 = ridge, 1 = lasso. Alpha must be a single value (cross validation across alpha not supported).

tau

optional constant used to ensure positive definiteness in Q matrix in algorithm

rho

initial step size for ADMM algorithm.

mu

factor for primal and residual norms in the ADMM algorithm. This will be used to adjust the step size rho after each iteration.

tau.rho

factor in which to increase/decrease step size rho

iter.rho

step size rho will be updated every iter.rho steps

crit

criterion for convergence (ADMM or loglik). If crit = loglik then iterations will stop when the relative change in log-likelihood is less than tol.abs. Default is ADMM and follows the procedure outlined in Boyd, et al.

tol.abs

absolute convergence tolerance. Defaults to 1e-4.

tol.rel

relative convergence tolerance. Defaults to 1e-4.

maxit

maximum number of iterations. Defaults to 1e3.

adjmaxit

adjusted maximum number of iterations. During cross validation this option allows the user to adjust the maximum number of iterations after the first lam tuning parameter has converged. This option is intended to be paired with warm starts and allows for 'one-step' estimators. Defaults to NULL.

K

specify the number of folds for cross validation.

crit.cv

cross validation criterion (MSE, loglik, penloglik, AIC, or BIC). Defaults to MSE.

start

specify warm or cold start for cross validation. Default is warm.

cores

option to run CV in parallel. Defaults to cores = 1.

trace

option to display progress of CV. Choose one of progress to print a progress bar, print to print completed tuning parameters, or none.

Value

returns list of returns which includes:

lam

optimal tuning parameter.

min.error

minimum average cross validation error (cv.crit) for optimal parameters.

avg.error

average cross validation error (cv.crit) across all folds.

cv.error

cross validation errors (cv.crit).


SCPME documentation built on May 2, 2019, 3:42 a.m.