cdlib.algorithms.bimlpa

bimlpa(g_original: object, theta: float = 0.3, lambd: int = 7) → cdlib.classes.bipartite_node_clustering.BiNodeClustering

BiMLPA is designed to detect the many-to-many correspondence community in bipartite networks using multi-label propagation algorithm.

Supported Graph Types

Undirected Directed Weighted Bipartite
Yes No No Yes
Parameters:
  • g_original – a networkx/igraph object
  • theta – Label weights threshold. Default 0.3.
  • lambd – The max number of labels. Default 7.
Returns:

BiNodeClustering object

Example:
>>> from cdlib import algorithms
>>> import networkx as nx
>>> G = nx.algorithms.bipartite.generators.random_graph(100, 20, 0.1)
>>> coms = algorithms.bimlpa(G)
References:

Taguchi, Hibiki, Tsuyoshi Murata, and Xin Liu. “BiMLPA: Community Detection in Bipartite Networks by Multi-Label Propagation.” International Conference on Network Science. Springer, Cham, 2020.

Note

Reference implementation: https://github.com/hbkt/BiMLPA