Lecture slides

Download Report

Transcript Lecture slides

CS8803-NS Network Science Fall 2013

Instructor: Constantine Dovrolis [email protected]

http://www.cc.gatech.edu/~dovrolis/Courses/NetSci/

Disclaimers

The following slides include only the figures or videos that we use in class; they do not include detailed explanations, derivations or descriptions covered in class.

Many of the following figures are copied from open sources at the Web. I do not claim any intellectual property for the following material.

• • • • • •

Outline

What does “network community” mean?

Community detection versus graph partitioning versus hierarchical clustering Graph partitioning algorithms – Spectral partitioning (Fiedler’s method based on graph Laplacian) Modularity metric for community detection – Spectral-based modularity optimization – Other methods for modularity optimization Community detection methods that do not rely on modularity metric – Betweenness-Centrality method – Radicchi et al. method Hierarchical agglomerative clustering

• • •

Outline for next week’s class

Variations of the community detection problem – Overlapping communities – – Dynamic communities Link-based communities Properties of real-world network communities Applications of community detection – In social networks – – – – In biological networks In brain networks In ecological networks In climate networks

• • • • •

Today’s outline (reordered)

What does “network community” mean?

Community detection versus graph partitioning versus hierarchical clustering Modularity metric for community detection – Spectral-based modularity optimization – Other methods for modularity optimization Community detection methods that do not rely on modularity metric – Betweenness-Centrality method – Radicchi et al. method Hierarchical agglomerative clustering • Graph partitioning algorithms – Spectral partitioning (Fiedler’s method based on graph Laplacian)

Hierarchical network

• • • • •

Today’s outline (reordered)

What does “network community” mean?

Community detection versus graph partitioning versus hierarchical clustering Modularity metric for community detection – Spectral-based modularity optimization – Other methods for modularity optimization Community detection methods that do not rely on modularity metric – Betweenness-Centrality method – Radicchi et al. method Hierarchical agglomerative clustering • Graph partitioning algorithms – Spectral partitioning (Fiedler’s method based on graph Laplacian)

• • • Graph partitioning vs Community detection In graph partitioning, the desired number and size of the partitions is given – E.g., graph bisection in two equal-sized partitions – NP-Hard In community detection, the number of communities (and their size) results from the method itself – It is a property of the network The community detection problem is less well-defined than the graph partitioning problem

Spectral bisection method for graph partitioning

(see last few slides for more details)

Graph partitioning vs Hierarchical clustering

• • Community detection vs Hierarchical clustering Hierarchical clustering comes in two forms: – Divisive algs: top-down – Key points: – Need a similarity metric for any two nodes • Which metric to use?

– – – Agglomerative: bottom-up • How to examine similarity of groups of nodes?

Which horizontal partition gives more insight?

Some clusters are artificial; not “real communities” Fundamentally, many networks are NOT hierarchical

• • • • •

Today’s outline (reordered)

What does “network community” mean?

Community detection versus graph partitioning Modularity metric for community detection – Spectral-based modularity optimization – Other methods for modularity optimization Community detection methods that do not rely on modularity metric – Betweenness-Centrality method – Radicchi et al. method Hierarchical agglomerative clustering • Graph partitioning algorithms – Spectral partitioning (Fiedler’s method based on graph Laplacian)

Modularity definition

• • Fraction of edges between pairs of nodes that belong to the same community RELATIVE TO Fraction of edges between same pair of nodes if edges were placed randomly (but in a degree-preserving manner)

Spectral maximization of modularity (2006)

Spectral maximization of modularity (see class notes for detailed derivations)

Spectral maximization of modularity (see class notes for detailed derivations)

Dividing a community into smaller communities

Spectral maximization of modularity (see class notes for detailed derivations)

Greedy optimization of modularity (2004)

Complexity of Clauset et al.’s method

• • • • •

Today’s outline (reordered)

What does “network community” mean?

Community detection versus graph partitioning Modularity metric for community detection – Spectral-based modularity optimization – Other methods for modularity optimization Community detection methods that do not rely on modularity metric – Betweenness-Centrality method – Radicchi et al. method Hierarchical agglomerative clustering • Graph partitioning algorithms – Spectral partitioning (Fiedler’s method based on graph Laplacian)

The algorithm of Girvan-Newman

The algorithm of Girvan-Newman

The algorithm of Radicchi et al.

• • • • •

Today’s outline (reordered)

What does “network community” mean?

Community detection versus graph partitioning Modularity metric for community detection – Spectral-based modularity optimization – Other methods for modularity optimization Community detection methods that do not rely on modularity metric – Betweenness-Centrality method – Radicchi et al. method Hierarchical clustering • Graph partitioning algorithms – Spectral partitioning (Fiedler’s method based on graph Laplacian)

Hierarchical clustering

http://condor.depaul.edu/ntomuro/courses/578/notes/notes-Clustering.html

Hierarchical agglomerative clustering

http://condor.depaul.edu/ntomuro/courses/578/notes/notes-Clustering.html

Hierarchical divisive clustering

http://mines.humanoriented.com/classes/2010/fall/csci568/portfolio_exports/mvoget/cluster/cluster.html

Node similarity metrics

Cluster similarity – 3 approaches

• • • • •

Today’s outline (reordered)

What does “network community” mean?

Community detection versus graph partitioning Modularity metric for community detection – Spectral-based modularity optimization – Other methods for modularity optimization Community detection methods that do not rely on modularity metric – Betweenness-Centrality method – Radicchi et al. method Hierarchical agglomerative clustering • Graph partitioning algorithms – Spectral partitioning (Fiedler’s method based on graph Laplacian)

Key points

(See class notes for detailed derivations) Define Laplacian of an (undirected, unweighted) graph – Show that all eigenvalues of Laplacian are non-negative – – – Show that Laplacian has at least one zero eigenvalue The number of zero eigenvalues is equal to the number of connected components in the graph The lowest non-zero eigenvalue is called “algebraic connectivity” and it is proportional to the graph’s min cut set

• • • •

Key points (cont’)

(See class notes for detailed derivations) constrained optimization problem Show that min cut set is proportional to algebraic connectivity (min non-zero eigenvalue of Laplacian) Compute corresponding eigenvector (appropriately normalized) And determine graph partitions based on the values of that eigenvector • For a sparse graph, this method is O(n 2 ) – If the second eigenvector is computed using the orthogonalization or Lanczos method (which is