An R6 Class object, a collection of model for population of sbm netowrks
bmpop.RdAn R6 Class object, a collection of model for population of sbm netowrks
An R6 Class object, a collection of model for population of sbm netowrks
Public fields
nA list of size M with the number of nodes per network
AList of incidence Matrix of size
n \times nMNumber of networks
maskList of M masks, indicating NAs in the matrices. 1 for NA, 0 else
directedA boolean indicating if the networks are directed or not
distributionEmission distribution either : "poisson" or "bernoulli"
net_idA vector containing the "ids" or names of the networks (if none given, they are set to their number in A list)
model_listA list of size Q containing the best models
global_optsA list of options for the model space exploration. See details for more information on which options are available.
fit_optsA list of options specifically for fitting the models.
fit_sbmPre-fitted sbm objects
Z_initA list of initializations for the Z memberships.
free_densityA boolean indicating if we consider free density or if all networks have the same density
free_mixtureA boolean signaling if there is free mixture
ICL_sbmA list storing the ICL for each sbm fitted
ICLA list of size Q storing the best ICL found for each Q
BICLA list of size Q storing the best BICL found for each Q
vboundA list of size Q storing the best vbound found for each Q
best_fitA fitSimpleSBMPop object changing regularly to store the current best fit.
logfactAA quantity used with the Poisson probability distribution
improvedA field use at each step to check if it has improved.
Methods
Method new()
Create a new instance of the bisbmpop object
This class is generally called via the user function estimate_colBiSBM
Arguments
netlistThe list of M networks
net_idA list of name for the networks, defaults to 1 to M if not provided
directedA boolean indicating if the networks are directed or not
distributionThe emission distribution either "bernoulli" or "poisson"
free_densityIf we account for different density between networks
free_mixtureA boolean indicating if there is free mixture
fit_sbmThe pre-fitted SBM
Z_initA list providing a clustering of the nodes
global_optsA list of global options used by the algorithm. See details of the user function for more information.
fit_optsA list of fit options used by the algorithm. See details of the user function for more information.
Method optimize_from_sbm()
Method optimize_spectral()
Method optimize_init()
Arguments
indexThe sequence of networks number going from 1 to M
ZThe provided initialization
QThe number of clusters
nb_clustersA subindex for model list, in practice always 1
CpiA list of size M containing the support for the possibly absent blocks, defaults to NULL
CalphaA list of size M containing the support for the possibly absent interaction parameter, defaults to NULL
Method optimize_from_zinit()
Method forward_pass()
Usage
bmpop$forward_pass(
Q_min = self$global_opts$Q_min,
Q_max = self$global_opts$Q_max,
index = seq(self$M),
nb_clusters = 1L
)Method backward_pass()
Usage
bmpop$backward_pass(
Q_min = self$global_opts$Q_min,
Q_max = self$global_opts$Q_max,
index = seq(self$M),
nb_clusters = 1L
)Method optimize()
This method performs the burn in and the steps of moving window with cluster splitting (forward pass) and merging (backward pass) around the mode found.
Method choose_models()
Usage
bmpop$choose_models(models, Q, index = seq(self$M), nb_clusters = 1L)