Presentation is loading. Please wait.

Presentation is loading. Please wait.

ACE:A Fast Multiscale Eigenvectors Computation for Drawing Huge Graphs Yehunda Koren Liran Carmel David Harel.

Similar presentations


Presentation on theme: "ACE:A Fast Multiscale Eigenvectors Computation for Drawing Huge Graphs Yehunda Koren Liran Carmel David Harel."— Presentation transcript:

1 ACE:A Fast Multiscale Eigenvectors Computation for Drawing Huge Graphs Yehunda Koren Liran Carmel David Harel

2 Fast Graph Drawing Algorithm Very large graphs Millions of nodes in less than a minute Finds optimal drawing by minimizing a quadratic energy function Minimization – generalized eigenvalue problem

3 Need for Speed Drawing of graph -> capture its nature Most graph drawing methods- lengthy computation times Fastest alg- require 10 min for 10 5 -node graph ACE- 10-20 sec for 10 5 -node graph

4 Minimization For commonly encountered graphs, in which all weights are non-negative, the Laplacian is positive semi-definite.  Key observation that this provides for the feasibility of nice drawings

5 Minimization Drawing: expect nodes connected by large positive weights to be close together, and those connected by large negative weights to be far away from each other

6 ACE algorithm Technique common to algebraic multigrid (AMG) algorithm Express as originally high-dimensional problem in lower and lower dimensions using coarsening Problem solved exactly then starts a refinement process- the solution is progressively projected back into higher and higher dimensions until original problem is reproduced

7 ACE algorithm

8 Coarsening Let G be a PSD graph with n nodes Replaces G with another PSD graph G c containing m < n nodes approximating the same entity on different scales Interpolation matrix- tool that linkes G and G c

9 Coarsening Given a fine n-node PSD graph, and an nxm interpolation matrix, take the coarse m-node PSD graph to be G c (L c,M c )

10 Coarsening Interpolation Matrix: Retain structure Easy to compute in running time The sparser the better Types: Edge Contraction Interpolation Weighted Interpolation

11 Interpolation Types Edge Contracting Interpolation Interpolate each node of the finer graph from exactly one coarse node 1. Divide the nodes of fine graph into small disjoint connected subsets 2. Associate the members of each subset with single coarse node Sparse and easy to compute Only takes into consideration the strongest connection of nodes

12 Interpolation Types Weighted Interpolation Interpolate each node of the fine graph from possibly several coarse nodes 1. Choose a subset of m nodes out of n nodes of G – representatives 2. Fix the coordinates of the representatives by their values 3. Determine the coordinates of the non- representatives as a weighted sum of neighboring representatives

13 Running Time The Sparser the interpolation matrix, the faster a single iteration is The more accurate the interpolation matrix, the less iterations are required Edge Contracting fastest: structure of homogeneous graphs Weighted fastest: structure of non- homogeneous graphs

14 Coarsening cont.

15

16 Given G c, the generalized eigenprojection problem and the original problem in the same dimension is: (substituted x =Ay)

17 Refinement Keep coarsening until couse PSD graph is sufficiently small ~ < 100 nodes The drawing of G(L,M) is obtained from lowest positive generalized eigenvectors of (L,M) Since M is diagonal, the problem can be an eigenvalue problem Bv = μv and since B is small, this takes fraction of total running time Use power iteration algorithm to find the largest eigenvalues of symmetric matrices but reverse since we need to find the lowest not the largest

18 Examples Graphs 10 5 nodes - few sec Graphs 10 6 nodes – 10-20 sec Graphs 7.5*10 6 nodes – 2 min

19

20 Examples Electronic Noses: chemical devices to quantify odors Array of sensors that gives an odor-unique response pattern N=300 measurements 30 types of odors Odors in up-rt outliers Diff clusteres of odors separated

21

22 Multiscale Vizualization of Small World Networks David Auber Yves Chiricota Fabien Jourdan Guy Melancon

23 Problem “small world” networks Shown to be relevant models in study social networks, software reverse engineering, biology, etc. Have a multiscale nature viewed as a network of groups – also small world networks

24 Small World Networks First identified by Milgram studying the structure of social networks “Six degree of separation”

25 Small World Networks Defining Properties: Average path length Same # edges as random graph Clustering index of nodes Orders of magnitude larger than ave

26 Internet Movie Database

27 Interactive Visualization of Small World Networks Common tasks: Identify patterns in set of connections Social groups: collections of actors who are closely linked to one another Social Positions: sets of actors who are linked into the total social system in similar ways

28 Might not need Use of small world properties of networks to support the visualization Compute decomposition of small world network into highly connected components –also small world

29 Technique Compute clustering index for nodes and graph Where c(v) is the clustering index of node v, v is a node in the network, r(N(v)) is the number of edges connecting neighbors of v, k is the size of v’s neighborhood N(v)

30 Technique Clustering index of graph G Take the average Where N is the number of nodes in G

31 Technique Small world networks: High clustering index Small average path length between nodes

32 Technique Finding a clustering index of an edge Denote: M(u) ~ set of neighbors of u that are not neighbors of v W(u,v) ~ set of common neighbors to u and v R(A,B) for the number of edges linking nodes in a set A to nodes in set B S(A,B) = r(A,B) / |A|*|B| computes the proportion of existing edges among the set of all possible edges

33 Technique Finding a clustering index of an edge Given edge(u,v), strength is computed by dividing neighborhood of u or v into distinct subsets Compute:

34 Discard weak edges Strength of edge = measure of its contribution to the cohesion of the neighborhood Filter out the weak If strength of edge < threshold Maximal disconnected subgraphs corresponding to clustering of initial graph Quotient graph: subgraphs as vertices

35 Visual Coherence Force-directed algorithm naturally embeds neighbor nodes close to one another Not distinguish between edges Induce same attractive force for all edges of the graph –avoid be assigning weights Quotient graph laid out using Force-directed algorithm Weaker edges replaces by single edge

36

37 Navigational Coherence Selected component showed in same manner as overview panel Left click: display of overview Middle click: show same component unfolded as a flat graph Wheel: zoom in/out

38 Examples Resyn Assistan API Software designed for the study of chemical components developed in Montpellier (LIRMM) IMDB subset Central group= renowned movie actors Periphery= movies

39 Threshold and Quality Measurements Threshold choice determined by good partitioning from filtering Quality of a partition – comput how close a partition is to a partion with optimal cost

40 Threshold and Quality Measurements Cost function: Where C~ clustering of graph G First term – mean value of edge density inside each cluster Second term – mean value of edge density between clusters

41 Quality Optimal threshold approaches 1.6 for MQ close to 0.80

42 MQ scores (really high)

43 Partitioning Interactive approach to choosing threshold might be an alternative Clustering techniques aim at finding partitions that have a minimal number of outer edges Immediate visual feedback provided Computing time still low Method able to find partitions with a high MQ value

44


Download ppt "ACE:A Fast Multiscale Eigenvectors Computation for Drawing Huge Graphs Yehunda Koren Liran Carmel David Harel."

Similar presentations


Ads by Google