Markov Clustering Algorithm
Markov Clustering Algorithm
MCL Algorithm
Summary
Graph Clustering
Intuition:
◦ High connected nodes could be in one cluster
◦ Low connected nodes could be in different clusters.
Model:
◦ A random walk may start at any node
◦ Starting at node r, if a random walk will reach node
t with high probability, then r and t should be
clustered together.
Markov Clustering (MCL)
Markov process
◦ The probability that a random will take an edge at
node u only depends on u and the given edge.
◦ It does not depend on its previous route.
◦ This assumption simplifies the computation.
MCL
Flow network is used to approximate the
partition
There is an initial amount of flow injected
A B
Adjacency matrix A
Transition matrix P
1 1
1 1/2
1 1
1 1/2
What is a random walk
t=0
1
1/2
1
1/2
What is a random walk
t=0 t=1
1 1
1/2 1/2
1 1
1/2 1/2
What is a random walk
t=0 t=1
1 1
1/2 1/2
1 1
1/2 1/2
t=2
1
1/2
1
1/2
What is a random walk
t=0 t=1
1 1
1/2 1/2
1 1
1/2 1/2
t=2 t=3
1
1/2 1
1
1/2
1
1/2
1/2
Probability Distributions
xt(i) = probability that the surfer is at node i at time t
1 2 3
1 2 3
0.5 0.5 1 0 0.5 0
Flow
1 2 3 2 1.0 0 1.0
1 1 Matrix
3 0 0.5 0
20
Measure or Sample any of these—high-length
paths, random walks and deduce the cluster
structure from the behavior of the samples
quantities.
(MG+I)2
MG
Flow is easier with dense regions than across
sparse boundaries,
Expand: M := M*M
Prune
Output clusters
43
Multi-level Regularized MCL
Run R-MCL to convergence, output clusters.
Intermediate Intermediate
Graph Graph Initializes flow
Coarsen matrix of refined
... ... graph
44
http://www.micans.org/mcl/ani/mcl-animati
on.html
Find attractor: the node a is an attractor if
Maa is nonzero
Find attractor system: If a is an attractor then