Community detection, the decomposition of a graph into meaningful building blocks, has been a core research topic in network science over the past years. Since a precise notion of what constitutes a community has remained evasive, community detection algorithms have often been compared on benchmark graphs with a particular form of community structure, and classified based on the mathematical techniques they employ. However, this can be misleading because apparent similarities in their mathematical machinery can disguise entirely different objectives. Here we provide a focused review of the different motivations that underpin community detection. This problem-driven classification is useful in applied network science, where it is important to select an appropriate algorithm for the given purpose. Moreover, highlighting the different facets of community detection also delineates the many lines of research, and points out open directions and avenues for future research.
The many facets of community detection in complex networks
Michael T. Schaub, Jean-Charles Delvenne, Martin Rosvall, Renaud Lambiotte