Weighted correlation network analysis

Weighted correlation network analysis, also known as weighted gene co-expression network analysis (WGCNA), is a widely used data mining method especially for studying  biological networks based on pairwise  correlations between variables. While it can be applied to most high-dimensional data sets, it has been most widely used in  genomic applications. It allows one to define modules (clusters), intramodular hubs, and network nodes with regard to module membership, to study the relationships between co-expression modules, and to compare the network topology of different networks (differential network analysis). WGCNA can be used as a data reduction technique (related to oblique factor analysis), as a clustering method (fuzzy clustering), as a  feature selection method (e.g. as gene screening method), as a framework for integrating complementary (genomic) data (based on weighted correlations between quantitative variables), and as a data exploratory technique. Although WGCNA incorporates traditional data exploratory techniques, its intuitive network language and analysis framework transcend any standard analysis technique. Since it uses network methodology and is well suited for integrating complementary genomic data sets, it can be interpreted as systems biologic or systems genetic data analysis method. By selecting intramodular hubs in consensus modules, WGCNA also gives rise to network based meta analysis techniques.

History
The WGCNA method was developed by Steve Horvath, a professor of human genetics at the David Geffen School of Medicine at UCLA and of biostatistics at the UCLA Fielding School of Public Health and his colleagues at UCLA, and (former) lab members (in particular Peter Langfelder, Bin Zhang, Jun Dong). Much of the work arose from collaborations with applied researchers. In particular, weighted correlation networks were developed in joint discussions with cancer researchers Paul Mischel, Stanley F. Nelson, and neuroscientists Daniel H. Geschwind, Michael C. Oldham, according to the acknowledgement section in.

Comparison between weighted and unweighted correlation networks
A weighted correlation network can be interpreted as special case of a weighted network,  dependency network or correlation network. Weighted correlation network analysis can be attractive for the following reasons:
 * The network construction (based on soft thresholding the correlation coefficient) preserves the continuous nature of the underlying correlation information. For example, weighted correlation networks that are constructed on the basis of correlations between numeric variables do not require the choice of a hard threshold. Dichotomizing information and (hard)-thresholding may lead to information loss.
 * The network construction gives highly robust results with respect to different choices of the soft threshold. In contrast, results based on unweighted networks, constructed by thresholding a pairwise association measure, often strongly depend on the threshold.
 * Weighted correlation networks facilitate a geometric interpretation based on the angular interpretation of the correlation, chapter 6 in.
 * Resulting network statistics can be used to enhance standard data-mining methods such as cluster analysis since (dis)-similarity measures can often be transformed into weighted networks; see chapter 6 in.
 * WGCNA provides powerful module preservation statistics which can be used to quantify similarity to another condition. Also module preservation statistics allow one to study differences between the modular structure of networks.
 * Weighted networks and correlation networks can often be approximated by "factorizable" networks. Such approximations are often difficult to achieve for sparse, unweighted networks. Therefore, weighted (correlation) networks allow for a parsimonious parametrization (in terms of modules and module membership) (chapters 2, 6 in ) and.

Method
First, one defines a gene co-expression similarity measure which is used to define the network. We denote the gene co-expression similarity measure of a pair of genes i and j by $$s_{ij}$$. Many co-expression studies use the absolute value of the correlation as an unsigned co-expression similarity measure,

$$ s^{unsigned}_{ij}=|cor(x_i,x_j)|$$

where gene expression profiles $$x_{i}$$ and $$x_{j}$$ consist of the expression of genes i and j across multiple samples. However, using the absolute value of the correlation may obfuscate biologically relevant information, since no distinction is made between gene repression and activation. In contrast, in signed networks the similarity between genes reflects the sign of the correlation of their expression profiles. To define a signed co-expression measure between gene expression profiles $$x_{i}$$ and $$x_{j}$$, one can use a simple transformation of the correlation:

$$ s^{signed}_{ij}=0.5+0.5 cor(x_i,x_j)$$

As the unsigned measure $$ s^{unsigned}_{ij}$$ , the signed similarity $$ s^{signed}_{ij}$$ takes on a value between 0 and 1. Note that the unsigned similarity between two oppositely expressed genes ($$cor(x_i,x_j) = -1$$) equals 1 while it equals 0 for the signed similarity. Similarly, while the unsigned co-expression measure of two genes with zero correlation remains zero, the signed similarity equals 0.5.

