---
author:
- 'Erin N. Sawardecker'
- 'Marta Sales-Pardo'
- 'Luís A. Nunes Amaral'
bibliography:
- 'References/ref-database.bib'
- 'ref-specific.bib'
date: 'Received: 1 August 2008'
title: Detection of node group membership in networks with group overlap
---

Introduction {#sec:intro}
============

Real-world networks including man-made and natural networks are strongly modular, that is, the pattern of connections among nodes is not homogeneous [@newman04b; @guimera05]. The modularity of a network is a consequence of the fact that there are groups of nodes in the network that preferentially connect to one another [@newman04b; @guimera05; @watts02; @donetti04; @guimera04; @reichardt04; @duch05; @palla05]. However, the assignment of nodes into those groups still remains a challenging task because, typically, nodes also connect to nodes that are not in their group [@watts02; @reichardt04; @palla05]. Additionally, nodes may hold membership in more than one group [@reichardt04; @palla05; @baumes05; @gfeller05; @nepusz08], resulting in groups that “overlap.”

The question of whether there are nodes that belong to more than one group and how important overlapping groups are to the network’s organization is especially relevant in social and biochemical systems, in which typically nodes are thought to belong to more than one group. Consider, for instance, the network of scientific collaborations within an institution: People with joint appointments would be expected to appear in more than one group. Or, consider the network of physical interactions between proteins: Topological modules are thought to have a strong correlation with biological function [@pereira-leal04]. Since many proteins are known to have more than one function, one would expect these proteins to belong to more than one group.

Recently, methods to uncover the hierarchical organization of networks [@sales-pardo07; @clauset08] have been proposed, opening the possibility of performing multi-scale analysis on social, biological, and economical systems for which large amounts of data are available. However, a potential caveat of these methods is that they do not take into account the fact that nodes could hold membership in more than one group. Modularity maximization methods [@duch05; @guimera05a; @newman06], which have been successful at finding correlations between network function and structure, suffer from the same problem. [*The impact of neglecting overlapping groups has not been assessed so far, since there is neither a formal definition of overlapping group nor a set of models on which to test overlap identification algorithms.*]{}

Here, we introduce an ensemble of networks [@newman03h] that have overlapping groups by construction [@nepusz08]. We then apply three different group detection methods—modularity maximization [@newman04b; @guimera05a], [*k*]{}-clique percolation [@palla05], and modularity-landscape surveying [@sales-pardo07]—to these networks. We find that the modularity-landscape surveying method is the only one able to detect heterogeneities in node memberships, and that these heterogeneities are detectable provided the overlap is significantly smaller than the size of the modules involved.

Model networks {#sec:model}
==============

Consider a network comprised of $N$ nodes and $L$ edges. Let $\mathcal{N} =$ {$\:n_i: i = 1, \dots, N\:$} be the set of nodes and $\mathcal{G}=\{\:g_x: x= a, b, \dots \:\}$ be the set of groups in which the nodes can hold membership. Specifically, let $\mathcal{G}_i\subset \mathcal{G}$ be the set of groups in which node $n_i$ holds membership. Without loss of generality, we assume that all groups with identical membership lists have been merged and that all groups have at least two members.

Here, we focus on the ensemble of random networks in which the probability $p_{ij}$ of the edge $(n_i, n_j)$ being present in a network is a function [*solely*]{} of the set of co-memberships of the two nodes $\mathcal{M}_{ij} = \mathcal{G}_{i} \cap \mathcal{G}_{j}$. We restrict our attention to the case where $p_{ij}$ is a non-decreasing function of the cardinality of $\mathcal{M}_{ij}$. For undirected networks, this is the most plausible case. Indeed, most clustering algorithms used to investigate the modular structure of networks have at their basis the assumption that this is the appropriate case. Such an assumption is supported by the fact that those methods return plausible results for those networks [@duch05; @newman03h; @guimera05b; @hastings06; @newman06b].

We consider the case where $p_{ij} = p_l$, where $l=||\mathcal{M}_{ij}||$ is the cardinality of $\mathcal{M}_{ij}$, and, further, we assume that $p_0 < p_1 \leq p_2 \leq \cdots$. An implication of our choice for $p_{ij}$ is that if one selects a sub-set of $\mathcal{N}$ in which all pairs of nodes have non-empty co-membership sets, then there will be more edges connecting these nodes than one would expect to find by chance. Or, in other words, we expect to find more edges connecting these nodes than if all links had the same probability $p = 2L / N(N-1)$ of being present. In contrast, if one selects a sub-set of $\mathcal{N}$ in which all pairs of nodes have empty co-membership sets, then there will be fewer edges connecting these nodes than one would expect to find by chance. These facts directly suggest that the maximization of a modularity function such as that proposed by Newman and Girvan [@newman04b] will enable one to identify node membership in modular networks (see [@sales-pardo07; @fortunato07; @kumpula07] for caveats to this argument).

The ensemble of networks we focus on comprises two distinct sub-ensembles. The first sub-ensemble, which we denote [*transitive*]{}, conforms to a transitive relationship among co-membership sets. That is, if the co-membership set $\mathcal{M}_{ij}$ is non-empty and the co-membership set $\mathcal{M}_{ik}$ is also non-empty, then the co-membership set $\mathcal{M}_{jk}$ must also be non-empty. The second sub-ensemble, which we denote [*non-transitive*]{}, does not conform to a transitive relationship among co-membership sets.

Networks in the transitive sub-ensemble have the property that every node must hold membership in only one group (if identical groups have been collapsed). In contrast, networks in the non-transitive sub-ensemble have some nodes that hold membership in more than one group. Most module detection algorithms in the literature deal only with the transitive sub-ensemble [@duch05; @guimera05a; @newman06b; @danon05], that is, nodes are divided into “exclusive groups.” A notable exception is the work of Palla et al. [@palla05], which highlights the possibility that a network will contain nodes belonging to more than one group, thus allowing for “overlapping communities.” Regretfully, Palla et al. [@palla05] do not define ensembles of networks with overlapping groups.

Another significant exception is the work of Sales-Pardo et al. [@sales-pardo07], which determines community structure even when hierarchical levels of structure exist. These hierarchical levels of structure indicate that nodes may belong to more than one group, but only when multiple layers are considered. Here, we define an ensemble of networks in which most nodes hold membership in a single group, while a small fraction of nodes hold membership in two or three groups (Fig. \[f.overlap\_networks\_schematic1\]).

Community detection {#sec:methods}
===================

Description of the methods {#sec:detection}
--------------------------

Let us now address the question of detectability of the memberships of individual nodes. Ideally, one wishes to detect all group memberships from the topology of the network alone. For the case of transitive networks, it has already been shown that when $p_1$, the probability that two nodes belonging to the same group are connected, is not much larger than $p_0$, it is impossible to extract the correct membership assignment from the network structure alone [@guimera05a]. Here, we focus on the detection of node membership for the ensemble of non-transitive networks described above. We consider three different classes of group detection algorithms: modularity maximization [@newman04b; @guimera05a], [*k*]{}-clique percolation [@palla05], and modularity-landscape surveying [@sales-pardo07].

Modularity maximization methods are the current “gold standard” for group identification [@danon05]. In this approach, nodes are classified into groups that maximize the number of within group edges compared to those that would be expected from chance alone [@newman04b; @guimera05; @donetti04; @guimera04; @duch05]. Some of the proposed algorithms, such as spectral decomposition, are extremely fast and can handle networks comprised of hundreds of thousands of nodes [@duch05]. However, this approach is clearly geared toward networks with transitive membership structures since every node must be classified into a single group.

The [*k*]{}-clique percolation method introduced by Palla et al. [@palla05] is based on the observation that networks sometimes contain connected cliques of the same size [@palla05]. In this method, a group comprises chains of “adjacent” [*k*]{}-cliques—where two [*k*]{}-cliques are adjacent if they share $k-1$ nodes. A strength of this approach is that nodes can be classified into more than one group, making it [*a priori*]{} well-suited to investigate non-transitive networks. Two limitations of this this approach, however, are that different values of $k$ will result in different group membership patterns, and that sparse networks might contain a very small number of cliques with $k>2$.

The modularity-landscape surveying method [@sales-pardo07], or MLS, is based upon the observation that the modularity landscape is very rugged and has many local maxima, which means that there are many partitions of nodes into groups characterized by high values of the modularity function. In analogy to disordered physical systems whose landscapes are also rugged  [@stillinger82; @stillinger84; @stillinger85], one expects that the set of all local maxima conveys the relevant contribution to the system’s physical properties. Thus, the method samples all the partitions $\mathcal{P}$ corresponding to local maxima with probabilities proportional to the size of their basins of attraction. Then, it builds a co-classification matrix ${\rm \bf A}$, in which each element ${\rm A}_{ij}$ corresponds to the expected fraction of the time in which a pair of nodes $(n_i,n_j)$ is classified in the same group. As discussed above, this method does not restrict nodes to hold membership in a single group, but rather, by collecting statistics, it reports the likelihood that two nodes are members of the same group (or sets of groups), and therefore it is [*a priori*]{} suitable to identify node memberships in networks with both transitive and non-transitive memberships.

Random network ensembles {#sec:network_ensembles}
------------------------

In order to investigate the detectability of the membership structure of a network, we generate random networks in which nodes can belong to five groups, ${\cal G}\:= \{\:g_a,\:g_b,\:g_c,\:g_d,\:g_e\:\}$. We consider the cases in which most of the nodes belong to a single group, $\{g_a\}, \{g_b\}, \{g_c\}$, or $\{g_d\}$, and the remaining nodes belong to two groups, $\{\:g_a, g_b\:\}$, or to three groups, $\{\:g_a,\:g_b,\:g_e\:\}$. We then assume that if two nodes have membership in the same group, they will be linked with probability $p_1\:>\:p_0$. Similarly, if two nodes have membership in the same two groups, they will be connected with probability $p_2\:\geq\:p_1$. Note that as $ r\:\equiv\:p_0 / p_1$ approaches one, the harder it becomes to detect the co-membership structure of a network. Also, since some nodes belong to multiple groups, the degree of these overlapping nodes will be larger than that for a node belonging to only one group. Henceforth, we denote the average degree of a node belonging to only one group by $z$.

If a node holds membership in only one group, say $g_a$, then it belongs to group $A$. If some nodes hold membership in two groups {$\:g_a,\:g_b\:$}, then they belong to groups $A$ and $B$. If the latter case is true, then groups $A$ and $B$ overlap. We define the “overlap size” $s$ as $$s \: = \: \frac{||A\cap B||}{||A \cup B||}~,
\label{e.ov-size}$$ that is, the number of nodes in both $A$ and $B$ divided by the combined size of groups $A$ and $B$. Thus, an important issue regarding co-membership detection when nodes hold membership in more than one group is how the size of the overlap affects the accuracy in detecting group membership.

Mutual information {#sec:mutual_info}
------------------

To quantify the similarity between two partitions of nodes, we calculate the mutual information between the two partitions [@danon05]:

$$\label{e.mutual_information}
M_I = \frac{-2\sum_{P,Q} N_{ij} \ln(\frac{N_{ij} N}{N_i N_j})}{\sum_{P} N_i \ln(\frac{N_i}{N}) + \sum_{Q} N_j \ln(\frac{N_j}{N})} ,$$

where $P$ is the list of groups in the first partition, $Q$ is the list of groups in the second partition, $N$ is the total number of nodes, $N_i$ is the number of nodes in group $g_i$ in the first partition, $N_j$ is the number of nodes in $g_j$ in the second partition, and $N_{ij}$ is the number of nodes that are both in $g_i$ and $g_j$. Note that this expression is symmetric; thus, it is an unbiased metric to compare the similarity of two partitions.

If the partitions are identical, $M_I=1$, whereas if the two partitions are totally uncorrelated, $M_I=0$. Note, however, that for the case in which each node is placed into a separate group, one has $M_I=M_I^{\ast}>0$. We thus report $m_I=\frac{M_I-M_I^{\ast}}{M_I^{\ast}}$, so that values of $m_I$ greater than zero indicate significant accuracy.

Results {#sec:results}
=======

To compare the performance of the methods for the ensemble of model networks with overlapping groups previously introduced, we generate ten networks for each set of parameter values and apply the three group detection algorithms to each network. Figure \[f.coclass\_matrix\_both\_models\] displays the typical results obtained for a network with parameters $r = 0.125$, $z = 16$, $p_2 = p_1$ or $p_2 = 2p_1$, and $s = 0.125$ or $s = 0.25$.

To determine the accuracy of each method, we compare the partitions returned by each method to the known division of nodes into groups. Specifically, we use the normalized mutual information $m_I$, which quantifies the amount of information that two different partitions share [@danon05]. Figure \[f.mutualinfo\_overlap\_1pi\] displays the average $m_I$ versus $z$ for $p_2 = p_1$ and $s = 0.125$ or $s =
0.25$ and different values of $r$.

Since the average degree of a node should strongly affect the ability of each group detection method to detect the known group structure, we systematically investigate degree effects. We expect that, as degree increases, the difficulty of detection should decrease. Also, as the number of nodes having membership to two or more groups increases, the difficulty of detection should increase.

Modularity maximization {#sec:results_spectral_decomp}
-----------------------

The results obtained with the spectral decomposition method exhibit different behaviors depending on the size of the overlap: for small overlaps ($s = 0.125$), the method identifies four groups, whereas for large overlaps ($s = 0.25$), it identifies three groups, such that the two overlapping groups are combined into a single one, as predicted by Fortunato and Barthélemy [@fortunato07]. Note that there are no significant differences between the cases $p_2=p_1$ and $p_2=2p_1$.

Modularity-landscape surveying {#sec:results_MLS}
------------------------------

In contrast, the modularity-landscape surveying method is able to uncover more information about the underlying organization of the nodes in the network than either the modularity maximization or [*k*]{}-clique percolation methods. Even for small overlaps, the algorithm is able not only to identify densely interconnected groups of nodes, but is also able to detect that the overlapping groups have more in common with each other than with the remaining groups (Fig. \[f.coclass\_matrix\_both\_models\]).

 [*k*]{}-clique percolation {#sec:results_k-clique}
---------------------------

The results obtained with the [*k*]{}-clique method depend strongly on the value of $k$. For $k = 3$, the method is unable to detect the modular structure of the networks; it places all the nodes into a single group. For $k = 4$, the two overlapping groups are mostly combined into one group for both large and small overlaps. Finally, for $k = 5$, the algorithm does not identify any sizable group of nodes in the network. In fact, the signal provided by the [*k*]{}-clique method is weaker than that provided by the adjacency matrix. Surprisingly, even though the [*k*]{}-clique method allows nodes to belong to more than one group, [*the nodes placed in multiple groups do not in general correspond to the nodes belonging to the overlapping groups*]{} (Fig. \[f.coclass\_matrix\_both\_models\]).

We find that the accuracy of the [*k*]{}-clique method is always much smaller than that of the spectral decomposition and modularity-landscape surveying methods. In fact, in order for the [*k*]{}-clique method to return results that are significant, one must have $r<0.25$. Moreover, for $k=4$, the accuracy of the method decreases as the density of edges increases.

For low edge densities, the network does not contain any 5-cliques, so the groups identified for $k=5$ are unreliable. These results point to a severe limitation of the [*k*]{}-clique method: similar networks require different [*k*]{} values in order to yield meaningful results, and even when group detection is meaningful the method always performs significantly worse than modularity based methods.

Overlap detectability {#sec:results_overlap_detectability}
---------------------

These results suggest that the detection of overlapping groups may be essentially impossible when the overlap is large. However, for small overlaps, the modularity-landscape surveying method is able to detect heterogeneities in node group membership. The question that arises is thus how small should the overlap be in order to be detected and whether detection may ever be unambiguous. To answer this question, we analyze model networks with groups comprising $100$ nodes, $z=16$, $r=0.1$, and $p_2=2p_1$, for a wide range of overlap sizes $s=0.02,\dots,0.25$ (Figs. \[f.resolution\] and \[f.resolution\_limits\]). The spectral decomposition method shows a transition from identifying four groups ($s<0.175$) to identifying three groups ($s>0.2$). For $s<0.175$, the modularity-landscape surveying method is able to detect the signature of heterogeneities in node membership. However, the “signal” fades as $s$ increases.

Like the spectral decomposition method, the modularity-landscape surveying method also indicates that there are three different groups for $s>0.2$. Additionally, it is impossible to detect the overlap between groups from the collection of edges alone. The signal is only distinct for $s\le 0.1$, and even then it is not clear whether one can distinguish between the case in which two groups overlap and the case in which a group comprises two sub-groups (Fig. \[f.comparison\]) [@sales-pardo07].

Conclusions {#sec:conclusions}
===========

The ability to detect overlapping communities within real-world networks would greatly enhance understanding of phenomena such as synchronization [@arenas06]. However, our analysis reveals that the group detection methods in the literature are not entirely equipped to handle such information. In some cases, these methods may require tunable parameters, such as in the k-clique percolation method [@palla05] and the method of Gfeller et al. [@gfeller05]. The promising method of Nepusz et al. [@nepusz08] aims to obtain the global organization of a network while determining which nodes act as “bridges” between communities. This method captures some of the same information as the modularity-landscape surveying method, but requires additional centrality calculations to correct for the “bridgeness” score. Furthermore, even the recently proposed modularity-landscape surveying method, which can detect small overlaps, is not able to unambiguously differentiate overlapping groups from hierarchically-organized groups.

Acknowledgments {#acknowledgments .unnumbered}
===============

We thank R. Guimerà, M.J. Stringer, and M.E.J. Newman for comments. L.A.N.A. gratefully acknowledges the support of the Keck Foundation, an NIH/NIGMS K-25 award, and of NSF.
