Modularity and community detection in bipartite networks
The modularity of a network quantifies the extent, relative to a null model network, to which vertices cluster into community groups. We define a null model appropriate for bipartite networks, and use it to define a bipartite modularity. The bipartite modularity is presented in terms of a modularity matrix B; some key properties of the eigenspectrum of B are identified and used to describe an algorithm for identifying modules in bipartite networks. The algorithm is based on the idea that the modules in the two parts of the network are dependent, with each part mutually being used to induce the vertices for the other part into the modules. We apply the algorithm to real-world network data, showing that the algorithm successfully identifies the modular structure of bipartite networks.
💡 Research Summary
The paper addresses a fundamental gap in network science: the lack of a modularity definition that respects the bipartite nature of many real‑world systems. Traditional modularity compares the observed edge pattern to a null model based on random connections, but it assumes that any pair of vertices may be linked. In bipartite graphs, vertices are divided into two disjoint sets (often called “type A” and “type B”) and edges exist only between the sets. Applying the standard null model to such graphs leads to incorrect expectations for edge density and consequently to misleading modularity scores.
To solve this, the authors construct a bipartite‑specific null model. For a vertex i in set U with degree k_i and a vertex j in set V with degree k_j, the expected number of edges under the null model is k_i k_j / m, where m is the total number of edges. Substituting this expectation into the classic modularity formula yields a bipartite modularity Q_bipartite that measures how much more intra‑module connectivity exists than would be expected in a random bipartite graph with the same degree sequences.
The bipartite modularity can be written compactly as a modularity matrix B of size (|U|+|V|) × (|U|+|V|). B has a block structure: the diagonal blocks (U–U and V–V) are zero matrices because no edges exist within a set, while the off‑diagonal blocks contain the difference between the actual adjacency matrix A and the expected matrix P (A − P) and its transpose. Formally,
B = \
Comments & Academic Discussion
Loading comments...
Leave a Comment