| fitNSBM {noisySBM} | R Documentation |
VEM algorithm to adjust the noisy stochastic block model to an observed dense adjacency matrix
Description
fitNSBM() estimates model parameters of the noisy stochastic block model and provides a clustering of the nodes
Usage
fitNSBM(
dataMatrix,
model = "Gauss0",
sbmSize = list(Qmin = 1, Qmax = NULL, explor = 1.5),
filename = NULL,
initParam = list(nbOfTau = NULL, nbOfPointsPerTau = NULL, maxNbOfPasses = NULL,
minNbOfPasses = 1),
nbCores = parallel::detectCores()
)
Arguments
dataMatrix |
observed dense adjacency matrix |
model |
Implemented models:
|
sbmSize |
list of parameters determining the size of SBM (the number of latent blocks) to be expored
|
filename |
results are saved in a file with this name (if provided) |
initParam |
list of parameters that fix the number of initializations
|
nbCores |
number of cores used for parallelization |
Details
fitNSBM() supports different probability distributions for the edges and can estimate the number of node blocks
Value
Returns a list of estimation results for all numbers of latent blocks considered by the algorithm. Every element is a list composed of:
thetaestimated parameters of the noisy stochastic block model; a list with the following elements:
piparameter estimate of pi
wparameter estimate of w
nu0parameter estimate of nu0
nuparameter estimate of nu
clusteringnode clustering obtained by the noisy stochastic block model, more precisely, a hard clustering given by the maximum aposterior estimate of the variational parameters
sbmParam$edgeProbasbmParamfurther results concerning the latent binary stochastic block model. A list with the following elements:
Qnumber of latent blocks in the noisy stochastic block model
clusterProbasoft clustering given by the conditional probabilities of a node to belong to a given latent block. In other words, these are the variational parameters
tau; (Q x n)-matrixedgeProbaconditional probabilities
rhoof an edges given the node memberships of the interacting nodes; (N_Q x N)-matrixICLvalue of the ICL criterion at the end of the algorithm
convergencea list of convergence indicators:
Jvalue of the lower bound of the log-likelihood function at the end of the algorithm
complLogLikvalue of the complete log-likelihood function at the end of the algorithm
convergedindicates if algorithm has converged
nbIternumber of iterations performed
Examples
n <- 10
theta <- list(pi= c(0.5,0.5), nu0=c(0,.1),
nu=matrix(c(-2,10,-2, 1,1,1),3,2), w=c(.5, .9, .3))
obs <- rnsbm(n, theta, modelFamily='Gauss')
res <- fitNSBM(obs$dataMatrix, sbmSize = list(Qmax=3),
initParam=list(nbOfTau=1, nbOfPointsPerTau=1), nbCores=1)