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

Usage

FitMLVSBM$clear()


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()


Method plot()

Plot of FitMLVSBM objects

Usage

FitMLVSBM$plot(type = c("matrix"), ...)

Arguments

type

A string for the type of plot, just "matrix" for now

Returns

a ggplot2 object


Method show()

print method

Usage

FitMLVSBM$show(type = "Multilevel Stochastic Block Model")

Arguments

type

character to tune the displayed name


Method print()

print method

Usage

FitMLVSBM$print()


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.