Fit the weight l1-penlized factorial dynamic Gaussian Graphical Model.
fglasso(S, model, tp, p, ...)
fglasso
returns an obejct with S3 class "sglasso"
. See the corresponding manual for more details.
the empirical variance/covariance matrix;
a list or a matrix used to specify the factorial dynamic Gaussian Graphical Model (see Details);
number of time points;
number of random variables observed for each time point;
further arguments passed to sglasso
.
Luigi Augugliaro
Maintainer: Luigi Augugliaro luigi.augugliaro@unipa.it
The factorial dynamic Gaussian Graphical Model (Abbruzzo et al., 2015) is a special kind of RCON(V, E) model (Hojsgaard, et al.,2008) proposed to study dynamic networks. Let \(X_t = (X_{it},\ldots,X_{it})'\) be a \(p\)-dimensional random variable at time \(t\). Assuming that \(X = (X'_1,\ldots,X'_T)\) follows a multivariate normal distribution, the concentration matrix \(K\) has the following block structure $$ K = \left( \begin{array}{cccc} K_{1,1} & K_{1,2} & \ldots & K_{1,T}\\ K_{2,1} & K_{2,2} & \ldots & K_{2,T}\\ \vdots & \vdots & \ddots & \vdots\\ K_{T,1} & K_{T,2} & \ldots & K_{T,T} \end{array}\right), $$ where \(K_{t,t}\) give information about the conditinal independence structure among the \(p\) random variables at time \(t\), and \(K_{t,t + h}\) give information about the conditional independence structure between \(X_t\) and \(X_{t + h}\). An interpretation of the elements of the submatrices \(K_{t,t + h}\) brings to the notion of natural structure, i.e., $$ K_{t,t + h} = \left( \begin{array}{cccc} k_{1,1}^{t,t+h} & 0 & \ldots & 0\\ 0 & k_{2,2}^{t,t+h} & \ldots & 0\\ \vdots & \vdots & \ddots & \vdots\\ 0 & 0 & \ldots & k_{p,p}^{t,t+h} \end{array}\right) + \left( \begin{array}{cccc} 0 & k_{1,2}^{t,t+h} & \ldots & k_{1,p}^{t,t+h}\\ k_{2,1}^{t,t+h} & 0 & \ldots & 0\\ \vdots & \vdots & \ddots & \vdots\\ k_{p,1}^{t,t+h} & k_{p,2}^{t,t+h} & \ldots & 0 \end{array}\right). $$ The entries of the first matrix are called self-self conditinal dependences at temporal lag \(h\) and represents the (negative) self-similarity of a given random variable across different time points. The entries of the second matrix are the conditional dependence among the \(p\) random variables. To make the interpretation of the results more relevant and, at the same time, reduce the number of parameters, the authors propose the following equality constraints:
\(k_{i,i}^{t,t+h}\) | effect | R code | \(k_{i,j}^{t,t+h}\) | effect | R code | ||
i. | \(0\) | zero | "." | iv. | \(0\) | zero | "." |
ii. | \(s^h\) | costant | "c" | ii. | \(n^h\) | costant | "c" |
iii. | \(s^h_i\) | unit | "u" | iii. | \(n^h_i\) | unit | "u" |
iv. | \(s^{t,h}\) | time | "t" | iv. | \(n^{t,h}\) | time | "t" |
v. | \(s^{t,h}_i\) | interaction | "ut" | v. | \(n^{t,h}_{i,j}\) | interaction | "ut" |
Argument model
is used to specify the restrinctions previously describted. This argument can be a named list or a matrix with dimension \(nlag\times 2\), where \(nlag\le\code{tp}\). To gain more insight, suppose that we want to model only the sub-matrices \(K_{t,t}\) and \(K_{t,t+1}\), i.e., the sub-matrices corresponding to the temporal lag zero and one. A possible R code
is
model.mat <- matrix("", nrow = 2, ncol = 2)
rownames(model.mat) <- c("lag0", "lag1")
colnames(model.mat) <- c("s", "n")
model.mat[1, ] <- c("c", "ut")
model.mat[2, ] <- c("t", ".")
In this example we are modelling the diagonal elements of the sub-matrices \(K_{t,t}\) with the constant effect while the off-diagonal elements are modelled by the interaction effect. In the same way, the diagonal elements of the sub-matrices \(K_{t,t+1}\) are modelled by the time effect while the remaning elements are equal to zero. The fglasso
function passes the matrix model.mat
to the internal function fglasso_model2mask
, i.e.,
mask <- fglasso_model2mask(model.mat, tp = 3, p = 3)
which returns the mask used in sglasso
to fit the specified factorial dynamic Gaussian Graphical model. The same model can be specified by the following named list
model.list <- list(lag0 = c(s = "c", n = "ut"), lag1 = c(s = "t", n = "."))
See the example below for more details.
Wit, E. C. and Abbruzzo, A.(2015) Dynamic factorial graphical models for dynamic networks. Network Science, Vol. 3(1), 37-- 57
Abbruzzo, A., Augugliaro, L., Mineo, A.M. and Wit, E.C. (2014) Cyclic coordinate for penalized Gaussian Graphical Models with symmetry restrictions. In Proceeding of COMPSTAT 2014 - 21th International Conference on Computational Statistics. Geneva, August 19-24, 2014.
Hojsgaard, S. and Lauritzen, S.L. (2008) Graphical gaussian models with edge and vertex symmetries. J. Roy. Statist. Soc. Ser. B., Vol. 70(5), 1005--1027.
sglasso
function.
#######################
# fglasso solution path
#######################
N <- 50
tp <- 3
p <- 3
X <- matrix(rnorm(N * p * tp), N, tp * p)
S <- crossprod(X) / N
model <- list(lag0 = c(s = "c", n = "ut"), lag1 = c(s = "t", n = "."))
out.fglasso <- fglasso(S = S, model = model, tp = tp, p = p)
out.fglasso
Run the code above in your browser using DataLab