Table of Contents
Fetching ...

Modularity and community structure in networks

M. E. J. Newman

TL;DR

The paper addresses detecting community structure in networks by quantifying how densely groups are connected relative to random expectation through modularity. It introduces a spectral approach using a new modularity matrix, deriving a formulation $Q = \frac{1}{4m} \mathbf{s}^T \mathbf{B} \mathbf{s}$ with $\mathbf{B}$ defined by $B_{ij} = A_{ij} - \frac{k_i k_j}{2m}$, and uses the leading eigenvector to partition vertices by the signs of its components, noting that a network is indivisible if no positive eigenvalues exist. For more than two communities, it applies iterative bipartitioning on subgraphs via their own modularity matrices, ensuring each split increases total modularity and defining final communities as indivisible subgraphs. A Kernighan–Lin–style refinement further maximizes modularity after spectral splits, improving quality and speed, especially on large networks, and outperforming competing methods like GN and CNM while remaining competitive with DA on large problems. Across diverse real-world networks, the method achieves higher modularity and faster runs with scalable performance ($O(n^2\log n)$), demonstrated by large datasets such as a 27k-vertex network running in ~20 minutes.

Abstract

Many networks of interest in the sciences, including a variety of social and biological networks, are found to divide naturally into communities or modules. The problem of detecting and characterizing this community structure has attracted considerable recent attention. One of the most sensitive detection methods is optimization of the quality function known as "modularity" over the possible divisions of a network, but direct application of this method using, for instance, simulated annealing is computationally costly. Here we show that the modularity can be reformulated in terms of the eigenvectors of a new characteristic matrix for the network, which we call the modularity matrix, and that this reformulation leads to a spectral algorithm for community detection that returns results of better quality than competing methods in noticeably shorter running times. We demonstrate the algorithm with applications to several network data sets.

Modularity and community structure in networks

TL;DR

The paper addresses detecting community structure in networks by quantifying how densely groups are connected relative to random expectation through modularity. It introduces a spectral approach using a new modularity matrix, deriving a formulation with defined by , and uses the leading eigenvector to partition vertices by the signs of its components, noting that a network is indivisible if no positive eigenvalues exist. For more than two communities, it applies iterative bipartitioning on subgraphs via their own modularity matrices, ensuring each split increases total modularity and defining final communities as indivisible subgraphs. A Kernighan–Lin–style refinement further maximizes modularity after spectral splits, improving quality and speed, especially on large networks, and outperforming competing methods like GN and CNM while remaining competitive with DA on large problems. Across diverse real-world networks, the method achieves higher modularity and faster runs with scalable performance (), demonstrated by large datasets such as a 27k-vertex network running in ~20 minutes.

Abstract

Many networks of interest in the sciences, including a variety of social and biological networks, are found to divide naturally into communities or modules. The problem of detecting and characterizing this community structure has attracted considerable recent attention. One of the most sensitive detection methods is optimization of the quality function known as "modularity" over the possible divisions of a network, but direct application of this method using, for instance, simulated annealing is computationally costly. Here we show that the modularity can be reformulated in terms of the eigenvectors of a new characteristic matrix for the network, which we call the modularity matrix, and that this reformulation leads to a spectral algorithm for community detection that returns results of better quality than competing methods in noticeably shorter running times. We demonstrate the algorithm with applications to several network data sets.

Paper Structure

This paper contains 6 sections, 4 equations, 3 figures, 1 table.

Figures (3)

  • Figure 1: The vertices in many networks fall naturally into groups or communities, sets of vertices (shaded) within which there are many edges, with only a smaller number of edges between vertices of different groups.
  • Figure 2: Application of our eigenvector-based method to the "karate club" network of Ref. Zachary77. Shapes of vertices indicate the membership of the corresponding individuals in the two known factions of the network while the dotted line indicates the split found by the algorithm, which matches the factions exactly. The shades of the vertices indicate the strength of their membership, as measured by the value of the corresponding element of the eigenvector.
  • Figure 3: Krebs' network of books on American politics. Vertices represent books and edges join books frequently purchased by the same readers. Dotted lines divide the four communities found by our algorithm and shapes represent the political alignment of the books: circles (blue) are liberal, squares (red) are conservative, triangles (purple) are centrist or unaligned.