An a posteriori measure of network modularity

Measuring the modularity of networks, and how it deviates from random expectations, important to understand their structure and emerging properties. Several measures exist to assess modularity, which when applied to the same network, can return both different modularity values (i.e. different estimates of how modular the network is) and different module compositions (i.e. different groups of species forming said modules). More importantly, as each optimization method uses a different optimization criterion, there is a need to have an a posteriori measure serving as an equivalent of a goodness-of-fit. In this article, I propose such a measure of modularity, which is simply defined as the ratio of interactions established between members of the same modules vs. members of different modules. I apply this measure to a large dataset of 290 ecological networks representing host–parasite (bipartite) and predator–prey (unipartite) interactions, to show how the results are easy to interpret and present especially to a broad audience not familiar with modularity analyses, but still can reveal new features about modularity and the ways to measure it.

Modularity, the fact that groups of nodes within a network interact more frequently with themselves than with other nodes, is an important property of several systems, including genetic 1,2 , informatics 3 , ecological 4 , and socio-economic 5 interactions, as well as biogeographic patterns 6,7 and disease spread management 8 . Because of the relevance of modularity for network properties, it is important to assess it correctly. Several methods exist to measure network modularity, some of which rely on the optimization of a given criterion 9,10 , label propagation 11 , or combination of these approaches 12,13 . These methods return two elements. The first is a value of modularity for the networks, most often within the 0-1 interval. Each method often has a threshold value, above which a network is considered to be modular. Increasing values reflect an increasingly modular structure. The second element is a "community partition", i.e. the attribution of each node to a module.
Recently, Thébault 7 showed that different measures of modularity tailored to presence/absence matrices (i.e. networks in which links have no weight), gave roughly equal estimates of the significance of modularity, but differed in the community partition they returned (i.e. the identity of nodes composing each module varied). In such situations, one might look for a way to choose which community partition should be used. The challenge in this situation is that the criteria used by each optimisation method cannot be meaningfully compared, and so there is a need for a posteriori measurement of how strong the modular structure is, regardless of the method used to obtain the community partition. More importantly, this criterion should be different than the one used to track the progress of any optimisation algorithm.
An important feature of modular networks is the occurrence of interactions between nodes of different modules. They contribute to the propagation of disturbances 4 , flow of information 14,15 , and cross-regulation of biological processes 16 , inter alia 17 . In addition to measuring how modular the network is, determining to what extent modules are connected, and to identify nodes and edges responsible for connecting modules, is thus valuable information. In this article, I propose an a posteriori measure of the proportion of interactions established between modules, i.e. edges connecting different communities. I apply this measure to the community partition identified by the Louvain method on 290 ecological networks, and show that it behaves in a similar way to other modularity measures.

The measure
In this contribution I define the realized modularity, termed Q R . Q R measures the extent to which edges, within a network, are established between nodes belonging to the same module. For E edges in a network, if W of them are established between members of the same module, then (1) When there are no between-module links, then W = E and Q R takes the maximal value of 1. When between-module interactions are as numerous as within-module interactions, then W = E/2, and Q R takes the minimal value of 1/2. To express the realized modularity as a value between 0 and 1, it is expressed as: (2) Note that Q′ R will yield values in the [0; 1] interval only if there are more edges established within than between modules. Although, if modules are determined at random, Q′ R values are expected to be centered on 0, it is expected that they will increase when modules are properly optimized (only as far as the network is modular). The main advantage of Q R is that it is agnostic with regard to the measure used to optimize modularity (and even to the method by which the nodes were assigned to modules, which can be arbitrary), as it acts a posteriori, i.e. after nodes have been attributed to modules. Nonetheless, it assumes a simple yet functional definition of modularity: the fact that nodes interact more within than between modules. Given that measuring to which extent this is true, it can therefore be used to select the community detection method maximizing modularity. This measure works on most types of networks, as it makes no difference if links are directional, or if the networks are bipartite/unipartite. An illustration of this measure is given in Figure 1. This measure is purposefully simple, (i) so that it makes only minimal assumptions about what modularity is (except for the fact that in a modular network, nodes interact more within than between modules), or how it should be optimized, and (ii) because it is not meant to be used to optimize modularity, but to either compare the outcome of different methods, or present the value of modularity in a way that is straightforward to interpretate.
A python implementation of this measure, using the networkx package, is proposed at https://gist.github.com/tpoisot/4947006. It reads data in the edge list format, and offers additional functions to generate null networks, as detailed in the following section.

