Code organization
For a user, the entry point is the DsmClustering.flowBasedMarkovClustering
method which takes the following parameters:
Parameter | Algorithmic name | Empirical useful range | Description |
---|---|---|---|
|
- |
- |
Adjacency matrix between the nodes, non-negative element |
|
- |
- |
Labels of the nodes. |
|
μ |
Between |
Influence factor of distance between nodes. |
|
α |
Normally |
Number of steps taken each iteration in the Markov clustering. |
|
β |
Between |
Speed factor of deciding clusters. |
|
ε |
- |
Convergence limit. |
|
- |
- |
The bus detection algorithm to apply. |
|
- |
- |
Tuning factor for selecting bus nodes. Interpretation depends on the chosen bus detection algorithm. |
The function computes how to group the nodes into a bus and hierarchical clusters by shuffling the nodes into a different order.
The result is a Dsm
instance, which contains how the original nodes were shuffled to obtain the result, a shuffled version of the provided adjacency matrix and labels, and a tree describing the nested clustering hierarchy, with the getShuffledBase
and getShuffledSize
methods providing the node offset and length of each group in the shuffled version.