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

44
ACE:A Fast Multiscale Eigenvectors Computation for Drawing Huge Graphs Yehunda Koren Liran Carmel David Harel
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    219
  • download

    0

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

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

ACE:A Fast Multiscale Eigenvectors Computation for Drawing Huge Graphs

Yehunda KorenLiran CarmelDavid Harel

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

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

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

Need for Speed

Drawing of graph -> capture its nature

Most graph drawing methods- lengthy computation times

Fastest alg- require 10 min for 105-node graph

ACE- 10-20 sec for 105-node graph

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

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

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

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

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

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

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

ACE algorithm

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

Coarsening

Let G be a PSD graph with n nodes Replaces G with another PSD graph Gc

containing m < n nodes approximating the same entity on different scales

Interpolation matrix- tool that linkes G and Gc

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

Coarsening

Given a fine n-node PSD graph, and an nxm interpolation matrix, take the coarse m-node PSD graph to be Gc

(Lc,Mc)

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

Coarsening Interpolation Matrix:

Retain structure Easy to compute in running time The sparser the better

Types: Edge Contraction Interpolation Weighted Interpolation

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

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

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

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

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

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

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

Coarsening cont.

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

Coarsening cont.

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

Coarsening cont. Given Gc, the generalized

eigenprojection problem and the original problem in the same dimension is: (substituted x =Ay)

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

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

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

Examples Graphs 105 nodes - few sec Graphs 106 nodes – 10-20 sec Graphs 7.5*106 nodes – 2 min

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

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

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

Multiscale Vizualization of Small World Networks

David AuberYves ChiricotaFabien JourdanGuy Melancon

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

Problem

“small world” networks Shown to be relevant models in study

social networks, software reverse engineering, biology, etc.

Have a multiscale natureviewed as a network of groups – also small world networks

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

Small World Networks

First identified by Milgram studying the structure of social networks

“Six degree of separation”

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

Small World Networks

Defining Properties: Average path length

Same # edges as random graph

Clustering index of nodes Orders of magnitude larger than ave

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

Internet Movie Database

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

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

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

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

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

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)

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

Technique Clustering index of graph G

Take the average

Where N is the number of nodes in G

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

Technique Small world networks:

High clustering index Small average path length between nodes

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

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

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

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:

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

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

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

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

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

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

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

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

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

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

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

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

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

Quality Optimal threshold approaches 1.6 for

MQ close to 0.80

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

MQ scores (really high)

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

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

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