MetaModel_qmax function

Function to produce a sequence of meta models, with at most qmax active groups in each meta model. The meta models are the solutions of the RKHS Ridge Group Sparse or RKHS Group Lasso optimization problems.

Function to produce a sequence of meta models, with at most qmax active groups in each meta model. The meta models are the solutions of the RKHS Ridge Group Sparse or RKHS Group Lasso optimization problems.

Calculates the Gram matrices KvK_v for a chosen kernel, determines μ\mu, note μ(qmax)\mu (qmax), for which the number of active groups in the RKHS group lasso solution is equal to qmax, and fits a solution of an RKHS ridge group sparse or an RKHS group lasso problem for each pair of penalty parameters (μ(qmax),γ)(\mu (qmax),\gamma), in the Gaussian regression model.

RKHSMetMod_qmax(Y, X, kernel, Dmax, gamma, qmax, rat, Num, verbose)

Arguments

  • Y: Vector of response observations of size nn.
  • X: Matrix of observations with nn rows and dd columns.
  • kernel: Character, indicates the type of the reproducing kernel: matern ((matern kernel)), brownian ((brownian kernel)), gaussian ((gaussian kernel)), linear ((linear kernel)), quad ((quadratic kernel)). See the function calc_Kv.
  • Dmax: Integer, between 11 and dd, indicates the order of interactions considered in the meta model: Dmax=1=1 is used to consider only the main effects, Dmax=2=2 to include the main effects and the interactions of order 2,2,\ldots. See the function calc_Kv.
  • gamma: Vector of non negative scalars, values of the penalty parameter γ\gamma in decreasing order. If γ=0\gamma=0 the function solves an RKHS Group Lasso problem and for γ>0\gamma>0 it solves an RKHS Ridge Group Sparse problem.
  • qmax: Integer, shows the maximum number of active groups in the obtained solution.
  • rat: Positive scalar, to restrict the minimum value of μ\mu considered in the algorithm, μmin=μmax/(n×rat)\mu_{min}=\mu_{max}/(\sqrt{n}\times rat). The value μmax\mu_{max} is calculated inside the program, see function mu_max.
  • Num: Integer, it is used to restrict the number of different values of the penalty parameter μ\mu to be evaluated in the RKHS Group Lasso algorithm until it achieves μ(qmax)\mu (qmax): for Num =1= 1 the program is done for 33 different values of μ\mu, μ1=(μmin+μmax)/2\mu_{1}=(\mu_{min}+\mu_{max})/2, μ2=(μmin+μ1)/2\mu_{2}=(\mu_{min}+\mu_{1})/2 or μ2=(μ1+μmax)/2\mu_{2}=(\mu_{1}+\mu_{max})/2 depending on the number of active groups in the meta model associated with μ1\mu_{1}, μ3=μmin\mu_{3}=\mu_{min}.
  • verbose: Logical, if TRUE, prints: the group vv for which the correction of Gram matrix KvK_v is done, and for each pair of (μ,γ)(\mu,\gamma): the number of current iteration, active groups and convergence criterias. Set as FALSE by default.

Details

Details.

Returns

List of three components "mus", "qs", and "MetaModel": - mus: Vector, values of the evaluated penalty parameters μ\mu in the RKHS Group Lasso algorithm until it achieves μ(qmax)\mu (qmax).

  • qs: Vector, number of active groups associated with each element in mus.

  • MetaModel: List with the same length as the vector gamma. Each component of the list is a list of 33 components "mu", "gamma" and "Meta-Model":

  • mu: Scalar, the value μ(qmax)\mu (qmax).

  • gamma: Positive scalar, element of the input vector gamma associated with the estimated Meta-Model.

  • Meta-Model: An RKHS Ridge Group Sparse or RKHS Group Lasso object associated with the penalty parameters mu and gamma:

  • intercept: Scalar, estimated value of intercept.

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

  • fit.v: Matrix with nn rows and vMax columns. Each row of the matrix is the estimated value of fv=Kvθvf_{v}=K_{v}\theta_{v}.

  • fitted: Vector of size nn, indicates the estimator of mm.

  • Norm.n: Vector of size vMax, estimated values for the Ridge penalty norm.

  • Norm.H: Vector of size vMax, estimated values of the Sparse Group penalty norm.

  • supp: Vector of active groups.

  • Nsupp: Vector of the names of the active groups.

  • SCR: Scalar, equals to Yf0vKvθv2\Vert Y-f_{0}-\sum_{v}K_{v}\theta_{v}\Vert ^{2}.

  • crit: Scalar, indicates the value of penalized criteria.

  • gamma.v: Vector, coefficients of the Ridge penalty norm, nγ×\sqrt{n}\gamma\timesgama_v.

  • mu.v: Vector, coefficients of the Group Sparse penalty norm, nμ×n\mu\timesmu_v.

  • iter: List of two components: maxIter, and the number of iterations until the convergence is achieved.

  • convergence: TRUE or FALSE. Indicates whether the algorithm has converged or not.

  • RelDiffCrit: Scalar, value of the first convergence criteria at the last iteration, θlastIterθlastIter1θlastIter12\Vert\frac{\theta_{lastIter}-\theta_{lastIter-1}}{\theta_{lastIter-1}}\Vert ^{2}.

  • RelDiffPar: Scalar, value of the second convergence criteria at the last iteration, critlastItercritlastIter1critlastIter1\frac{crit_{lastIter}-crit_{lastIter-1}}{crit_{lastIter-1}}.

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

Author(s)

Halaleh Kamari

Note

For the case γ=0\gamma=0 the outputs "mu"=μg=\mu_{g} and "Meta-Model" is the same as the one returned by the function RKHSgrplasso.

See Also

calc_Kv, mu_max, RKHSgrplasso, pen_MetMod, grplasso_q

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" gamma <- c(.5,.01,.001,0) Num <- 10 rat <- 100 qmax <- 4 result <- RKHSMetMod_qmax(Y, X, kernel, Dmax, gamma, qmax, rat, Num,FALSE) names(result) result$mus result$qs l <- length(gamma) for(i in 1:l){print(result$MetaModel[[i]]$mu)} for(i in 1:l){print(result$MetaModel[[i]]$gamma)} for(i in 1:l){print(result$MetaModel[[i]]$`Meta-Model`$Nsupp)}
  • Maintainer: Halaleh Kamari
  • License: GPL (>= 2)
  • Last published: 2019-07-06

Useful links