Example application: realized modularity in ecological networks
In this section, I analyze the modular structure of a large dataset of 290 ecological networks (187 food webs and 113 host-parasite networks) published in previous meta-analyses 18,19 . Modularity is an important feature of ecological interaction networks, which is linked to their resilience 20,21 , stability 7 , biogeographic structure 22 , functioning 23 , and to the evolutionary mechanisms involved in their assembly 24 . Notably, the occurrence of interactions between and within modules plays a central role in the structure of pollination networks 4 , and help buffer the effect of species extinctions 21 .
The existence of interactions in ecological systems involves a large family of processes, ranging from abudance related 25,26 (abundant

Amendments from Version 2
Following comments from Jochen Fründ, I have clarified the functional relevance of the measure, and better explained why a posteriori measures are needed. A complete list of all revisions can be found here: https://github.com/tpoisot/ms_qr/issues?labels =Frund&page=1&state=closed.

REVISED
species are more likely to interact together) to trait related 27 (pollination depends on the flower and insect having compatible morphologies, predators are constrained by the body-size of their preys). The interaction within these different families of mechanisms will drive heterogeneity in interaction strength 28 . Yet, the analysis of binary matrices (is there an interaction between a pair of species, or not), still has relevance to identify properties that are conserved across systems 29 , especially given that one could argue that quantitative information on interaction strength is an additional level of information. The systems analyzed in this section are represented by their adjacency matrix, describing the presence or absence of an interaction. Bipartite networks have further been transformed into unipartite networks before analysis.
Data and analysis I used the Louvain method 30 to detect modules, due to its rapidity and efficiency on large networks. The Louvain method works in two steps: first it optimizes modularity locally, through clustering of neighboring nodes. These clusters are, in the second steps, aggregated together, until modularity ceases to increase. This method is known to give values of modularity comparable to what is found using e.g. simulated annealing, and has been observed to give modules that have a functional relevance 30 . Once the partition is returned by the Louvain method, I recorded its realized modularity Q′ R , and its modularity Q (using the Newman and Girvan 31 measure).
For each network, I compared the values of Q and Q′ R on the empirical networks to their random estimate using a network null model. Because random networks will by chance (here meaning, as expected by networks having a given connectance and thus degree distribution, Poisot and Gravel 32 ) display a modular (among other) structure, it is important to confront the empirical measures of both Q and Q′ R to their random expectations. The null model is defined as follows. For each node n of the network, I measured its degree d n , its number of successors (the number of node it links to, or generality in ecological terms, as per 33 ) g n , and its number of predecessors (the number of nodes that link to it, or vulnerability) v n . In each random network, for each pair of nodes (i, j), the probability that i interacts with j is given by (3) and conversely for P(j → i). This null model allowed the generation of pseudo-random networks through a Bernoulli process (in each replicate, the occurrence of a link is randomly determined), with the same expected connectance, and the same expected distribution of degrees, generality, and vulnerability, as the original one (these properties are also conserved at the node level). For each of the 290 networks, 1000 pseudo-random replicates are generated. For each of them, the average value of Q R and Q′ R are estimated along with their 90% confidence interval. When the empirical value lies outside the confidence interval, it can be assumed that the modular structure of the network is different than expected by chance.

