Detecting Community Structure in Networks

Detecting Community Structure in Networks

Detecting community structure in networks M. E. J. Newman Department of Physics and Center for the Study of Complex Systems, University of Michigan, Ann Arbor, MI 48109{1120 There has been considerable recent interest in algorithms for ¯nding communities in networks| groups of vertices within which connections are dense, but between which connections are sparser. Here we review the progress that has been made towards this end. We begin by describing some traditional methods of community detection, such as spectral bisection, the Kernighan{Lin algorithm and hierarchical clustering based on similarity measures. None of these methods, however, is ideal for the types of real-world network data with which current research is concerned, such as Internet and web data and biological and social networks. We describe a number of more recent algorithms that appear to work well with these data, including algorithms based on edge betweenness scores, on counts of short loops in networks and on voltage di®erences in resistor networks. I. INTRODUCTION The outline of the paper is as follows. In Sec. II we de- scribe some of the historical approaches to ¯nding com- In the continuing flurry of research activity within munities including spectral partitioning and hierarchical physics and mathematics on the properties of networks, clustering. Then in Sec. III we describe some newer meth- a particular recent focus has been the analysis of com- ods that have appeared in the last few years, including munities within networks [1{10]. In the simplest case, a the edge betweenness method of Girvan and Newman and network or graph can be represented as a set of points, a number of variations on it proposed by other authors. or vertices, joined in pairs by lines, or edges. Many net- In Sec. IV we give our conclusions. works, it is found, are inhomogeneous, consisting not of an undi®erentiated mass of vertices, but of distinct groups. Within these groups there are many edges be- II. TRADITIONAL APPROACHES tween vertices, but between groups there are fewer edges, producing a structure like that sketched in Fig. 1. The methods described in this paper all assume that The ability to ¯nd communities within large networks we are given a network structure that we wish to divide in some automated fashion could be of considerable use. into communities in such a way that every vertex belongs Communities in a web graph for instance might cor- to one of the communities. We assume that the network respond to sets of web sites dealing with related top- is of the simplest kind possible, with a single type of ics [11, 12], while communities in a biochemical network undirected, unweighted edge connecting unweighted ver- or an electronic circuit might correspond to functional tices of a single type, although generalizations to more units of some kind [4, 5, 13, 14]. In this paper we discuss sophisticated network types have been given for some of computer algorithms for the extraction of communities the algorithms described. from raw network data. The problem of ¯nding good divisions of networks has been studied for some decades now in two ¯elds in par- ticular, computer science and sociology, which have de- veloped quite di®erent approaches as we now describe. A. Computer science approaches The typical problem in computer science is that of dividing the vertices of a network into some number g of groups with roughly equal size, while minimizing the number of edges that run between vertices in di®erent groups. Computer scientists refer to this task as graph partitioning. Graph partitioning problems arise for ex- ample in the optimal allocation of processes to proces- sors in a parallel computer. In practice, most approaches FIG. 1: A small network with community structure of the to graph partitioning have been based on iterative bi- type considered in this paper. In this case there are three section: we ¯nd the best division we can of the com- communities, denoted by the dashed circles, which have dense plete graph into two groups, and then further subdivide internal links but between which there are only a lower density those two until we have the required number of groups. of external links. Among the many algorithms suggested for the problem, 2 two have dominated the literature: the spectral bisec- split nicely into two communities, and predictably less tion method [15, 16], which is based on the eigenvec- well when it does not. The second eigenvalue ¸2, which tors of the graph Laplacian, and the Kernighan{Lin al- is also called the algebraic connectivity of the graph, is gorithm [17], which improves on an initial division of the a measure of how good the split is, with smaller values network by optimization of the number of within- and corresponding to better splits. between-community edges using a greedy algorithm. As an example of the application of the spectral bisec- Spectral bisection: The Laplacian of an n-vertex undi- tion method, we consider a well-known graph from the rected graph G is the n £ n symmetric matrix L whose social networks literature. (We will use the same exam- diagonal element Lii is the degree of vertex i, and whose ple for many of the algorithms described in this paper.) o®-diagonal element Lij is ¡1 if vertices i and j are con- This is the \karate club" network of Zachary [18], which nected by an edge and zero otherwise. Alternatively, one was studied previously by a number of others in this con- can write L = D ¡ A, where D is the diagonal matrix of text [1, 10, 19]. The network represents the pattern of vertex degrees and A is the adjacency matrix. Since the friendships amongst the members of a karate club at a degree Dii = j Aij , it follows that all rows and columns US university, constructed from ethnographic observa- of the Laplacian sum to zero, and hence that the vector tions by Zachary over a period of two years in the early 1 = (1; 1; 1 : :P:) is always an eigenvector with eigenvalue 1970s. During the period of study, the club split in two as zero. a result of a dispute between two factions, and previous If the network separates perfectly into communities, studies have found that the fault lines along which the i.e., divides into g non-overlapping groups of vertices Gk split occurred are readily visible in the structure of the (k = 1 : : : g) such that there are only within-community network. As a result the network makes a good test of the edges and no between-community ones|the groups are bisection algorithm|can the algorithm predict the two components of the graph|then the Laplacian will be groups into which the club split, given only the pattern block diagonal. Each diagonal block will form the Lapla- of edges in the network? cian of its own component, and will therefore also have In Fig. 2a we show the results of a bisection of the an eigenvector v(k) with eigenvalue zero and elements karate club network using the algorithm described above. (k) The algebraic connectivity is ¸ = 0:469, which is not ex- vi = 1 if i 2 Gk and 0 otherwise. Thus there will be g 2 degenerate eigenvectors with eigenvalue 0. actly tiny, but is at least not approaching 1. And in prac- If the network separates well but not perfectly into tice, as the ¯gure shows, the algorithm works very well, communities|if there are just a few edges that do not ¯nding the known split of the network into two groups ¯t the block-diagonal pattern|then this will no longer almost perfectly. Only one vertex is classi¯ed wrongly, be perfectly true. Instead there will in general be the vertex 3, which is on the border between the groups and one eigenvector 1 with eigenvalue zero, and g ¡ 1 eigen- so it is understandable that it might be an ambiguous values slightly di®erent from zero, indeed slightly greater case. than zero, since all eigenvalues of the graph Laplacian The spectral bisection method is reasonably fast. Cal- are non-negative [45]. The corresponding eigenvectors culation of the eigenvectors of an n £ n matrix takes will approximately be linear combinations of the eigen- in general a number of operations O(n3), which is slow. vectors v(k) de¯ned above. Hence, by looking for eigen- But in most cases of practical interest the Laplacian values of the graph Laplacian only slightly greater than is a sparse matrix, in which case the leading eigenvec- zero and taking linear combinations of the correspond- tors can be calculated more rapidly using the Lanczos ing eigenvectors, one should in theory be able to ¯nd the method [20]. The running time for the Lanczos method blocks themselves, at least approximately. to ¯nd the second eigenvector goes approximately as A particular special case of this argument is when there m=(¸3 ¡ ¸2), where m is the number of edges in the are only two blocks. Noting that all eigenvectors corre- graph, and hence it can be very fast, although it may sponding to non-degenerate eigenvalues of a real symmet- become slow if ¸2 is not well separated from the other ric matrix are orthogonal, it is clear that all eigenvectors eigenvalues. In other words, convergence is good if the other than that corresponding to the lowest eigenvalue graph separates cleanly into just the two communities must have both positive and negative elements. And for but may be poor otherwise. the case of two weakly coupled communities there will The principal disadvantage of the spectral bisection thus be one eigenvector with eigenvalue slightly greater method is that it only bisects graphs.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    11 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us