Next, an adjacency matrix (network), $$A=[a_{ij}] $$, is used to quantify how strongly genes are connected to one another. $$A $$ is defined by thresholding the co-expression similarity matrix $$ S = [s_{ij}] $$. 'Hard' thresholding (dichotomizing) the similarity measure $$ S $$ results in an unweighted gene co-expression network. Specifically an unweighted network adjacency is defined to be 1 if $$s_{ij}>\tau $$ and 0 otherwise. Because hard thresholding encodes gene connections in a binary fashion, it can be sensitive to the choice of the threshold and result in the loss of co-expression information. The continuous nature of the co-expression information can be preserved by employing soft thresholding, which results in a weighted network. Specifically, WGCNA uses the following power function assess their connection strength:

$ a_{ij} = (s_{ij})^\beta $ ,

where the power $$ \beta $$ is the soft thresholding parameter. The default values $$ \beta=6 $$ and $$  \beta=12 $$ are used for unsigned and signed networks, respectively. Alternatively, $$ \beta $$  can be chosen using the  scale-free topology criterion which amounts to choosing the smallest value of $$  \beta $$  such that approximate scale free topology is reached.

Since $$ log (a_{ij}) = \beta log (s_{ij}) $$, the weighted network adjacency is linearly related to the co-expression similarity on a logarithmic scale. Note that a high power $$ \beta $$   transforms high similarities into high adjacencies, while pushing low similarities towards 0. Since this soft-thresholding procedure applied to a pairwise correlation matrix leads to weighted adjacency matrix, the ensuing analysis is referred to as weighted gene co-expression network analysis.

A major step in the module centric analysis is to cluster genes into network modules using a network proximity measure. Roughly speaking, a pair of genes has a high proximity if it is closely interconnected. By convention, the maximal proximity between two genes is 1 and the minimum proximity is 0. Typically, WGCNA uses the topological overlap measure (TOM) as proximity. which can also be defined for weighted networks. The TOM combines the adjacency of two genes and the connection strengths these two genes share with other "third party" genes. The TOM is a highly robust measure of network interconnectedness (proximity). This proximity is used as input of average linkage hierarchical clustering. Modules are defined as branches of the resulting cluster tree using the dynamic branch cutting approach. Next the genes inside a given module are summarized with the module eigengene, which can be considered as the best summary of the standardized module expression data. The module eigengene of a given module is defined as the first principal component of the standardized expression profiles. Eigengenes define robust biomarkers, and can be used as features in complex machine learning models such as Bayesian networks. To find modules that relate to a clinical trait of interest, module eigengenes are correlated with the clinical trait of interest, which gives rise to an eigengene significance measure. Eigengenes can be used as features in more complex predictive models including decision trees and Bayesian networks. One can also construct co-expression networks between module eigengenes (eigengene networks), i.e. networks whose nodes are modules. To identify intramodular hub genes inside a given module, one can use two types of connectivity measures. The first, referred to as $$kME_i=cor(x_i,ME) $$, is defined based on correlating each gene with the respective module eigengene. The second, referred to as kIN, is defined as a sum of adjacencies with respect to the module genes. In practice, these two measures are equivalent. To test whether a module is preserved in another data set, one can use various network statistics, e.g. $$Zsummary$$.

Applications
WGCNA has been widely used for analyzing gene expression data (i.e. transcriptional data), e.g. to find intramodular hub genes. Such as, WGCNA study reveals novel transcription factors are associated with Bisphenol A (BPA) dose-response.

It is often used as data reduction step in systems genetic applications where modules are represented by "module eigengenes" e.g. Module eigengenes can be used to correlate modules with clinical traits. Eigengene networks are coexpression networks between module eigengenes (i.e. networks whose nodes are modules). WGCNA is widely used in neuroscientific applications, e.g. and for analyzing genomic data including  microarray data, single cell RNA-Seq data  DNA methylation data, miRNA data, peptide counts and  microbiota data (16S rRNA gene sequencing). Other applications include brain imaging data, e.g. functional MRI data.

R software package
The WGCNA R software package provides functions for carrying out all aspects of weighted network analysis (module construction, hub gene selection, module preservation statistics, differential network analysis, network statistics). The WGCNA package is available from the Comprehensive R  Archive Network (CRAN), the standard repository for R add-on packages.