ML_RMCL: Multi-Level Regularized Markov Clustering

Description Usage Arguments Value Examples

Description

This function implements the multi-level regularized markov clustering. It uses flow simulation of a graph to find clusters.

Usage

1
2
3
4
ML_RMCL(g, r = 2, reg = TRUE, iter.max = 200, n.threshold = 200,
  last.reg = TRUE, eps = 0.001, save.p1 = NULL, load.p1 = NULL,
  iter.curt = 4, coarse.weight = TRUE, init.weight.trans = FALSE,
  curt.weight.trans = FALSE, timer = FALSE)

Arguments

g

graph object of class ELgraph on which to perform the clustering

r

inflation parameter. A higher value yields more refined clusters.

reg

boolean value. When TRUE, the MCL iterations in phase 2 are regularized.

iter.max

integer: maximum number of MCL iterations during phase 3 before the matrix is interpreted as a clustering. The function gives a warning when reached.

n.threshold

integer: number of nodes under which phase 1 stops the coarsening.

last.reg

boolean value. When TRUE, the MCL iterations in phase 3 are regularized.

eps

integer: epsilon threshold for the pruning operation. During pruning, values under eps/m are set to 0, where m is the number of non-zero entries in the column

save.p1

string: a name for the storing a the graph hierarchy after the coarsening. A file will be saved at "./phase1/save.p1.rds". The algorithm can then be used with this file as a strating point by giving the name as the load.p1 parameter.

load.p1

string: a name for loading the graph hierarchy. When not NULL, g will not be used but the function will take the file "./phase1/load.p1.rds" as input. Can be used when phase 1 is time consuming and we want different tests with the same coarsening.

iter.curt

integer: number of iteration of MCL during phase 2.

coarse.weight

boolean value. When TRUE, the coarsening phase keeps the edges' weights as indications of the number of merged edges.

init.weight.trans

boolean value. When TRUE, the algorithm performs a weight transformation step at the very beginning, before the coarsening.

curt.weight.trans

boolean value. When TRUE, the algorithm performs a weight transformation step for each flow matrix initialisation during phase 2.

timer

boolean value. When TRUE, the algorithm returns a vector of phases duration in addition of the clustering.

Value

A vector of size n describing the associated cluster of each node. When timer=TRUE, a list of two elements: res the clustering vector and time a vector of size 3 with the duration of each phase in seconds.

Examples

1
2
g = generateEdgeList(n = 1000)
clustering = ML_RMCL(g)

DavidGilgien/ML.RMCL documentation built on May 6, 2019, 1:54 p.m.