Community Detection via Measure Space Embedding
We present a new algorithm for community detection. The algorithm uses random walks to embed the graph in a space of measures, after which a modification of k-means in that space is applied. The algorithm is therefore fast and easily parallelizable. We evaluate the algorithm on standard random graph benchmarks, including some overlapping community benchmarks, and find its performance to be better or at least as good as previously known algorithms. We also prove a linear time (in number of edges) guarantee for the algorithm on a p, q-stochastic block model with where p ≥ c · N
This paper presents a graph partitioning algorithm for community detection based on random walk. It represents each node in the graph by a distribution, which is induced by performing a fixed-length random walk on the graph starting from that node. The nodes are the clustered by a kmeans-style algorithm. Empirical results are presented on some benchmark graphs for detecting non-overlapping and overlapping communities.The results show similar or better performance compared to two leading algorithms identified by a recent empirical published in 2009. A theoretical result is also presented that shows in some limited situations (k=2, identical partition size, 1-step random walk) the proposed algorithm with high probability converges to the true partition in one iteration. The algorithm is interesting and appears to be novel in how random walk is specifically used. I particularly liked the different interpretations that were presented by the paper in the objective (eg. equation 3).With that said, the use of random walk for graph partitioning has been considered in many studies, including walktrap (while different in details, this method is conceptually quite similar to the proposed method) and infomap as referenced by the paper. The paper discusses the distinction between the proposed approach and these two other methods, but I felt that the discussion stops a bit short in providing a clear argument as to why the proposed method should be preferred to the existing methods.The experimental results seem competitive (for the overlapping case). But I do have a few concerns. For the non-overlapping case, L is set to be 5 and for the overlapping case L is set to 2. Why use different L's? How are they decided? How sensitive is the method to the choice of L?A minor presentation issue. Figure 2 does not have a caption. For comparison purposes, results of the competing methods should be included in the paper other than pointing the readers to a different papers to make the comparison.For the theoretical result, I was not able to carefully read through the supplementary material to verify the full proof. Based on the stated result (theorem 5.1), I find it to be limited in the cases that it considers. That is, the only cases the result is applicable is whenk=2, and when the two clusters are of exact equal size. The equal-size assumption seems particularly restrictive to me. It is also stated that the result is only for L=1 (random walk of one step) and it is unclear how it would generalize to longer walks, which is used in the experiments.The presentation of the algorithm has some confusing parts to me. Algorithm 1 does not explicitly talk about random walk. I assume w_i is computed using random walk, but it is unclear to me if it is computed analytically using the stochastic matrix or by doing random walks starting from i. D is referred to as acting as a distance function. In the traditional Kmeans algorithm, distances are to be minimized. Here, however, obj 2 is to be maximized.Further, obj 2 is referred to as the cost. Generally, we try to minimize cost. The inconsistent use of the terminology is confusing.