Learn R Programming

JointNets (version 2.0.1)

wsimule: A constrained and weighted l1 minimization approach for estimating multiple Sparse Gaussian or Nonparanormal Graphical Models

Description

Estimate multiple, related sparse Gaussian or Nonparanormal graphical models from multiple related datasets using the SIMULE algorithm. Please run demo(wsimule) to learn the basic functions provided by this package. For further details, please read the original paper: Beilun Wang, Ritambhara Singh, Yanjun Qi (2017) doi10.1007/s10994-017-5635-7.

Usage

wsimule(X, lambda, epsilon = 1, W, covType = "cov",
  intertwined = FALSE, parallel = FALSE)

Arguments

X

A List of input matrices. They can be data matrices or covariance/correlation matrices. If every matrix in the X is a symmetric matrix, the matrices are assumed to be covariance/correlation matrices. More details at https://github.com/QData/SIMULE

lambda

A positive number. The hyperparameter controls the sparsity level of the matrices. The \(\lambda_n\) in the following section: Details.

epsilon

A positive number. The hyperparameter controls the differences between the shared pattern among graphs and the individual part of each graph. The \(\epsilon\) in the following section: Details. If epsilon becomes larger, the generated graphs will be more similar to each other. The default value is 1, which means that we set the same weights to the shared pattern among graphs and the individual part of each graph.

W

A weight matrix. This matrix uses the prior knowledge of the graphs. For example, if we use wsimule to infer multiple human brain connectome graphs, the \(W\) can be the anatomical distance matrix of human brain. The default value is a matrix, whose entries all equals to 1. This means that we do not have any prior knowledge.

covType

A parameter to decide which Graphical model we choose to estimate from the input data.

If covType = "cov", it means that we estimate multiple sparse Gaussian Graphical models. This option assumes that we calculate (when input X represents data directly) or use (when X elements are symmetric representing covariance matrices) the sample covariance matrices as input to the simule algorithm.

If covType = "kendall", it means that we estimate multiple nonparanormal Graphical models. This option assumes that we calculate (when input X represents data directly) or use (when X elements are symmetric representing correlation matrices) the kendall's tau correlation matrices as input to the simule algorithm.

intertwined

indicate whether to use intertwined covariance matrix

parallel

A boolean. This parameter decides if the package will use the multithreading architecture or not.

Value

$graphs

A list of the estimated inverse covariance/correlation matrices.

$share

The share graph among multiple tasks.

Details

The SIMULE algorithm is a constrained l1 minimization method that can detect both the shared and the task-specific parts of multiple graphs explicitly from data (through jointly estimating multiple sparse Gaussian graphical models or Nonparanormal graphical models). It solves the following equation: $$ \hat{\Omega}^{(1)}_I, \hat{\Omega}^{(2)}_I, \dots, \hat{\Omega}^{(K)}_I, \hat{\Omega}_S = \min\limits_{\Omega^{(i)}_I,\Omega_S}\sum\limits_i ||W \cdot \Omega^{(i)}_I||_1+ \epsilon K||W \cdot \Omega_S||_1 $$ Subject to : $$ ||\Sigma^{(i)}(\Omega^{(i)}_I + \Omega_S) - I||_{\infty} \le \lambda_{n}, i = 1,\dots,K \nonumber $$ Please also see the equation (7) in our paper. The \(\lambda_n\) is the hyperparameter controlling the sparsity level of the matrices and it is the lambda in our function. The \(\epsilon\) is the hyperparameter controlling the differences between the shared pattern among graphs and the individual part of each graph. It is the epsilon parameter in our function and the default value is 1. For further details, please see our paper: http://link.springer.com/article/10.1007/s10994-017-5635-7.

if labels are provided in the datalist as column names, result will contain labels (to be plotted)

References

Beilun Wang, Ritambhara Singh, Yanjun Qi (2017). A constrained L1 minimization approach for estimating multiple Sparse Gaussian or Nonparanormal Graphical Models. http://link.springer.com/article/10.1007/s10994-017-5635-7

Examples

Run this code
# NOT RUN {
library(JointNets)
data(exampleData)
result = wsimule(X = exampleData , lambda = 0.1, epsilon = 0.45,
W = matrix(1,20,20), covType = "cov", FALSE)
plot(result)
# }

Run the code above in your browser using DataLab