This code and data repository accompanies the paper
- Community Detection in Bipartite Networks with Stochastic Blockmodels, Tzu-Chi Yen and Daniel B. Larremore, Physical Review E 102, 032309, (2020).
The code is tested on Python>=3.6. For questions, please email tzuchi at [email protected], or via the issues!
The bipartiteSBM
implements a fast community inference algorithm for the bipartite Stochastic Block Model (biSBM)
using the MCMC sampler or the Kernighan-Lin algorithm as the core optimization engine.
It searches through the space with dynamic programming, and estimates the number of communities
(as well as the partition) for a bipartite network.
The bipartiteSBM
helps you infer the number of communities in a bipartite network. (det_k_bisbm
is a deprecated name for the same library.)
The bipartiteSBM
utilizes the Minimum Description Length principle to determine a point estimate of the
bipartite partition that best compresses the model and data. In other words, we formulate priors and maximize the
corresponding posterior likelihood function.
Several test examples are included. Read on in the docs!
- The project documentation is at https://docs.netscied.tw/bipartiteSBM/index.html.
- For installation instructions, see https://docs.netscied.tw/bipartiteSBM/usage/installation.html. You'll need CMake and Boost libraries, and a compiler that supports C++14.