cvMatrixFrobeniusLoss {cvCovEst} | R Documentation |
cvMatrixFrobeniusLoss()
evaluates the matrix Frobenius
loss over a fold
object (from 'origami'
(Coyle and Hejazi 2018)). This loss function is equivalent to that
presented in cvFrobeniusLoss()
in terms of estimator
selections, but is more computationally efficient.
cvMatrixFrobeniusLoss( fold, dat, estimator_funs, estimator_params = NULL, true_cov_mat = NULL )
fold |
A |
dat |
A |
estimator_funs |
An |
estimator_params |
A named |
true_cov_mat |
A |
A tibble
providing information on estimators,
their hyperparameters (if any), and their matrix Frobenius loss evaluated
on a given fold
.
Coyle J, Hejazi N (2018). “origami: A Generalized Framework for Cross-Validation in R.” Journal of Open Source Software, 3(21), 512. doi: 10.21105/joss.00512, https://doi.org/10.21105/joss.00512.
library(MASS) library(origami) library(rlang) # generate 10x10 covariance matrix with unit variances and off-diagonal # elements equal to 0.5 Sigma <- matrix(0.5, nrow = 10, ncol = 10) + diag(0.5, nrow = 10) # sample 50 observations from multivariate normal with mean = 0, var = Sigma dat <- mvrnorm(n = 50, mu = rep(0, 10), Sigma = Sigma) # generate a single fold using MC-cv resub <- make_folds(dat, fold_fun = folds_vfold, V = 2 )[[1]] cvMatrixFrobeniusLoss( fold = resub, dat = dat, estimator_funs = rlang::quo(c( linearShrinkEst, thresholdingEst, sampleCovEst )), estimator_params = list( linearShrinkEst = list(alpha = c(0, 1)), thresholdingEst = list(gamma = c(0, 1)) ) )