ergmclust: Model-Based Clustering of Large Networks Through ERGMs.

Description Usage Arguments Details Value Author(s) References Examples

View source: R/ergmclust.R

Description

Model-based clustering and cluster-specific parameter estimation through the mixed membership Exponential-Family Random Graph Models (ERGMs) using Variational Expectation-Maximization algorithm.

Usage

1
ergmclust(adjmat, K, directed = FALSE, thresh = 1e-06, iter.max = 200, coef.init = NULL)

Arguments

adjmat

An object of class matrix of dimension (N x N) containing the adjacency matrix, where N is the number of nodes in the network.

K

Number of clusters in the mixed membership Exponential-Family Random Graph Models (ERGMs).

directed

If TRUE, the network is supposed to be directed (and therefore adjmat is must be asymmetric in general). By default, this is set as FALSE.

thresh

Optional user-supplied convergence threshold for relative error in the objective in Variational Expectation-Maximization (VEM) algorithm. The default value is set as 1e-06.

iter.max

The maximum number of iterations after which the algorithm is terminated. The default value is set as 200.

coef.init

Optional user-supplied network canonical parameter vector (K-dimensional). Default is NULL and ergmclust chooses a random perturbation around zero vector.

Details

ergmclust is an R implementation for the model-based clustering through the mixed membership Exponential-Family Random Graph Models (ERGMs) with undirected and directed network data. It uses the Variational Expectation-Maximization algorithm to solve the approximate maximum likelihood estimation.

Value

Returns a list of ergmclust object. Each object of class ergmclust is a list with the following components:

coefficients

An object of class vector of size (K x 1) containing the canonical network parameters in Exponential-Family Random Graph Models (ERGMs).

probability

An object of class matrix of size (N x K) containing the mixed membership probabilities of the model for N nodes distributed in K clusters.

clust.labels

An object of class vector of size (N x 1) containing the cluster membership labels in {1, ..., K} for N nodes.

ICL

Integrated Classification Likelihood (ICL) score calculated from completed data log-likelihood and penalty terms.

Author(s)

Authors: Amal Agarwal [aut, cre], David R. Hunter [aut], Kevin Lee [aut], Lingzhou Xue [aut, cre], Anna Yinqi Zhang [cre]

Maintainer: Amal Agarwal <amalag.19@gmail.com>

References

Agarwal, A. and Xue, L. (2019) Model-Based Clustering of Nonparametric Weighted Networks With Application to Water Pollution Analysis, Technometrics, to appear

https://amstat.tandfonline.com/doi/abs/10.1080/00401706.2019.1623076

Blei, D. M. , Kucukelbir, A., and McAuliffe, J. D. (2017), Variational Inference: A Review for Statisticians, Journal of the American Statistical Association, Vol. 112(518), 859-877

https://www.tandfonline.com/doi/full/10.1080/01621459.2017.1285773

Lee, K. H., Xue, L, and Hunter, D. R. (2017) Model-Based Clustering of Time-Evolving Networks through Temporal Exponential-Family Random Graph Models, Journal of Multivariate Analysis, to appear

https://arxiv.org/abs/1712.07325

Vu D. Q., Hunter, D. R., and Schweinberger, M. (2013) Model-based Clustering of Large Networks, The Annals of Applied Statistics, Vol. 7(2), 1010-1039

https://projecteuclid.org/euclid.aoas/1372338477

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
## undirected network:
data(tradenet)
## clustering and estimation for K = 2 groups
ergmclust(adjmat = tradenet, K = 2, directed = FALSE, 
thresh = 1e-06, iter.max = 120, coef.init = NULL)

## directed network:
data(armsnet)
## clustering and estimation for K = 2 groups
ergmclust(adjmat = armsnet, K = 2, directed = TRUE, 
thresh = 1e-06, iter.max = 120, coef.init = NULL)

ergmclust documentation built on Feb. 1, 2021, 9:07 a.m.