multiNet: Latent Space Models for Multivariate Networks

Description Usage Arguments Details Value References See Also Examples

View source: R/multiNet.R

Description

Implements latent space models for multivariate networks (multiplex) via MCMC algorithm.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
multiNet(Y, niter = 1000, D = 2,
         muA = 0, tauA = NULL, nuA = 3,
         muB = 0, tauB = NULL, nuB = 3,
         muL = 0, tauL = NULL, nuL = 3,
         alphaRef = 0.1,
         covariates = NULL,
         DIC = FALSE,
         burnIn = round(niter*0.3),
         trace = TRUE,
         allChains = FALSE,
         refSpace = NULL)

Arguments

Y

A three-dimensional array or list of n x n adjacency matrices composing the multidimensional network. A list will be converted to an array. If an array, the dimension of Y must be (n,n,K), where n is the number of nodes and K the number of networks. Missing values (NA) are allowed; see details.

niter

The number of MCMC iterations. The default value is niter = 1000.

D

The dimension of the latent space, with D > 0. The default value is D = 2.

muA, muB, muL

Mean hyperparameters, see details.

tauA, tauB, tauL

Mean hyperparameters, see details.

nuA, nuB, nuL

Variance hyperparameters, see details.

alphaRef

The value for the intercept in the first network (the reference network). This value can be specified by the user on the basis of prior knowledge or computed using the function alphaRef, see details.

covariates

An array or a list with edge-covariates matrices. A list is automatically converted to an array. Covariates can be either continuous or discrete and must be constant throughout the views of the multiplex. The dimension of covariates is (n,n,L), where n is the number of nodes and L the number of covariates, that is, the number of covariates matrices. Missing values (NA) are not allowed.

DIC

A logical value indicating wether the DIC (Deviance Information Criterion) should be computed. The default is DIC = FALSE.

burnIn

A numerical value, the number of iterations of the chain to be discarded when computing the posterior estimates. The default value is burnIn = round(niter*0.3).

trace

A logical value indicating if a progress bar should be printed.

allChains

A logical value indicating if the full parameter chains should also be returned in output. The default value is allChains = FALSE.

refSpace

Optional. A matrix containing a set of reference values for the latent coordinates of the nodes. Its dimension must be (n, D), where n is the number of nodes and D the number of dimensions of the latent space. The coordinates stored in the matrix refSpace are compared with the estimated ones at each iteration via Procrustes correlation. High values of the correlation index indicate that the estimated coordinates are a translation and/or a rotation of the coordinates in refSpace.

Details

The function estimates a latent space model for multidimensional networks (multiplex) via MCMC. The model assumes that the probability of observing an arc between any two nodes is inversely related to their distance in a low-dimensional latent space. Hence, nodes close in the latent space have a higher probability of being connected across the views of the multiplex than nodes far apart.

The probability of an edge beteween nodes i and j in the k_{th} network is defined as:

P ( y_{ijk} = 1 | Ω_k , d_{ij} , λ ) = C_{ijk} \ ( 1 + C_{ijk} ).

with C_{ijk} = exp( α_k - β_k * d_{ij} - λ * x_{ij} ). The arguments of C_{ijk} are:

Inference on the model parameters is carried out via a MCMC algorithm. A hierarchical framework is adopted for estimation, where the parameters of the distributions of α, β and λ are considered nuisance parameters and assumed to follow hyper-prior distributions. The parameters of these hyperpriors need to be fixed and are the following:

Missing data are considered structural and correspond to edges missing because one or more nodes are not observable in some of the networks of the multiplex. No imputation is performed, instead, the term corresponding to the missing edge is discarded in the computation of the likelihood function. For example, if either node (i) or (j) is not observable in network (k), the edge (i,j) is missing and the likelihood function for network (k) is calculated discarding the corresponding (i,j) term. Notice that the model assumes a single common generative latent space for the whole multidimensional network. Thus, discarding the (i,j) term in the k_{th} network does not prevent from recovering the coordinates of nodes i and j in the latent space.

Value

An object of class 'multiNet' containing the following components:

n

The number of nodes in the multidimensional network.

K

The number of networks in the multidimensional network.

D

The number of dimensions of the estimated latent space.

parameters

A list with the following components:

  • alpha is a list with two components: the means of the posterior distributions and the standard deviations of the posterior distributions for the intercept parameters;

  • beta is a list with two components: the means of the posterior distributions and the standard deviations of the posterior distributions for the latent space coefficient parameters;

  • lambda is a list with two components: the means of the posterior distributions and the standard deviations of the posterior distributions for the covariate coefficient parameters.

latPos

A list with posterior estimates of means and standard deviations of the latent coordinates.

accRates

A list with the following components:

  • alpha is a vector with the acceptance rates for the intercept parameters;

  • beta is a vector with the acceptance rates for the latent space coefficient parameters;

  • lambda is a vector with the acceptance rates for the covariate coefficient parameters;

  • latPos is a vector with the acceptance rates for the latent coordinates of the nodes.

DIC

The Deviance Information Criterion of the estimated model. Computed only if DIC = TRUE in input.

allChains

If allChains = TRUE, a list with the following components is returned:

  • parameters is a list with the estimated posterior distributions of the model parameters: α, β and λ;

  • latPos is an array with the posterior distributions of the latent coordinates of each node;

  • priorParameters is a list with the estimated posterior distributions of the parameters of the prior distributions of α, β and λ.

corrRefSpace

A numerical vector containing the values of the Procrustes correlation between the reference space and the estimated one, computed at each mcmc iteration. Only outputed when refSpace is given, otherwise NULL.

info

A list with some information on the estimated model:

  • call contains the function call;

  • niter is the number of MCMC iterations;

  • burnIn is the number of initial iterations to discarded when computing the estimates;

  • covariates is the covariates array, if present;

  • L is the number of covariates.

References

D'Angelo, S. and Murphy, T. B. and Alfò, M. (2018). Latent space modeling of multidimensional networks with application to the exchange of votes in the Eurovision Song Contest. arXiv.

See Also

alphaRef

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
data(vickers)
alphaR <- alphaRef(vickers, D = 2)  # compute alpha reference value

it <- 10     # small number of iterations just for example

# 2-dimensional latent space model, no covariates
mod <- multiNet(vickers, niter = it, D = 2,
                alphaRef = alphaR)

# 2-dimensional latent space model, sex as covariate
mod <- multiNet(vickers, niter = it, D = 2,
                alphaRef = alphaR,
                covariates = sex)

spaceNet documentation built on April 1, 2018, 12:05 p.m.