Where 〖 N〗^l (v) is the set of neighbors of node v that have the label l, and |(X)| is the cardinality of set X.Below are the main steps of LPA [14]:
First, each node is labeled with a unique label. Let the label be the identification of the community …show more content…
For example, in the current iteration, the label of node x is determined by the label which is produced by the neighbor nodes’ last iteration process and this may lead to labels’ cycle oscillation phenomenon in a bipartite graph. The oscillation may result in that the algorithm cannot converge. So, Raghavan proposed the asynchronous update algorithm [14] to update nodes’ labels in a random order. In asynchronous update algorithm, the nodes’ labels are determined by labels of nodes which are just produced by the current iteration and last iteration. This way can avoid the oscillation of labels.
LPA’s time complexity is near linear time complexity O(km)[14], [16], where k is the number of iterations and m is the number of edges. Raghavan mentioned that 95% of nodes or more are classified correctly by the end of iteration 5 [14]. So it is applicable to large-scale networks due to this simple local and decentralized process.
In addition, neither does LPA need optimization of the predefined objective function nor does it need priori information on numbers and scales of the community. Furthermore, there is no limit on the size of the community and the division effect is very ideal. So LPA has become one of the most widely used community discovery algorithm and it is widely used in the field of multimedia information classification [17], virtual community mining and so