estimation_beta: FLAME for the Function-on-Scalar regression coefficients.

Description Usage Arguments Value Examples

View source: R/estimation_beta.R

Description

This function computes FLAME for the Function-on-Scalar regression problem, returning the significant parameters and the estimated coefficients in the kernel basis.

Usage

1
2
estimation_beta(X, Y, eigenval, NoI, thres, number_non_zeros, ratio_lambda,
  number_lambda, proportion_training_set, verbose = FALSE)

Arguments

X

matrix. N \times I design matrix. It has standardized columns.

Y

matrix. J \times N matrix containing the coefficients of the projection of the N response functions on the kernel basis. In particular column n contains the basis projection of y_n.

eigenval

vector. J-length vector containing the eigenvalues of the kernel.

NoI

scalar. integer, maximum number of iterations in the Coordinate-Descent loop.

thres

scalar. tolerance on the K-norm of the increment of the estimation to stop the Coordinate-Descent loop

number_non_zeros

scalar. integer, threshold on the number of non zeros parameters to be detected. It is the kill switch parameter presented in the Vignette.

ratio_lambda

scalar. ratio to compute the minimum value of lambda. The maximum λ_{\max} is computed as the minimum value which makes all the coefficients equal to zero. The minimum is the product ratio_lambda\times λ_{\max}.

number_lambda

scalar. integer, length of the grid for the λ parameter.

proportion_training_set

scalar. value in (0,1), the proportion for the training set for the Cross Validation.

verbose

bool. If TRUE the progression of the algorithm in the adaptive and non adaptive step is shown. If FALSE no output is shown. Default is FALSE.

Value

list containing:

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
## Not run: 
data(simulation)
data(SobolevKernel)
I0 <- dim(B_true)[2]
time <- proc.time()
FLAME_estimation <- estimation_beta(X = X,
                                 Y = Y_matrix,
                                 eigenval = eigenval,
                                 NoI = 10,
                                 thres = 0.1,
                                 number_non_zeros = I0*2,
                                 ratio_lambda = 0.01,
                                 number_lambda = 100,
                                 proportion_training_set = 0.75,
                                 verbose = FALSE)
duration <- proc.time()-time
duration
names(FLAME_estimation)

## End(Not run)

ardeeshany/FLAME documentation built on May 14, 2019, 8:41 a.m.