arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1410.1237cs.SIcs.DCphysics.soc-ph
收藏

可扩展社区发现的并行启发式算法

Parallel Heuristics for Scalable Community Detection

Hao Lu, Mahantesh Halappanavar, Ananth Kalyanaraman

摘要:

社区发现已成为众多图论应用中的基本操作。它用于揭示真实世界网络中存在的自然划分,而不会对社区集合施加事先的大小或基数约束。尽管其潜在的应用,只有有限的支持社区发现的大规模并行计算机上,主要是由于不规则的和固有的顺序性的基本算法。在本文中,我们提出了并行化算法的快速社区发现使用的鲁汶方法作为串行模板。Louvain方法是模块化优化的迭代启发式方法。该方法最初由Blondel等人在2008年开发,由于其能够以快速和内存高效的方式检测高模块化社区分区,因此变得越来越受欢迎。然而,该方法本身也是顺序的,从而限制了其可扩展性。在这里,我们观察到这种方法的某些关键属性,其并行化提出了挑战,因此提出了旨在打破顺序障碍的算法。出于评估目的,我们使用OpenMP多线程实现了我们的算法,并在来自多个应用程序域的真实世界图上对其进行了测试(例如,互联网、引文、生物学)。与串行Louvain实现相比,我们的并行实现能够在相当数量或更少的迭代中为大多数测试输入产生具有更高模块性的社区输出,同时使用32个线程提供高达16倍的绝对加速。

英文摘要:

Community detection has become a fundamental operation in numerous graph-theoretic applications. It is used to reveal natural divisions that exist within real world networks without imposing prior size or cardinality constraints on the set of communities. Despite its potential for application, there is only limited support for community detection on large-scale parallel computers, largely owing to the irregular and inherently sequential nature of the underlying heuristics. In this paper, we present parallelization heuristics for fast community detection using the Louvain method as the serial template. The Louvain method is an iterative heuristic for modularity optimization. Originally developed by Blondel et al. in 2008, the method has become increasingly popular owing to its ability to detect high modularity community partitions in a fast and memory-efficient manner. However, the method is also inherently sequential, thereby limiting its scalability. Here, we observe certain key properties of this method that present challenges for its parallelization, and consequently propose heuristics that are designed to break the sequential barrier. For evaluation purposes, we implemented our heuristics using OpenMP multithreading, and tested them over real world graphs derived from multiple application domains (e.g., internet, citation, biological). Compared to the serial Louvain implementation, our parallel implementation is able to produce community outputs with a higher modularity for most of the inputs tested, in comparable number or fewer iterations, while providing absolute speedups of up to 16x using 32 threads.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