An R6 Class object, a fitted multilevel network once $dovem() is done
An R6 Class object, a fitted multilevel network once $dovem() is done
Public fields
vbound
The vector of variational bound for monitoring convergence
Active bindings
affiliation_matrix
Get the affiliation matrix
adjacency_matrix
Get the list of adjacency matrices
nb_nodes
Get the list of the number of nodes
nb_clusters
Get the list of the number of blocks
parameters
Get the list of the model parameters
membership
Get the list of the variational parameters
independent
Are the levels independent?
distribution
Emission distribution of each level
directed
Are the levels directed?
entropy
Get the entropy of the model
bound
Get the variational bound of the model
df_mixture
Get the degrees of freedom of the
mixture parameters
df_connect
Get the degrees of freedom of the
connection parameters
connect
Get the number of possible observed connections
ICL
Get the ICL model selection criterion of the model
full_penalty
Get the penalty used to compute the ICL
Z
Get the list of block memberships (vector form)
X_hat
Get the list of the matrices of probability connection
predictions
map
Get the list of block memberships (matrix form)
penalty
Get the ICL penalty
likelihood
Compute the likelihood of both levels
complete_likelihood
Get the complete likelihood of the model
Methods
Method new()
Constructor for the FitMLVSBM class
Usage
FitMLVSBM$new(
Q = list(I = 1, O = 1),
A = NA,
X = NA,
M = list(I = NA, O = NA),
directed = NA,
distribution = list("bernoulli", "bernoulli"),
independent = FALSE
)
Arguments
Q
List of number of blocks
A
Affiliation matrix
X
List of adjacency matrices
M
List of Mask matrices
directed
List of boolean
distribution
List of string
independent
Boolean
Returns
A FitMLVSBM object
Method update_alpha()
Update the connection parameters for the M step
Usage
FitMLVSBM$update_alpha(safeguard = 2 * .Machine$double.eps)
Arguments
safeguard
Parameter live in a compact [safeguard, 1-safeguard]
Method update_pi()
Update the upper level mixture parameter for the M step
Usage
FitMLVSBM$update_pi(safeguard = 0.001)
Arguments
safeguard
Parameter live in a compact [safeguard, 1-safeguard]
Method update_gamma()
Update the lower level mixture parameter for the M step
Usage
FitMLVSBM$update_gamma(safeguard = 1e-06)
Arguments
safeguard
Parameter live in a compact [safeguard, 1-safeguard]
Method init_clustering()
init_clustering Initial clustering for VEM algorithm
Usage
FitMLVSBM$init_clustering(
safeguard = 2 * .Machine$double.eps,
method = "hierarchical",
Z = NULL
)
Arguments
safeguard
Parameter live in a compact [safeguard, 1-safeguard]
method
Algorithm used to initiate the clustering, either
"spectral", "hierarchical" or "merge_split" (if Z
is provided)
Z
Initial clustering if provided
Method clear()
Reset all parameters
Method m_step()
m_step Compute the M step of the VEM algorithm
Usage
FitMLVSBM$m_step(safeguard = 1e-06)
Arguments
safeguard
Parameter live in a compact [safeguard, 1-safeguard]
Method ve_step()
Compute the VE step of the VEM algorithm
Usage
FitMLVSBM$ve_step(threshold = 1e-06, fixPointIter = 10, safeguard = 1e-06)
Arguments
threshold
The convergence threshold
fixPointIter
The maximum number of fixed point iterations
safeguard
Parameter live in a compact [safeguard, 1-safeguard]
Method do_vem()
Launch a Variational EM algorithm
Usage
FitMLVSBM$do_vem(
init = "hierarchical",
threshold = 1e-06,
maxIter = 1000,
fixPointIter = 100,
safeguard = 1e-06,
Z = NULL
)
Arguments
init
The method for self$init_clustering
threshold
The convergence threshold
maxIter
The max number of VEM iterations
fixPointIter
The max number of fixed point iterations for VE step
safeguard
Parameter live in a compact [safeguard, 1-safeguard]
Z
Initial clustering if provided
Method permute_empty_class()
permute_empty_class Put empty blocks numbers at the end
Usage
FitMLVSBM$permute_empty_class()
Plot of FitMLVSBM objects
Usage
FitMLVSBM$plot(type = c("matrix"), ...)
Arguments
type
A string for the type of plot, just "matrix" for now
Method show()
print method
Usage
FitMLVSBM$show(type = "Multilevel Stochastic Block Model")
Arguments
type
character to tune the displayed name
Method clone()
The objects of this class are cloneable with this method.
Usage
FitMLVSBM$clone(deep = FALSE)
Arguments
deep
Whether to make a deep clone.