Results and discussion
There is a strong, positive relationship, between the values of Q′ R and the values of Q (Pearsons's product-moment correlation coefficient, as implemented in R 2.15 34 , ρ = 0.64, 288 d.f., p < 10 -6 ), i.e. networks for which a high modularity is detected tend to have relatively few between-module links ( Figure 2). It is worth noting There exists a strong, positive relationship between the two variables. Worth noting is the fact that, for some networks, the best partition resulted in negative versions of Q′ R , i.e. there were more interactions between than within modules. Each dot corresponds to a network. of the network. Because the dataset presents these contrasted situations, it allows us to understand how the measure reacts to different network structures. Depending on whether the true modularity, or the realized modularity, is the most relevant metric of the processes studied, the interpretation of the null models for these networks will be different. For both the walktrap and edge-betweenness methods, several networks had negative values of Q′ R , which indicates that the "best" community partition had more links between than within modules. The spinglass method had, by contrast, less than 8% of all networks with values of Q′ R lower than 0, meaning that this algorithm should be prefered when one wants to group nodes in densely connected clusters. This result reinforces the statement made by Thébault 7 , i.e. that several modularity optimisation methods will return best modular structures that widely differ in their properties; thus, there is a need for a posteriori comparison of these outputs. that some Q′ R values were negative: in some cases, the best community division resulted in more interactions between than within modules. This result highlights why using an a posteriori measure is useful: other measures of modularity do not reveal the fact that there were more interactions between than within modules. In the dataset examined, most of the networks with a modularity lower than 0.2 had a negative realized modularity. This result suggests that discussing the modularity of such networks makes little sense, as their modules are not more densely connected, within a module, than other random collections of nodes within the graph. Q and Q′ R have different relationships with connectance ( Figure 3). Increased connectance values resulted in lower modularity (ρ = -0.61, 288 d.f., p < 10 -6 ), but had no impact on Q′ R . This is a desirable property, as it allows easy comparison with the Q′ R values of networks with extremely different connectances.

Relationships between raw and realized modularity
There is a linear relationship between the deviation from random expectation of Q and Q′ R (ρ = 0.78, 288 d.f., p < 10 -6 - Figure 4). The deviations (respectively ΔQ and ΔQ′ R ) are calculated as the empirical value, minus the average of the values on the networks generated by the null model. As an example, a ΔQ less than zero indicates that the empirical network is less modular than expected by chance. Confidence intervals for the average of the null models were typically very narrow (not represented in the figure to avoid cluttering -see associated original dataset), probably owing to the fact that the null model is restrictive on the type of networks which are generated. It is worth noting that for some networks, the diagnostic of the null model analysis is conflicted. In a vast majority of the situations, this corresponds to networks having a lower modularity than expected by chance, yet having a higher realized modularity (dots in the upper left corner of Figure 4). In this type of situation, whereas one would usually conclude that the networks are not significantly modular, the identified modules are nonetheless more densely connected (internally) than they are with the rest other measures of modularity, but is applied a posteriori. As such, it can help choose the "best" community partition according to the property of the network that one wants to maximize. For example, choosing the partition giving the lowest Q′ R can help identify which species are more likely to act as connectors between different modules. Ultimately, this information may have some practical relevance as a decision tool. Saavedra et al. 5 showed that different nodes contribute differently to overall network properties. In a context in which networks are increasingly being used as management tools to adress e.g. conservation or pest management 8 , knowing the realized modularity, and developing methods to estimate which species have the highest impact on it, can allow the design of efficient policies to maximize, or decrease, the ability of network modules to interact.

Competing interests
No competing interests were disclosed.

Grant information
TP is funded by a PBEEE-FQRNT post-doctoral scholarship, and thanks the EEC Canada Research Chair for providing computational support.
The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.

Acknowledgements
Thanks are due to the maintainers and contributors of the free networkx, scipy, igraph and numpy packages used in this project, and to Scott Chamberlain for discussions. Although the agreement between the two measures is good (see main text for statistics), some networks are detected as having a higher than expected realized modularity Q′ R , despite a lower than expected modularity Q. Each dot correspond to a network.

Conclusions
The Q′ R measure presented here allows the estimation of the proportion of interactions established between different modules in a network. This measure can be analyzed much in the same way as 1.

I have read this submission. I believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.
No competing interests were disclosed. I question whether Q' is generally useful for choosing which community partition to use. For choosing the best partition for a particular purpose, I think it would be most efficient to use the metric of choice during the optimisation and not . In my view, a simple a posteriori a posteriori metric is mostly useful for presenting and describing modularity. For this purpose, I would prefer Q over Q' because it makes even less assumptions. Fig. 4 still suggests to me that most of the empirical networks used here are not more modular than expected by chance (more negative than positive deltaQ values) and I am thus still uncertain how suitable the dataset is for exploring modularity.
Less fundamentally, in the comparison of the different algorithms from the package I am still igraph missing the percentage of Q' that were below 0 for the walktrap and edge-betweenness method, in order to compare it to the 8% for the spinglass method (currently it only says "several"). In conclusion, I think the metric Q presented here can be helpful, but should be applied with caution.

I have read this submission. I believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard, however I have significant reservations, as outlined above.
No competing interests were disclosed.

Competing Interests:
Author Response 06 Jan 2014 , Université du Québec à Rimouski, Canada Timothée Poisot I believe these points were all addressed in the revision and associated replies. I would be willing to provide more arguments, but the referee is merely stating their feeling or ideas, not making any factual criticism of the paper. In these circumstances, it is very hard for me to decide what to revise.
No competing interests were disclosed. This article suggests a simple intuitive measure of network modularity. The suggested measure, Q'R, is related to established measures but calculated slightly differently. It is proposed as an a posteriori measure, which means it is not suggested to be used for assigning nodes (e.g. species) to modules, but only to evaluate partitions based on other methods that calculate modularity, identify modules and assign nodes to them.
In principle I welcome the suggestion of a simple, easy to interpret measure. The metric suggested here can help presenting modularity. I see that the amount of between-module links in relation to within-module links may have direct functional consequences. Established measures of modularity measure basically the same, they only correct for the expectation of within-module links in non-modular random networks in a different way.
However, I have a number of serious concerns making the study potentially misleading. These concerns include reservations about whether the analyses address the study aim, whether the dataset is suitable for testing modularity, how the proposed metric is interpreted and that it is suggested as an a posteriori measure.

General issues:
The study aim set out in the abstract and introduction, to compare different methods and approaches detecting modularity, is not reflected by the analyses. Neither is a functional meaning of the new metric detecting modularity, is not reflected by the analyses. Neither is a functional meaning of the new metric demonstrated to support the case that the metric can be used to evaluate other methods, and decide which method to use. The abstract claims that new insights are gained about the modularity of the food webs in the empirical example dataset, but I struggle to find these new insights.
A paragraph added during the revision does some comparison, but it is not integrated with the rest of the paper and neither does it demonstrate the usefulness or added value of the new measure. For the most part, the paper rather compares values of one standard measure of modularity with values for the new metric in an example dataset of 290 unipartite and bipartite food webs. Using one method of module assignment, the paper shows how the two metrics are related to each other, to randomizations of the webs, and to network connectance. The meaning of these relationships for the study purpose is unclear.
Importantly, the usefulness of the empirical dataset for evaluating modularity methods is questionable. Typically, studies proposing modularity methods test them on networks of known modularity. However, the nullmodel analysis brings to attention that the vast majority of the networks used here are not more modular (based on Q) than expected by chance, and even less might be significantly modular. This means that this study tries to evaluate modularity methods on networks that are mostly not modular. This questions the value of the whole study and calls again for external information for validation. If networks are not modular, then the practical value of measuring modularity becomes negligible: the variation in module assignment in networks not significantly modular is probably much less worrying than failure to detect a known modular structure (which is not given here).
The straightforward interpretation of QR is changed in Q'R, the version the author describes as being scaled between 0 and 1, only to report negative values later on in the paper (Fig. 2). For networks of unknown modularity, Q'R can actually take values between -1 and 1. Furthermore, the notion that negative values of Q'R detect cases of spuriously significant modularity is not generally correct. The threshold of meaningful modularity depends on the purpose and may be above or below Q'R =0.
This brings me to a fundamental problem with the study -what is modularity and why should it be measured? The author states that the new metric "makes no assumption about what modularity is". If this is really the case, then there is no point in defining a measure for it. To be useful, an assumption about what is being measured has to be made. This questions the claims and even policy recommendations made by the author. The difference in concepts and goals is likely a major reason why previous methods differ (e.g. unipartite vs. bipartite modularity suggested by ). Only when a concept of Guimera , 2007 et al. interest is defined can methods be compared in how well they serve the purpose.
I am not sure how useful the whole idea of an measure is. The author stresses that the a posteriori measure is not aimed at maximizing modularity in an algorithm, but just to select which algorithm to use. This is not convincing: either the measure reflects the property of interest, then it should be maximized in the first place in the algorithm to find the best partition; or it is not a sensible measure, then it cannot be used for selection at all. The approach proposed here appears very inefficient and almost certainly not to give the best partition. Furthermore, any measure of modularity could be calculated or during a posteriori modularity optimization. The description of this index specifically as an measure gives no real a posteriori sense, without additional data or simulations showing that it is more meaningful than others. If the functional meaning was demonstrated, there could be some value in using it for those who a posteriori don't have access to source algorithms.

Alternative methods (algorithms) paragraph:
As said above, this is not connected to the rest of the paper. Of course it improves the paper to consider As said above, this is not connected to the rest of the paper. Of course it improves the paper to consider alternative methods for module assignment. However, this paragraph has several shortcomings. First, restricting this analysis to the unipartite networks makes it hard to compare to the other results. Second, it remains unclear why this focuses on the correlation between Q and Q'R. The modularity of the partition returned by each method would be compared more directly by comparing the values of Q or Q'R between methods. At the moment, for judging the three methods the reader is just left at guessing that "several" negative values (for methods walktrap and edge-betweenness) are more than "less than 8%" (method spinglass). Third, it looks like an inconsistent ad-hoc addition: citations for the methods and the igraph library (package) are missing, the methods are not mentioned before or described and correlation coefficients are called r here but rho above.

Null model:
The description of the nullmodel leaves unclear whether the connectance and degree are fixed exactly or just determine the expected value probabilistically. Moreover, the nullmodel is discussed as reflecting "chance". Given that many links likely remain unobserved in ecological network datasets, a reasonable simulation of chance should ideally consider detection probability. Binary network data (e.g. the data used here) are often problematic: ecological network data are virtually always just samples of all realized interactions -this likely applies to the examples used here (even expert opinion may be influenced by observation bias). This can lead to strong biases in measures of network structure between the real web and its sample, but these problems are ignored here. As the simulations are called "pseudo-random", they may be acceptable within the constraints of binary data -which then casts questions about the usefulness of the test dataset for the study purpose (see above).

Unipartite vs. bipartite webs:
It should be better explained how the different data types were handled with the same methods. Bipartite networks have additional (conceptual) ambiguities in how modularity should be calculated, which may be a core reason for discrepancy between modularity methods ( , ). To be Guimera .

, 2007 et al
Thébault, 2013 able to interpret the data better, it is warranted to present or identify the unipartite and bipartite webs separately in the graphs and results.

Minor points:
More information on the datasets should be provided; the bipartite dataset is not even found in the reference provided for it, but must be traced back several steps to the original reference.
Why is an algorithm chosen that is recommended for large networks (many thousands to millions of nodes, ) when the webs analyzed here have less than 200 nodes? Blondel , 2008 et al.
Without defining the purpose or demonstrating the functional meaning of Q'R, it is difficult to know whether no correlation with connectance is desirable or not.
"Results" should actually be entitled "Results and Discussion".
The terminological differentiation between true modularity and realized modularity is confusing.
Overall, the study is inconsistent and doesn't live up to its promises. A study evaluating modularity measures should look at additional information to validate it (especially if it is not a formal comparison of multiple metrics). As shown by previous papers on the topic, this additional information could be the correspondence to biological traits in empirical networks (e.g. )  Figure 2 is not surprising. What is more interesting about Figure 2 is that it shows that below a certain value of Q (~ 0,2 ?) it is not sensible to talk about modularity even if the empirical data is more modular than a random system. In such cases, the presented method seems useful to evaluate results.

Other minor revisions
An earlier reference could be used for the use of modularity in biogeographic networks instead of R An earlier reference could be used for the use of modularity in biogeographic networks instead of (reference 6 The proposed index of modularity is of striking simplicity -and thus likely to be prone to artifacts. In the opening paragraph, Poisot forgot to mention that random networks are also modular. Thus, a Q_R > 0 means, in itself, nothing, as Poisot rightly assumes when employing a null model. The typically log-normal abundance of species in nature will introduce apparent structure into networks, even if the links simply reflect probabilistic interactions (i.e. any species interacts more with a common than a rare species). Thus, without a null model correcting for number of species, for their abundance and for the possibility of random networks also being modular, any index may report only spurious, artefactual results. Poisot uses a null model, but because his example data are binary networks (containing no information about the strength of a link), the best he (or anyone) can do is to use a null model based on degrees, which is only a very poor reflection of the actual abundance. Given that often more than a third of the species in a network are singletons, I believe that their contributions to modularity are overemphasized by any binary measure.

Suggested Revisions:
1. Simulate networks (ideally weighted ones) and compare their Q_R values to quantitative null models. How much information does Q_R (and Q) actually contain? 2. Comparison of Q_R not only with Q and connectance but also with other network metrics, such as linkage density or dependence asymmetry (and particularly those with a more or less clear ecological interpretation, such as H2'