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

Slides:



Advertisements
Similar presentations
Class 12: Communities Network Science: Communities Dr. Baruch Barzel.
Advertisements

Partitional Algorithms to Detect Complex Clusters
Multilevel Hypergraph Partitioning Daniel Salce Matthew Zobel.
Social network partition Presenter: Xiaofei Cao Partick Berg.
Clustering.
Cluster Analysis: Basic Concepts and Algorithms
PARTITIONAL CLUSTERING
Leting Wu Xiaowei Ying, Xintao Wu Aidong Lu and Zhi-Hua Zhou PAKDD 2011 Spectral Analysis of k-balanced Signed Graphs 1.
Siddharth Choudhary.  Refines a visual reconstruction to produce jointly optimal 3D structure and viewing parameters  ‘bundle’ refers to the bundle.
Information Networks Graph Clustering Lecture 14.
Online Social Networks and Media. Graph partitioning The general problem – Input: a graph G=(V,E) edge (u,v) denotes similarity between u and v weighted.
Graph Laplacian Regularization for Large-Scale Semidefinite Programming Kilian Weinberger et al. NIPS 2006 presented by Aggeliki Tsoli.
Author: Jie chen and Yousef Saad IEEE transactions of knowledge and data engineering.
C++ Programming: Program Design Including Data Structures, Third Edition Chapter 21: Graphs.
Algebraic MultiGrid. Algebraic MultiGrid – AMG (Brandt 1982)  General structure  Choose a subset of variables: the C-points such that every variable.
Graph Clustering. Why graph clustering is useful? Distance matrices are graphs  as useful as any other clustering Identification of communities in social.
Graph Clustering. Why graph clustering is useful? Distance matrices are graphs  as useful as any other clustering Identification of communities in social.
Lecture 21: Spectral Clustering
Using Structure Indices for Efficient Approximation of Network Properties Matthew J. Rattigan, Marc Maier, and David Jensen University of Massachusetts.
CS 584. Review n Systems of equations and finite element methods are related.
Fast, Multiscale Image Segmentation: From Pixels to Semantics Ronen Basri The Weizmann Institute of Science Joint work with Achi Brandt, Meirav Galun,
L16: Micro-array analysis Dimension reduction Unsupervised clustering.
Fast algorithm for detecting community structure in networks.
Segmentation Graph-Theoretic Clustering.
Chapter 9 Graph algorithms Lec 21 Dec 1, Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Force Directed Algorithm Adel Alshayji 4/28/2005.
Force Directed Algorithm Adel Alshayji 4/28/2005.
Easy Optimization Problems, Relaxation, Local Processing for a single variable.
Exploring Microarray data Javier Cabrera. Outline 1.Exploratory Analysis Steps. 2.Microarray Data as Multivariate Data. 3.Dimension Reduction 4.Correlation.
Hypercubes and Neural Networks bill wolfe 10/23/2005.
Application of Graph Theory to OO Software Engineering Alexander Chatzigeorgiou, Nikolaos Tsantalis, George Stephanides Department of Applied Informatics.
Clustering Ram Akella Lecture 6 February 23, & 280I University of California Berkeley Silicon Valley Center/SC.
Network Measures Social Media Mining. 2 Measures and Metrics 2 Social Media Mining Network Measures Klout.
Social Media Mining Graph Essentials.
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
CHAMELEON : A Hierarchical Clustering Algorithm Using Dynamic Modeling
Algorithms for drawing large graphs
Models and Algorithms for Complex Networks Graph Clustering and Network Communities.
Clustering Spatial Data Using Random Walk David Harel and Yehuda Koren KDD 2001.
A Clustering Algorithm based on Graph Connectivity Balakrishna Thiagarajan Computer Science and Engineering State University of New York at Buffalo.
A Graph-based Friend Recommendation System Using Genetic Algorithm
Data Structures & Algorithms Graphs
Concept Switching Azadeh Shakery. Concept Switching: Problem Definition C1C2Ck …
Domain decomposition in parallel computing Ashok Srinivasan Florida State University.
GRAPHS. Graph Graph terminology: vertex, edge, adjacent, incident, degree, cycle, path, connected component, spanning tree Types of graphs: undirected,
1 Friends and Neighbors on the Web Presentation for Web Information Retrieval Bruno Lepri.
Graphs, Vectors, and Matrices Daniel A. Spielman Yale University AMS Josiah Willard Gibbs Lecture January 6, 2016.
 In the previews parts we have seen some kind of segmentation method.  In this lecture we will see graph cut, which is a another segmentation method.
Community structure in graphs Santo Fortunato. More links “inside” than “outside” Graphs are “sparse” “Communities”
Informatics tools in network science
Network Partition –Finding modules of the network. Graph Clustering –Partition graphs according to the connectivity. –Nodes within a cluster is highly.
Spectral Clustering Shannon Quinn (with thanks to William Cohen of Carnegie Mellon University, and J. Leskovec, A. Rajaraman, and J. Ullman of Stanford.
Mesh Segmentation via Spectral Embedding and Contour Analysis Speaker: Min Meng
Clustering [Idea only, Chapter 10.1, 10.2, 10.4].
Lecture 20. Graphs and network models 1. Recap Binary search tree is a special binary tree which is designed to make the search of elements or keys in.
Laplacian Matrices of Graphs: Algorithms and Applications ICML, June 21, 2016 Daniel A. Spielman.
Laplacian Matrices of Graphs: Algorithms and Applications ICML, June 21, 2016 Daniel A. Spielman.
High Performance Computing Seminar
Algorithms and Networks
Cohesive Subgraph Computation over Large Graphs
Groups of vertices and Core-periphery structure
A Continuous Optimization Approach to the Minimum Bisection Problem
Data Mining Cluster Analysis: Advanced Concepts and Algorithms
Jianping Fan Dept of CS UNC-Charlotte
Degree and Eigenvector Centrality
Segmentation Graph-Theoretic Clustering.
Grouping.
On the effect of randomness on planted 3-coloring models
3.3 Network-Centric Community Detection
Feature space tansformation methods
Presentation transcript:

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

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

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

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

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

ACE algorithm

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

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 )

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

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

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

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

Coarsening cont.

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

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

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

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

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

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

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

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

Internet Movie Database

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

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

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)

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

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

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

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:

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

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

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

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

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

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

Quality Optimal threshold approaches 1.6 for MQ close to 0.80

MQ scores (really high)

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