tune.rcc: Estimate the parameters of regularization for Regularized CCA

View source: R/tune.rcc.R

tune.rccR Documentation

Estimate the parameters of regularization for Regularized CCA

Description

Computes leave-one-out or M-fold cross-validation scores on a two-dimensional grid to determine optimal values for the parameters of regularization in rcc.

Usage

tune.rcc(
  X,
  Y,
  grid1 = seq(0.001, 1, length = 5),
  grid2 = seq(0.001, 1, length = 5),
  validation = c("loo", "Mfold"),
  folds = 10,
  BPPARAM = SerialParam(),
  seed = NULL
)

Arguments

X

numeric matrix or data frame (n \times p), the observations on the X variables. NAs are allowed.

Y

numeric matrix or data frame (n \times q), the observations on the Y variables. NAs are allowed.

grid1, grid2

vector numeric defining the values of lambda1 and lambda2 at which cross-validation score should be computed. Defaults to grid1=grid2=seq(0.001, 1, length=5).

validation

character string. What kind of (internal) cross-validation method to use, (partially) matching one of "loo" (leave-one-out) or "Mfolds" (M-folds). See Details.

folds

positive integer. Number of folds to use if validation="Mfold". Defaults to folds=10.

BPPARAM

a BiocParallel parameter object; see BiocParallel::bpparam for details. Default is MulticoreParam() for parallel processing.

seed

set a number here if you want the function to give reproducible outputs. Not recommended during exploratory analysis. Note if RNGseed is set in 'BPPARAM', this will be overwritten by 'seed'.

Details

If validation="Mfolds", M-fold cross-validation is performed by calling Mfold. When folds is given, the elements of folds should be integer vectors specifying the indices of the validation sample and the argument M is ignored. Otherwise, the folds are generated. The number of cross-validation folds is specified with the argument M.

If validation="loo", leave-one-out cross-validation is performed by calling the loo function. In this case the arguments folds and M are ignored.

The estimation of the missing values can be performed by the reconstitution of the data matrix using the nipals function. Otherwise, missing values are handled by casewise deletion in the rcc function.

Value

The returned value is a list with components:

opt.lambda1
opt.lambda2

value of the parameters of regularization on which the cross-validation method reached its optimal.

opt.score

the optimal cross-validation score reached on the grid.

grid1, grid2

original vectors grid1 and grid2.

mat

matrix containing the cross-validation score computed on the grid.

Author(s)

Sébastien Déjean, Ignacio González, Kim-Anh Lê Cao, Al J Abadi

See Also

image.tune.rcc and http://www.mixOmics.org for more details.

Examples

#load data
data(nutrimouse)
X <- nutrimouse$lipid
Y <- nutrimouse$gene

# run tuning
tune_res <- tune.rcc(X, Y, validation = "Mfold")

# plot output
plot(tune_res)

mixOmicsTeam/mixOmics documentation built on Dec. 3, 2024, 11:15 p.m.