Functional clustering of time series gene expression data by Granger causality

Background A common approach for time series gene expression data analysis includes the clustering of genes with similar expression patterns throughout time. Clustered gene expression profiles point to the joint contribution of groups of genes to a particular cellular process. However, since genes belong to intricate networks, other features, besides comparable expression patterns, should provide additional information for the identification of functionally similar genes. Results In this study we perform gene clustering through the identification of Granger causality between and within sets of time series gene expression data. Granger causality is based on the idea that the cause of an event cannot come after its consequence. Conclusions This kind of analysis can be used as a complementary approach for functional clustering, wherein genes would be clustered not solely based on their expression similarity but on their topological proximity built according to the intensity of Granger causality among them.


Background
Gene network analysis of complex datasets, such as DNA microarray results, aims to identify relevant structures that help the understanding of a certain phenotype or condition. These networks comprise hundreds to thousands of genes that may interact generating intricate structures. Consequently, pinpointing genes or sets of genes that play a crucial role becomes a complicated task.
Common analyses explore gene-gene level relationships and generate broad networks. Although this is a valuable approach, genes might interact more intensely to a few members of the network, and the identification of these so-called sub-networks should lead to a better comprehension of the entire regulatory process.
Several in silico methodologies are available for the identification of sub-networks, or clusters, within a given dataset [1][2][3][4][5]. Most of the times, the identified clusters group genes based on similar patterns of expression in time. In a different manner, the identification of Granger  [6] within a network allows the clustering of genes based on their topological proximity in the network [7,8]. Briefly, Granger causality [6] analysis identifies interaction in terms of temporal precedence (the cause comes before its effect) [6] and may generate a set of subnetworks within which Granger causality is intense among genes. As a result, genes are grouped depending on how close they are in terms of Granger causality. Figure 1a illustrates the clustering based on the network topological proximity while Figure 1b shows the clustering based on similar expression patterns.
The concept of Granger causality [6] has been previously shown to help in the identification and interpretation of regulatory networks in time series gene expression datasets [9][10][11][12][13][14][15][16][17][18]. The main advantage of Granger causality analysis in the context of gene expression datasets consists in the fact that each edge of the network represents the information flow from one gene to another [19]. Nevertheless, it is necessary to point out that Granger causality is not effective causality in the Aristothelic sense because it is based on prediction and numerical calculations. Fujita et al. [20][21][22] suggested a concept for the identification of Granger causality between groups of time series. The application was, however, limited to scenarios http://www.biomedcentral.com/1752-0509/6/137 when clusters could be previously defined based on particular data characteristics. Here, we propose a method to define clusters by their topological proximity in the network. For this purpose we introduce an extension of the concept of functional clustering, initially proposed by [23] in neuroscience. In [23], they applied mutual information in order to group the most active brain regions. We are interested in clustering the genes by using the concept of information flow [19] between sets of time series [20]. The gene expression time series are grouped depending on the hidden structure underlying the network topology, in a way that genes which are topologically close in terms of Granger causality are clustered ( Figure 1a). We use the generalization of Granger causality for sets of time series datasets proposed by [20,21] in order to define concepts of distance, degree and flow useful to determine gene sets that highly interact in terms of Granger causality. In other words, we will derive the Granger causality-based functional clustering directly from the time series gene expression data. For this purpose, an approach that allows the identification of the optimum number of clusters for a given dataset is also presented.

Granger causality for sets of time series
Granger causality identification is a potential approach for the detection of possible interactions in a data driven framework couched in terms of temporal precedence. The main idea is that temporal precedence does not imply, but may help to identify causal relationships, since a cause never occurs after its effect.
A formal definition of Granger causality for sets of time series [20] can be given as follows. For the linear case, X j t is Granger non-causal for X i t if the following condition holds: where ρ is the largest correlation calculated by Canonical Correlation Analysis (CCA). In order to simplify both notation and concepts, only the identification of Granger causality for sets of time series in an Autoregressive process of order one is presented. Generalizations for higher orders are straightforward.

