grplasso_q {RKHSMetaMod}R Documentation

Function to fit a solution with q active groups of an RKHS Group Lasso problem.

Description

Fits a solution of the group lasso problem based on RKHS, with q active groups in the obtained solution for the Gaussian regression model. It determines \mu_{g}(q), for which the number of active groups in the solution of the RKHS group lasso problem is equal to q, and returns the RKHS meta model associated with \mu_{g}(q).

Usage

grplasso_q(Y, Kv, q, rat, Num)

Arguments

Y

Vector of response observations of size n.

Kv

List of eigenvalues and eigenvectors of positive definite Gram matrices K_v and their associated group names. It should have the same format as the output of the function calc_Kv (see details).

q

Integer, the number of active groups in the obtained solution.

rat

Positive scalar, used to restrict the minimum value of \mu_g, to be evaluted in the RKHS Group Lasso algorithm, \mu_{min}=\mu_{max}/rat. The value \mu_{max} is calculated inside the program, see function mu_max.

Num

Integer, used to restrict the number of different values of the penalty parameter \mu_g to be evaluated in the RKHS Group Lasso algorithm, until it achieves \mu_g(q): for Num = 1 the program is done for 3 values of \mu_g, \mu_{1}=(\mu_{min}+\mu_{max})/2, \mu_{2}=(\mu_{min}+\mu_{1})/2 or \mu_{2}=(\mu_{1}+\mu_{max})/2 depending on the value of q associated with \mu_{1}, \mu_{3}=\mu_{min}.

Details

Input Kv should contain the eigenvalues and eigenvectors of positive definite Gram matrices K_v. It is necessary to set input "correction" in the function calc_Kv equal to "TRUE".

Value

List of 4 components: "mus", "qs", "mu", "res":

mus

Vector, values of the evaluated penalty parameters \mu_g in the RKHS group lasso algorithm until it achieves \mu_{g}(q).

qs

Vector, number of active groups associated with each value of \mu_g in mus.

mu

Scalar, value of \mu_{g}(q).

res

An RKHS Group Lasso object:

intercept

Scalar, estimated value of intercept.

teta

Matrix with vMax rows and n columns. Each row of the matrix is the estimated vector \theta_{v} for v=1,...,vMax.

fit.v

Matrix with n rows and vMax columns. Each row of the matrix is the estimated value of f_{v}=K_{v}\theta_{v}.

fitted

Vector of size n, indicates the estimator of m.

Norm.H

Vector of size vMax, estimated values of the penalty norm.

supp

Vector of active groups.

Nsupp

Vector of the names of the active groups.

SCR

Scalar, equals to \Vert Y-f_{0}-\sum_{v}K_{v}\theta_{v}\Vert ^{2}.

crit

Scalar, indicates the value of the penalized criteria.

MaxIter

Integer, number of iterations until convergence is reached.

convergence

TRUE or FALSE. Indicates whether the algorithm has converged or not.

RelDiffCrit

Scalar, value of the first convergence criteria at the last iteration, \frac{crit_{lastIter}-crit_{lastIter-1}}{crit_{lastIter-1}}.

RelDiffPar

Scalar, value of the second convergence criteria at the last iteration, \Vert\frac{\theta_{lastIter}-\theta_{lastIter-1}}{\theta_{lastIter-1}}\Vert ^{2}.

Note

Note.

Author(s)

Halaleh Kamari

References

Kamari, H., Huet, S. and Taupin, M.-L. (2019) RKHSMetaMod : An R package to estimate the Hoeffding decomposition of an unknown function by solving RKHS Ridge Group Sparse optimization problem. <arXiv:1905.13695>

See Also

calc_Kv, mu_max

Examples

d <- 3
n <- 50
library(lhs)
X <- maximinLHS(n, d)
c <- c(0.2,0.6,0.8)
F <- 1;for (a in 1:d) F <- F*(abs(4*X[,a]-2)+c[a])/(1+c[a])
epsilon <- rnorm(n,0,1);sigma <- 0.2 
Y <- F + sigma*epsilon
Dmax <- 3
kernel <- "matern"
Kv <- calc_Kv(X, kernel, Dmax, TRUE, TRUE)
result <- grplasso_q(Y,Kv,5,100 ,Num=10)
result$mu
result$res$Nsupp

[Package RKHSMetaMod version 1.1 Index]