|
| Consistency of the Neighbor-Net Algorithm1Department of Mathematics, University of Auckland, Private Bag 92019, Auckland, NZ 2School of Computing Sciences, University of East Anglia, Norwich, NR4 7TJ, UK
Algorithms for Molecular Biology 2007, 2:8doi:10.1186/1748-7188-2-8 The electronic version of this article is the complete one and can be found online at: http://www.almob.org/content/2/1/8
©
2007 Bryant et al; licensee BioMed Central Ltd. AbstractBackgroundNeighbor-Net is a novel method for phylogenetic analysis that is currently being widely used in areas such as virology, bacteriology, and plant evolution. Given an input distance matrix, Neighbor-Net produces a phylogenetic network, a generalization of an evolutionary or phylogenetic tree which allows the graphical representation of conflicting phylogenetic signals. ResultsIn general, any network construction method should not depict more conflict than is found in the data, and, when the data is fitted well by a tree, the method should return a network that is close to this tree. In this paper we provide a formal proof that Neighbor-Net satisfies both of these requirements so that, in particular, Neighbor-Net is statistically consistent on circular distances. 1 BackgroundPhylogenetics is concerned with the construction and analysis of evolutionary or phylogenetic trees and networks to understand the evolution of species, populations and individuals [1]. Neighbor-Net is a phylogenetic analysis and data representation method introduced in [2]. It is loosely based on the popular Neighbor-Joining (NJ) method of Saitou and Nei [3], but with one fundamental difference: whereas NJ constructs phylogenetic trees, Neighbor-Net constructs phylogenetic networks. The method is widely used, in areas such as virology [4], bacteriology [5], plant evolution [6] and even linguistics [7]. Evolutionary processes such as hybridization between species, lateral transfer of genes, recombination within a population, and convergent evolution can all lead to evolutionary histories that are distinctly non tree-like. Moreover, even when the underlying evolution is tree-like, the presence of conflicting or ambiguous signal can make a single tree representation inappropriate. In these situations, phylogenetic network methods can be particularly useful (see e.g. [8]). Phylogenetic networks are a generalization of phylogenetic trees (see Figure 1 for a typical example of a phylogenetic network). In case there are many conflicting phylogenetic signals supported by the data, Neighbor-Net can represent this conflict graphically. In particular a single network can represent several trees simultaneously, indicate whether or not the data is substantially tree-like, and give evidence for possible reticulation or hybridization events. Evolutionary hypotheses suggested by the network can be tested directly using more detailed phylogenetic analyses and specialized biochemical methods (e.g. DNA fingerprinting or chromosome painting).
For any network construction method, it is vital that the network does not depict more conflict than is found in the data and that, if there are conflicting signals, then these should be represented by the network. At the same time, when the data is fitted well by a tree, the method should return a network that is close to being a tree. This is essential not just to avoid false inferences, but for the application of networks in statistical tests of the extent to which the data is tree-like [9]. In this paper we provide a proof that these properties all hold for Neighbor-Net. Formally, we prove that if the input to NeighborNet is a circular distance function (distance matrix) [10], then the method returns a network that exactly represents the distance. Circular distance functions are more general than additive (patristic) distances on trees and, thus, as a corollary, if Neighbor-Net is given an additive distance it will return the corresponding tree. In this sense, Neighbor-Net is a statistically consistent method. The paper is structured as follows: In Section 2 we introduce some basic notation, and in Section 3 we review the Neighbor-Net algorithm. In Section 4 we prove that Neighbor-Net is consistent (Theorem 4.1). 2 PreliminariesIn this section we present some notation that will be needed to describe the Neighbor-Net algorithm. We will assume some basic facts concerning phylogenetic trees, more details concerning which may be found in [11]. Throughout this paper, X will denote a finite set with cardinality n. A split S = {A, B} (of X) is a bipartition of X. We let Ϭ = Ϭ(X) = {{A, X\A}|∅ ⊂ A ⊂ X} denote the set of all splits of X, and call any non-empty subset of Ϭ(X) a split system. A split weight function on X is a map ω: Ϭ(X) → ℝ≥0. We let Ϭω denote the set {S ∈ Ϭ|ω(S) > 0}, the support of ω. Let Θ = x1, ..., xn be an ordering of X. A split S = {A, B} is compatible with Θ if there exist i, j ∈ {1, ..., n}, i ≤ j, such that A = {xi, ..., xj} or B = {xi, ..., xj}. Note that if a split is compatible with an ordering Θ it is also compatible with its reversal xn, ..., x2, x1 and with ordering x2, ..., xn, x1. We let ϬΘ denote the set of those splits in Ϭ(X) which are compatible with ordering Θ. A split system Ϭ' is compatible with Θ if Ϭ' ⊆ ϬΘ. In addition a split system Ϭ' ⊆ Ϭ(X) is circular if there exists an ordering Θ of X such that Ϭ' is compatible with Θ. Note that any split system corresponding to a phylogenetic tree is circular [[11], Ch. 3], and so circular split systems can be regarded as a generalization of split systems induced by phylogenetic trees. A split weight function ω is called circular if the split system Ϭω is circular. A distance function on X is a map d: X × X → ℝ≥0 such that for all x, y ∈ X both d(x, x) = 0 and d(x, y) = d(y, x) hold. Note that any split weight function ω on X induces a distance function dω on X as follows: For a split S = {A, B} ∈ Ϭ(X) define the distance function or split metric dS by and put for all x, y ∈ X. A distance function d is called circular if there exits a circular split weight function ω such that d = dω. An ordering Θ of X is said to be compatible with d if there exists ω such that d = dω and Ϭω ⊆ ϬΘ. Note that the representation of a circular distance function d is unique, i.e., if d = Circular distances were introduced in [10] and have been further studied in, for example, [12] and [13]. Just as any tree-like distance function on X can be uniquely represented by a phylogenetic tree [[11], ch. 7], any circular distance function d can be represented by a planar phylogenetic network such as the one pictured in Figure 1[14]. The program SplitsTree [9] allows the automatic generation of such a network for d by computing a circular split weight function ω with d = dω. 3 Description of the Neighbor-Net algorithmIn this section we present a detailed description of the Neighbor-Net algorithm, as implemented in the current version of SplitsTree [9]. The Neighbor-Net algorithm was originally described in [2], where the reader may find a more informal description for how it works. For the convenience of the reader we will use the same notation as in [2] where possible. In Figure 2 we present pseudo-code for the Neighbor-Net algorithm. The aim of the algorithm is, for a given input distance function d, to compute a circular split weight function ω so that the distance function dω gives a good approximation to d. The resulting distance function dω can then be represented by a planar phylogenetic network as indicated in the last section.
To this end, NEIGHBOR-NET first computes an ordering Θ of X, and then applies a non-negative least-squares procedure to find a best fit for d within the set of distance functions {dϕ|ϕ:Ϭ(X) → ℝ≥0, Ϭϕ ⊆ ϬΘ}. More details concerning the least-squares procedure may be found in [2]: Here we will concentrate on the description of the key computation for finding an ordering Θ of X, which is detailed in the procedure FINDORDERING. An (ordered) cluster is a non-empty finite set C together with an ordering ΘC = c1, ..., ck of the elements in C, k = |C|. Two elements a, b ∈ C are called neighbors if there exists i ∈ {1, ..., k - 1} such that a = ci and b = ci+1, or b = ci and a = ci+1. The input of the procedure FINDORDERING consists of a set The procedure FINDORDERING calls itself recursively. Apart from the base case (line 5 of Figure 2), where the recursion bottoms out, two different cases are considered – the reduction and selection cases (lines 7–15 and lines 17–22 of Figure 2, respectively). In the reduction case a cluster C ∈ where α, β and γ are positive real numbers satisfying α + β + γ = 1 (note that these formulae slightly differ from the ones given in [2] in which there is a typographical error). In the current implementation of Neighbor-Net the values α = β = γ = 1/3 are used. When FINDORDERING is recursively called with the new collection This completes the description of the reduction case. We now describe the selection case. Note that in view of line 6 this case only applies if every cluster in and select C1, C2 ∈ where m is the number of clusters in
put
We then choose an ordering ΘC' in which x1 and x2 are neighbors and for which every two elements that were neighbors in C1 or C2 remain neighbors. This completes the description of the selection case, and hence the description of the procedure FINDORDERING. 4 Neighbor-Net is consistentIn this section we prove the consistency of Neighbor-Net: Theorem 4.1 If d: X × X → ℝ≥0 is a circular distance function, then the output of the Neighbor-Net algorithm is a circular split weight function ω: Ϭ(X) → ℝ≥0 with the property that d = dω. The key part of the Neighbor-Net algorithm is the procedure FINDORDERING. We will show that, for a circular distance function d = dω on X, the call FINDORDERING({{x}|x ∈ X}, d) will produce an ordering Θ of X that is compatible with d. The non-negative least squares procedure finds the distance function in {dϕ|ϕ: Ϭ(X) → ℝ≥0, Ϭϕ ⊆ ϬΘ} that is closest to d. As this set of distance functions includes dω, the least squares procedure returns exactly d = dω, proving the theorem. We focus, then, on the proof that FINDORDERING behaves as required: Theorem 4.2 Let d: Y × Y → ℝ≥0 be a distance function that is induced by a circular split weight function ω: Ϭ(Y) → ℝ≥0. In addition, let We present the proof of this result in the remainder of this section. Suppose that the algorithm FINDORDERING is called with input The base case of the induction is |Y| ≤ 3. In this case the set of splits ϬΘ equals Ϭ(Y) for every ordering of Y. In particular, any ordering of Y that is compatible with We now assume that |Y| > 3 and make the following induction hypothesis: If there exists an ordering compatible with distance function d' and ordered clusters There are two cases to consider. In the first case, 4.1 Case 1: The reduction caseSuppose that there is C ∈ Proposition 4.3 If Proof: Suppose that Since Case 1: |{ Case 2: |{ The other inequalities can be derived in a completely analogous way. Case 3: |{ The other inequality The procedure FINDORDERING calls itself recursively with Proposition 4.4 The ordering Θ is compatible with collection Proof: Since Let orderings Case 1: j ≤ 3. Then, clearly, S is compatible with Θ. Case 2: j ≥ 4 and i = 1. Define A' = {z1, ..., zj-1} and the split S' = {A', Y'\A'} of Y'. Then we can express ω'(S') in terms of d' as follows (cf. [12]): Thus, ω'(S') > 0. Hence, the split S' is compatible with the ordering Θ' of Y'. But then the split S is compatible with the ordering Θ of Y. Case 3: j ≥ 4 and 2 ≤ i ≤ 3. We only consider the situation when i = 2; the situation i = 3 is completely analogous. Define A' = {z2, ..., zj-1} and the split S' = {A', Y'\A'} of Y'. With a similar calculation as made for Case 2 we obtain ω'(S') ≥ (α + β)ω(S). Hence, ω'(S') > 0 and, thus, S' is compatible with Θ'. But then S is compatible with Θ. Case 4: j ≥ 4 and i = 4. This case is similar to Case 2. Define A' = {z4, ..., zj-1} and S' = {A', Y'\A'}. We obtain ω'(S') ≥ ω(S). Hence, as for Case 2, ω'(S') > 0 and, thus, S is compatible with Θ. Case 5: j ≥ i ≥ 5. Define the split S' = {A, Y'\A}. Then we have ω'(S') = ω'(S') > 0. Hence, S' is compatible with Θ' and, thus, S is compatible with Θ. ■ 4.2 Case 2: The selection caseNow suppose that there are no clusters C ∈ In line 17 the algorithm selects two clusters that minimize (3): where Note that Proposition 4.5 Let d: M × M → ℝ≥0 be a circular distance function and Θ = x1, ..., xn be an ordering of M that is compatible with d. Let M' = (M\{x1, x2}) ∪ {y} where y is a new element not contained in M. Define a distance function d': M' × M' → ℝ≥0 as follows: where λ is a real number with the property that 0 <λ < 1. Then the following hold: (i) d' is circular and compatible with ordering y, x3, ..., xn of M'. (ii) If z1, ..., zn-1 is an ordering of M' that is compatible with d' then at least one of the orderings x1, x2, z2, ..., zn-1 or x2, x1, z2, ..., zn-1 of M is compatible with d. Proof: (i) and (ii) can be proven using convexity arguments, or in a way analogous to our proof of Propositions 4.3 and 4.4, respectively. ■ Proposition 4.6 The distance function Proof: We use multiple applications of Proposition 4.5, once for each cluster in We now have the more difficult task of showing that clusters C1 and C2 selected by the Q-criterion, that is by minimizing (3), are adjacent in at least one ordering of the clusters that is compatible with Lemma 4.7 Let Θ = x1, x2, ..., xn be an ordering of M that is compatible with circular distance d on M and suppose that 3 ≤ r ≤ ⌈n/2⌉. Let S = {A, M\A} be a split compatible with Θ where A = {xi, ..., xj}. Define QS: M × M → ℝ by and let (i) If min{|A|, |M\A|} > 1 and |A ∩ {x1, xr}| = 1 then λ(S) < 0. (ii) Any other split S compatible with Θ satisfies λ(S) ≤ 0. Proof: Expanding λ(S) gives We divide the rest of our argument into five cases which are summarized in Table 1. For these cases straight-forward calculations yield the entries of Table 2. Using Table 2 we compute λ(S) in each case. Table 1. List of cases in the proof of Lemma 4.7 Table 2. Precomputed expressions used in the proof of Lemma 4.7 Case (i): We obtain λ(S) = 2(j - 1)(j + 1 - r) + 2(j - 1)(j + 1 - n). Hence, λ(S) = 0 if j = 1 and λ(S) < 0 if j ≥ 2. Case (ii): We obtain λ(S) = 0. Case (iii): We obtain λ(S) = (j - i)(4(j - i) - 2n + 8). Thus, since j - i ≤ r - 3 ≤ (n + 1)/2 - 3, λ(S) = 0 if i = j and λ(S) < 0 if i <j. Case (iv): We obtain λ(S) = 2(i - r)(n - 2 - (j - i)) + 2(2 - i)(j - i). Thus, since j - i ≤ n - 3, λ(S) < 0 if i <r. If i = r then λ(S) = 0 if j = r and λ(S) < 0 otherwise. Case (v): We obtain λ(S) = 0. ■ Theorem 4.8 Let M be a set of n elements and d: M × M → ℝ≥0 be a circular distance function. Suppose that x, y minimize Then there is an ordering of M that is compatible with d in which x and y are adjacent. Proof: Let Θ = x1, ..., xn be an ordering of M that is compatible with d. Suppose that Q(x1, xr) ≤ Q(x, y) for all x, y where, without loss of generality, 2 ≤ r ≤⌈n/2⌉. If r = 2 then we are done, so we assume r ≥ 3. Let ω be the (circular) split weight function for which d = dω, so Θ is compatible with ω. Let Θ* be the ordering obtained by removing xr from Θ and re-inserting it immediately after x1. We claim that Θ* is also compatible with ω. As in Lemma 4.7, for any split S compatible with Θ we define By the choice of x1 and xr we have Since Q is linear, and d = ΣS∈Ϭ(X)ω(S)dS by Lemma 4.7 we have Now consider any split S compatible with Θ but not Θ*. Then S satisfies the conditions in Lemma 4.7 (i), giving λ(S) < 0 and hence ω(S) = 0. Thus there are no splits in the support of ω that are not compatible with Θ*, and Θ* is compatible with ω and, hence, d. Thus x1 and xr are adjacent in an ordering Θ* compatible with d. ■ Corollary 4.9 Let C1 and C2 be the two clusters selected in line 17 of procedure FINDORDERING. Then there exists an ordering Θ* = D1, ..., Dk of After selecting C1 and C2 the procedure FINDORDERING removes these clusters from the collection and replaces them with their union C' = C1 ∪ C2. It also assigns an ordering ΘC' to the cluster. FINDORDERING is then called recursively. The following is directly analogous to Proposition 4.3. Proposition 4.10 There exists an ordering of Y that is compatible with collection Proof: We already know by Proposition 4.9 and Proposition 4.6 that there exists an ordering If x1 ∈ C1 and x2 ∈ C2 are selected such that Case 1: C1 = {y1, y2}, x1 = y1 and x2 = y3. We want to show that ordering Ϭ' = {{{y2, ..., yi}, Y\{y2, ..., yi}}|3 ≤ i ≤ n - 1}. By a case analysis similar to the one applied in the proof of Lemma 4.7 we obtain the following: • • But then, since Case 2: C1 = {y1, y2}, C2 = {y3, y4}, x1 = y1, x2 = y4 and n ≥ 5. We want to show that Ϭ' = {{{y2, ..., yi}, Y\{y2, ..., yi}}|3 ≤ i ≤ n - 1} ∪ {{{y4, ..., yi}, Y\{y2, ..., yi}}|5 ≤ i ≤ n} we must have ω(S) = 0. Thus, ω is compatible with Now, by Proposition 4.10, we can apply the induction hypothesis and conclude that the recursive call FINDORDERING( Remark 4.11 Note that we have shown that Corollary 4.9 holds under the assumption that (in view of line 6) every cluster in References
Have something to say? Post a comment on this article! |




on Google Scholar







author email
corresponding author email
Figure 1.



Figure 2.










Figure 3.


























