Lancichinetti–Fortunato–Radicchi (LFR) benchmark is an algorithm that generates benchmark networks (artificial networks that resemble real-world networks). They have a priori known communities and are used to compare different community detection methods. The advantage of LFR over other methods is that it accounts for the heterogeneity in the distributions of node degrees and of community sizes.
Contents
The algorithm
The node degrees and the community sizes are distributed according to power law, with different exponents. LFR assumes that both the degree and the community size have power law distributions with different exponents, γ and β, respectively. N is the number of nodes and the average degree is
One can generate a LFR benchmark network in the following steps.
Step 1: Generate a network with nodes following a power law distribution with exponent γ and choose extremes of the distribution
Step 2: (1 − µ) fraction of links of every node is with nodes of the same community, while fraction µ is with the other nodes.
Step 3: Generate community sizes from a power law distribution with exponent β. The sum of all sizes must be equal to N. The minimal and maximal community sizes
Step 4: Initially, no nodes are assigned to communities. Then, each node is randomly assigned to a community. As long as the number of neighboring nodes within the community does not exceed the community size a new node is added to the community, otherwise stays out. In the following iterations the “homeless” node is randomly assigned to some community. If that community is complete, i.e. the size is exhausted, a randomly selected node of that community must be unlinked. Stop the iteration when all the communities are complete and all the nodes belong to at least one community.
Step 5: Implement rewiring of nodes keeping the same node degrees but only affecting the fraction of internal and external links such that the number of links outside the community for each node is approximately equal to the mixing parameter µ.
Testing
Consider a partition into communities that do not overlap. The communities of randomly chosen nodes in each iteration follow a p(C) distribution that represents the probability that a randomly picked node is from the community C. Consider a partition of the same network that was predicted by some community finding algorithm and has p(C2) distribution. The benchmark partition has p(C1) distribution. The joint distribution is p(C1, C2). The similarity of these two partitions is captured by the normalized mutual information.
If