Learn R Programming

camel (version 0.2.0)

camel.tiger: Tuning Insensitive Graph Estimation and Regression

Description

The function "camel.cmr" implements TIGER and Calibrated CLIME using L1 norm regularization

Usage

camel.tiger(data, lambda = NULL, nlambda = NULL, lambda.min.ratio = NULL, method = "slasso", sym = "or", shrink=NULL, prec = 1e-4, mu = 0.01, max.ite = 1e4, standardize = FALSE, correlation = FALSE, perturb = TRUE, verbose = TRUE)

Arguments

data
There are 2 options for "clime": (1) data is an n by d data matrix (2) a d by d sample covariance matrix. The program automatically identifies the input matrix by checking the symmetry. (n is the sample size and d is the dimension). For "slasso", covariance input is not supported.
lambda
A sequence of decresing positive numbers to control the regularization. Typical usage is to leave the input lambda = NULL and have the program compute its own lambda sequence based on nlambda and lambda.min.ratio. Users can also specify a sequence to override this. Default value is from $lambda.max$ to lambda.min.ratio*lambda.max. For TIGER, the default value of $lambda.max$ is $\pi\sqrt{\log(d)/n}$. For CLIME , the default value of $lambda.max$ is the minimum regularization parameter, which yields an all-zero off-diagonal estiamtes.
nlambda
The number of values used in lambda. Default value is 10.
lambda.min.ratio
The smallest value for lambda, as a fraction of the uppperbound (MAX) of the regularization parameter. The program can automatically generate lambda as a sequence of length = nlambda starting from MAX to lambda.min.ratio*MAX in log scale. The default value is 0.25 for TIGER and 0.5 for CLIME.
method
TIGER is applied if method = "slasso", CLIME is applied if method="clime". Default value is "slasso".
sym
Symmetrization of output graphs. If sym = "and", the edge between node i and node j is selected ONLY when both node i and node j are selected as neighbors for each other. If sym = "or", the edge is selected when either node i or node j is selected as the neighbor for each other. The default value is "or".
shrink
Shrinkage of regularization parameter based on precision of estimation. The default value is 1.5 if method = "clime" and the default value is 0 if method="slasso" or method = "aclime".
prec
Stopping criterion. The default value is 1e-4.
mu
The smoothing parameter. The default value is 0.01.
max.ite
The iteration limit. The default value is 1e4.
standardize
All varaibles are standardized to have mean zero and standard deviation one if standardize = TRUE. The default value is FALSE.
correlation
Correlation matrix is used as the input of Sigma for method = "clime" if correlation = TRUE. The default value is FALSE.
perturb
The diagonal of Sigma is added by a positive value to guarantee that Sigma is positive definite if perturb = TRUE. User can specify a numeric value for perturbe. The default value is TRUE.
verbose
Tracing information is disabled if verbose = FALSE. The default value is TRUE.

Value

An object with S3 class "tiger" is returned:
data
The n by d data matrix or d by d sample covariance matrix from the input.
cov.input
An indicator of the sample covariance.
lambda
The sequence of regularization parameters lambda used in the program.
nlambda
The number of values used in lambda.
icov
A list of d by d precision matrices corresponding to regularization parameters.
sym
The sym from the input.
method
The method from the input.
path
A list of d by d adjacency matrices of estimated graphs as a graph path corresponding to lambda.
sparsity
The sparsity levels of the graph path.
ite
If method = "clime", it is a list of two matrices where ite[[1]] is the number of external iterations and ite[[2]] is the number of internal iterations with the entry of (i,j) as the number of iteration of i-th column and j-th lambda. If method="slasso", it is a matrix of iteration with the entry of (i,j) as the number of iteration of i-th column and j-th lambda.
df
It is a d by nlambda matrix. Each row contains the number of nonzero coefficients along the lasso solution path.
standardize
The standardize from the input.
correlation
The correlation from the input.
perturb
The perturb from the input.
verbose
The verbose from the input.

Details

TIGER and Calibrated CLIME adjust the regularization with respect to each column of the sparse precision matrix. Thus it achieves both improved finite sample performance and tuning insensitiveness.

References

1. T. Cai, W. Liu and X. Luo. A constrained L1 minimization approach to sparse precision matrix estimation. Journal of the American Statistical Association, 2011. 2. H. Liu and L. Wang. TIGER: A tuning-insensitive approach for optimally estimating large undirected graphs. Technical Report, 2012.

See Also

camel-package, camel.tiger.generator, camel.tiger.select, camel.plot, camel.tiger.roc, plot.tiger, plot.select, plot.roc, plot.sim, print.tiger, print.select, print.roc and print.sim.

Examples

Run this code

## generating data
n = 100
d = 100
D = camel.tiger.generator(n=n,d=d,graph="hub",g=10)
plot(D)

## sparse precision matrix estimation with method "clime"
out1 = camel.tiger(D$data, method = "clime")
plot(out1)
camel.plot(out1$path[[7]])

## sparse precision matrix estimation with method "slasso"
out2 = camel.tiger(D$data, method = "slasso")
plot(out2)
camel.plot(out2$path[[4]])

Run the code above in your browser using DataLab