12.07.2015 Views

Multilevel Graph Clustering with Density-Based Quality Measures

Multilevel Graph Clustering with Density-Based Quality Measures

Multilevel Graph Clustering with Density-Based Quality Measures

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.2 <strong>Graph</strong> Coarseningnearly no edges require movement because they point to a common neighbor. Hencethe average merge time should be nearly linear instead of quadratic.Related Work Clauset at al. use search trees to store the incident edges [15]. Eachedge of the removed vertex is removed from the tree of its end-vertex. Its entryis searched in the list of the target vertex. In case target and end-vertex are notalready adjacent the edge is inserted into both trees. Each vertex can have atmost |V | adjacent vertices, thus merging two vertices <strong>with</strong> this method would costO(|V | log |V |) time in the worst-case.Greedy grouping is structurally very similar to the minimum spanning tree problem<strong>with</strong> the selection quality as edge weights. But most selection qualities change theirvalues dynamically depending on merge steps. Still some alternative techniques<strong>with</strong>out directly contracting edges but deferring some operations to later steps mightbe applicable, cf. [27].3.2.2 Greedy MatchingData: graph,selector,match fraction,reduction factorResult: clusteringforeach pair of adjacent vertices (a,b) do // collect possible mergesif merging a, b would improve quality thensq ← selector quality(a,b);add (a, b, sq) to pair list;num pairs ← num pairs + 1;sort pair list by decreasing sq;good = match fraction ∗ num pairs + 1;merge count = reduction factor ∗ num vertices(graph ) + 1;foreach pair (a, b) in pair list doif a and b not marked thenmark a and b;merge clusters of a and b;merge count ← merge count − 1;good ← good − 1;if merge count = 0 ∨ good = 0 then break;Figure 3.6: Coarsening Method: Greedy MatchingThe greedy matching method operates by first constructing a matching, i.e. alist of independent vertex pairs, and the next coarsening level could be directlygenerated from these pairs. The pseudo-code is shown in Figure 3.6. In the firstphase all pairs of adjacent vertices are collected and sorted by their selection quality.Pairs not improving modularity are filtered out in advance. This list is processedbeginning <strong>with</strong> the best ranked pairs. Merged vertices are marked and pairs <strong>with</strong>31

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!