Functional clustering in terms of Granger causality
There are numerous definitions for clusters in networks in the literature [24]. A functional cluster in terms of Granger causality can be defined as a subset of genes that strongly interact among themselves but interact weakly with the rest of the network.
A usual approach for network clustering when the structure of the graph is known is the spectral clustering proposed by [25]. However, in biological data, the structure of the regulatory network is usually unknown.
In order to overcome this limitation, we developed a framework to cluster genes by their topological proximity using the time series gene expression information. We developed concepts of distance and degree for sets of time series based on Granger causality, and combined http://www.biomedcentral.com/1752-0509/6/137 them to the modified spectral clustering algorithm. The procedures are detailed below.

Functional clustering
Given a set of time series where p is the number of time series) and a definition of similarity w ij ≥ 0 between all pairs of data points x i t and x j t , the intuitive goal of clustering is to divide the time series into several groups such that time series in the same group are highly connected by Granger causality and time series in different groups are not connected or show few connections to each other. One usual representation of the connectivity between time series is in the form of graph G = (V , E). Each vertex v i in this graph represents a time series gene expression x i t . Two vertices are connected if the similarity w ij between the corresponding time series x i t and x j t is not zero (the edge of the graph is weighted by w ij ). In other words, a w ij > 0 represents existence of Granger causality between time series x i t and x j t and w ij = 0 represents Granger non-causality. The problem of clustering can now be reformulated using the similarity graph: we want to find a partition of the graph such that there is less Granger causality between different groups and more Granger causality within the group.
Let G = (V , E) be an undirected graph with vertex set V = {v 1 , . . . , v p } (where each vertex represents one time series) and weighted edges set E. In the following we assume that the graph G is weighted, that is each edge between two vertices v i and v j carries a non-negative weight w ij ≥ 0. The weighted adjacency matrix of the graph is the matrix W = w ij ; i, j = 1, . . . , p. If w ij = 0, this means that the vertices v i and v j are not connected by an edge. As G is undirected, we require w ij = w ji . Therefore, in terms of Granger causality, w ij can be set as the distance between two time series x i t and x j t . This distance can be defined as Notice that CCA(x i t , x j t−1 ) is the Granger causality from time series x j t to x i t . In the case of sets of time series, just replace x i t and x j t by the set of time series X i t and X j t [20,21]. Since absolute value of CCA ranges from zero to one and the higher the CCA, the higher is the quantity of information flow, it is possible to see that the higher the CCA, the shorter the distance is. Furthermore, it is necessary to point out that the average between CCA( is calculated because the distance must be symmetric. The intuitive idea consists on the fact that the higher is the CCA coefficient, the lower is the distance between the time series (or sets of time series) independent of the direction of Granger causality.
Moreover, notice that the CCA is the Pearson correlation after dimension reduction, therefore, dist(x i t , x j t ) satisfies three out of four criteria for distances: (i) nonnegativity; (ii) identity of indiscernible; and (iii) symmetry; and does not satisfy the (iv) triangular inequality, therefore, Pearson correlation is not a real metric. However, it is commonly used as a distance measure in several gene expression data analysis [26,27]. The main advantage with this definition of distance is the fact that it is possible to interpret the clustering process by a Granger causality concept.
Another necessary concept is the idea of degree of a time series x i t (vertex v i ) which can be defined as where in-degree and out-degree are respectively Notice that in-degree and out-degree represent the total information flow that "enters" and "leaves" the vertex v i , respectively. Therefore, the degree of vertex v i contains the total information flow passing through vertex v i .
Without loss of generality, it is possible to extend the concept of degree of a vertex v i (time series x i t ) to a set of time series (sub-network) X u t , where u = 1, . . . , k and k is the number of sub-networks.
where in-degree and out-degree are respectively Now, by using the definitions of distance and degrees for time series and sets of time series in terms of Granger http://www.biomedcentral.com/1752-0509/6/137 causality, it is possible to develop a spectral clusteringbased algorithm to identify sub-networks (set of time series that are highly connected within sets and poorly connected between sets) in the regulatory networks. The algorithm based on spectral clustering [25] is as follows: Input: The p time series (x i t ; i = 1, . . . , p) and the number k of sub-networks to construct.
Step 1: Let W be the (p × p) symmetric weighted adjacency matrix where Step 2: Compute the non-normalized (p × p) Laplacian matrix L as (Mohar, 1991) Step 3: Compute the first k eigenvectors {e 1 , . . . , e k } (corresponding to the k largest eigenvalues) of L.
Step 4: Let U ∈ p×k be the matrix containing the vectors {e 1 , . . . , e k } as columns.
Step 5: For i = 1, . . . , p, let y i ∈ k be the vector corresponding to the i th row of U.
Step 6: Cluster the points (y i ) i=1,...,p ∈ k with the k -means algorithm into clusters {X 1 , . . . , X k }. For k -means, one may select a large number of initial values to achieve (or to be closer) the global optimum configuration. In our simulations, we generated 100 different initial values. Output: Sub-networks {X 1 , . . . , X k }.
Notice that this clustering approach does not infer the entire structure of the network.

Estimation of the number of clusters
The method presented so far describes a framework for clustering genes (time series) using their topological proximity in terms of Granger causality. Now, the challenge consists in determining the optimum number of sub-networks k. The choice of the number of sub-networks k is often difficult depending on what the researcher is interested in. In our specific problem, one is interested in identifying the clusters presenting dense connectivity within a cluster and sparse connectivity between clusters.
In order to determine the most appropriate number of clusters in this specific context, we used a variant of the silhouette method [28].
Let us first define the cluster index s(i) in the case of dissimilarities. Take any time series x i t in the data set, and denote by A the sub-network to which it has been assigned. When sub-network A contains other time series apart from x i t , then we can compute: which is the average dissimilarity of x i t to A. Let us now consider any sub-network C which is different from A and compute: dist(x i t , C) which is the dissimilarity of x i t to C. After computing dist(x i t , C) for all sub-networks C = A, we set the smallest of those numbers and denote it by we call the neighbor sub-network, or cluster of x i t . The neighbor cluster would be the second-best cluster for time series x i t . In other words, if x i t could not belong to subnetwork A, the best sub-network to belong to would be B. Therefore, b(i) is very useful to know the best alternative cluster for the time series in the network. Note that the construction of b(i) depends on the availability of other sub-networks apart from A, thus it is necessary to assume that there is more than one sub-network k within a given network [28].
After calculating a(i) and b(i), the cluster index s(i) can be obtained by combining them as follows: Indeed, from the above definition we easily see that −1 ≤ s(i) ≤ 1 for each time series x i t . Therefore, there are at least three cases to be analyzed, namely, when s(i) ≈ 1 or s(i) ≈ 0 or s(i) ≈ −1. For cluster index s(i) to be close to one we require a(i) b(i). As a(i) is a measure of how dissimilar i is to its own sub-network, a small value means it is well matched. Furthermore, a large b(i) implies that i is badly matched to its neighboring sub-network. Thus, a cluster index s(i) close to one means that the gene is appropriately clustered. If s(i) is close to negative one, then by the same logic we see that x i t would be more appropriate if it was clustered in its neighboring sub-network. A cluster index s(i) near zero means that the gene is on the border of two sub-networks. In other words, the cluster index s(i) can be interpreted as the fitness of the time series x i t to the assigned sub-network.
The average cluster index s(i) of a sub-network is a measure of how tightly grouped all the genes in the subnetwork are. Thus, the average cluster index s(i) of the entire dataset is a measure of how appropriately the genes have been clustered in a topological point of view and in terms of Granger causality.

Estimation of the number of clusters in biological data
In order to estimate the most appropriate number of sub-networks present in the data set, we estimate the average cluster index s of the entire dataset for each number of clusters k. When the number of identified sub-networks is equal or lower than the adequate number of sub-networks, the cluster index values are very http://www.biomedcentral.com/1752-0509/6/137 similar. However, when the number of identified subnetworks becomes higher than the adequate number of sub-networks, the cluster index value s decreases abruptly. This is due to the fact that one of the highly connected sub-networks is split into two new sub-networks. Notice that these two new sub-networks present high connectivity between them because they are in fact, only one sub-network. In order to illustrate this event, see Figure 2 for an example. In Figure 2a, genes in cluster 1 are highly interconnected. Now, suppose that one wants to increase the number of clusters by splitting cluster 1 into two clusters namely clusters 1 and 5 (Figure 2c). Notice that clusters 1 and 5 are highly connected between them. If the number of clusters is higher than the adequate number of clusters (four, in our case), the value s decreases substantially, since the Granger causality between clusters increases and the within cluster decreases. The breakpoint where the value s decreases abruptly can be used to determine the adequate number of sub-networks. In fact, this can be visually identified by analyzing the breakpoint at the plot similarly to the standard elbow method used in kmeans. However, if one wants to determine the breakpoint in an objective manner, this can be done by adjusting two linear regressions, one with the first q dots and another with the remaining dots, thus identifying the breakpoint (the value q) that minimizes the sum of squared errors ( Figure 3).

Network construction
The network connecting clusters is constructed following procedures previously described [20,21]. Briefly, after Classification Expectation Maximization (CEM) [29] Principal Component Analysis (PCA) is used to remove redundancy and to extract the eigen-time series from each cluster. PCA allows us to keep only the most significant components leading to variability in the dataset, thus reducing the number of variables for subsequent processing. In this study, we retained only components accounting for more than 5% of the temporal variance in each cluster [22]. The eigen-time series are then clustered as described in the section Functional clustering and the network can be inferred by applying the method proposed by [20,21].
The Granger causality between cluster is identified by: whereρ is the sample canonical correlation between the sets X i t and X j t−1 partialized by all information contained in X t minus the set X Then, test where H 0 and H 1 are the null and alternative hypothesis, respectively.

Simulations
Four sets of Monte Carlo simulations were carried out in order to evaluate the proposed approach under controlled conditions. The first scenario represents four sub-networks without Granger causality between them (Figure 4a). The second scenario consists of four subnetworks constituting a cyclic graph (Figure 4b). The third scenario presents a feedback loop between sub-networks A and B (Figure 4c). The fourth scenario is composed of a network with one sub-network (sub-network D) that only receives Granger causality and one sub-network (subnetwork A) that only sends Granger causality (Figure 4d). Since biological data usually possess several highly correlated genes (genes which hold the same information from a statistical stand point), we constructed 10 highly correlated time series for each x i t , i = 1, . . . , 20. In other words, Simulation 1: Simulation 2: Simulation 3: Simulation 4: for i = 1, . . . , 20.

Actual biological data
In order to illustrate an application of the proposed approach, a dataset collected by [30] was used. The work presents whole genome gene expression data during the cell division cycle of a human cancer cell line (HeLa) characterized using cDNA microarrays. The dataset contains three complete cell cycles of ∼16 hours each, with a total of 48 time points distributed at intervals of one hour. The full dataset is available at: http://genome-www.stanford. edu/Human-CellCycle/HeLa/. In order to evaluate our proposed approach, we chose to analyze the same gene set examined in Figure 5 of [10], which comprised a set of 50 genes.

Simulated data
In order to study the properties of the proposed functional clustering method and to check its consistency, we performed four simulations with distinct network characteristics in terms of structure and Granger causality. Table 1 describes the frequency that each number of clusters was identified as optimal in each simulation and time series length. Notice that the accuracy of the method in identifying the correct number of clusters clearly converges to 100% as the time series length increases (the correct number of clusters is four for all the scenarios). The same result was obtained with varying numbers of sub-networks or when Granger causality within clusters increased, demonstrating the consistency of the method. Moreover, both the cluster indices value and the respective standard deviation for each simulation and time series length are described. The average cluster index value was calculated by using the value at the breakpoint as described in Figure 3 in 1,000 repetitions. By analyzing Table 1, it is possible to verify that the longer the time series length, the smaller are the standard deviations and the greater is the silhouette width demonstrating that the method is consistent. Table 2 describes the average of the frequency (in percentage) the time series were correctly clustered for each scenario and each time series length given the correct number of clusters. It is important to point out that the number of correctly classified time series increases as the time series length increases. Table 3 represents the frequency (in percentage) each edge of the simulated network was identified when the estimated number of clusters were correctly identified as four. The correctly identified edges are in bold. Since the p-value threshold was set to 0.05, it is expected to identify ≈ 5% of false positive edges where there is indeed no Granger causality. In fact, where there is no Granger causality, the rate of false positives was controlled to 5%, and where there is Granger causality, the number of identified edges is clearly higher than where there is no Granger causality.

Biological data
By applying the method described in section Functional clustering to the biological dataset, the optimum number of sub-networks was identified as three. Notice in Figure 5 that there is a clear breakpoint when the number of clusters is three.
Once clusters were obtained, the cluster-cluster network ( Figure 6) was modeled by applying the method described in [20,21]. Two of the depicted clusters, clusters one and two, provide interesting material for biological interpretation. Genes belonging to cluster two highlight expected interconnections in cell cycle regulation. For instance, aberrant activation of signal transcription factors NF-κB or STAT3, and alterations in p53 status, have each been reported to affect cell survival individually. The presence of the three genes in the same cluster is in agreement with a recent study which examined the hypothesis that alterations in a signal network involving NF-κB, STAT3 and p53 could modulate expression of proapoptotic BAX and antiapoptotic BCL-XL proteins, promoting cell survival [31]. The authors show that overexpression of p53 together with inhibition of NF-κB or STAT3 induced greater increase in the BAX/BCL-XL ratio http://www.biomedcentral.com/1752-0509/6/137  than modulation of these transcription factors individually. As discussed earlier in this paper, this is a situation in which similar patterns of gene expression are not sufficient to comprehend the biological process. In [10], a network depicting Granger interaction among genes from this same gene dataset was presented. The authors analyzed the network in the context of tumor progression and identified gene-gene connections associated with NF-κB, p53, and STAT3. Here, cluster 1 groups not only NF-κB, p53, and STAT3, but also the functionally associated gene BCL-XL, NF-κB regulator A20 and targets IAP and iκBα. The presence of NF-κB and fibroblast growth factors (FGFs) and receptors (FGFRs) in the same cluster is also in agreement with the previous work. Members of the FGF family and NF-κB have been shown to interact in various contexts and, despite distinct roles, are involved in cell proliferation, migration and survival [32,33]. Even though MCL-1 and P21 play important roles in cell survival, and BAI1 is transcriptionally regulated by P53, the analysis run here clustered them separately from P53 containing cluster. This result suggests that, in the context of this dataset, their interaction is stronger with genes such as c-JUN, also functionally related to cell survival, proto-oncogene MET and tumor suppressor MASPIN, for instance. Also worth noticing is the interaction of this cluster with the two members of cluster 3: FGF5 and FOP. Like the other members of FGF family grouped in cluster 2, FGF5 is involved in cell survival activities, while FOP was originally discovered as a fusion partner with FGFR1 in oncoproteins that give raise to stem cell myeloproliferative disorders. It would be interesting to identify specific details regarding the intensity and direction of the information flow within this cluster for a clearer understanding of their relationship in the context of cell cycle progression.

Discussions
Fujita et al. [20,21] suggested both a concept of Granger causality for sets of time series and a method for its Table 3  We only analyzed the autoregressive process of order one because gene expression time series data, possibly due to experimental limitations, are typically not large. However, if one is interested in analyzing greater orders, one minus the maximum canonical correlation analysis value among all the tested autoregressive orders can be used as the distance measure between two time series.
The clustering algorithm used here is based on the wellknown spectral clustering. Although results were satisfactory, other graph clustering methods may be used. The normalized cuts algorithm proposed by [37], for instance, presents better results in non Gaussian data sets.
Finally, which biological process underlie time series datasets correlation, remains a difficult question to be answered. Studies suggest that correlated genes may belong to common pathways or present the same biological function. However, it is also known that methods based exclusively on correlation cannot reconstruct entire gene networks. Further studies in the field of systems biology might be able to answer this question in the future.

Conclusions
We propose a time series clustering approach based on Granger causality and a method to determine the number of clusters that best fit the data. This method consists of (1) the definition of degree and distance, usually used in graph theory but now generalized for time series data analysis in terms of Granger causality; (2) a clustering algorithm based on spectral clustering and (3) a criterion to determine the number of clusters. We demonstrate, by simulations, that our approach is consistent even when the number of genes is greater than the time series' length.
We believe that this approach can be useful to understand how gene expression time series relate to each other, and therefore help in the functional interpretation of data.