首页 / 文章汇 / 技能干货 / 扫盲知识库

谈谈如何理解进化树上的 Bootstrap 值

  • Alkalinity
  • 1
  • 2026-07-14 13:39:30
  • 原创

很多朋友们画完进化树后,看到节点旁边的数字,98……100……87,于是判断很快就来了:

“这个分支 Bootstrap=100,肯定是真的。”

“这里只有 62,估计不能信。”

“论文里不是常说 Bootstrap 大于 70 就有较高支持吗?”

这些说法听起来都很熟悉,也确实是很多人日常读树、写论文时的习惯。但问题在于,Bootstrap 值到底支持的是什么?它是在告诉我们“这个分支有 90% 的概率是真的”吗?

答案并没有这么简单~

更准确地说,Bootstrap 值反映的是:在对现有数据进行重复抽样之后,一个分支能否稳定地被恢复出来。它衡量的是结果对数据扰动的稳定性,而不是这个分支在自然界中真实存在的概率。这个方法最早由 Felsenstein 系统引入系统发育分析,用来给进化树上的分支提供一种不确定性评估。

这一区别非常关键。因为一旦把 Bootstrap 理解成“正确概率”,后面的很多判断可能都会走偏~

一、Bootstrap 到底是什么?

我们用一个简单例子来理解。

假设你有一组序列比对结果,共有 1000 个位点。通常建树时,软件会用这 1000 个位点推断一棵最优树。但是 Bootstrap 的思路不是重新测序,也不是凭空制造新数据,而是从这 1000 个已有位点中有放回地随机抽样,重新抽出 1000 个位点。

所谓“有放回”,意思是某个位点可能被抽到多次,也可能一次都没有被抽到。

比如原始位点可以简单想象成:

A B C D E F G H I J

一次 Bootstrap 抽样后,可能变成:

A B B C D F G G I I

然后用这个“重抽样数据集”重新建一棵树。重复很多次,比如 1000 次,就会得到 1000 棵 Bootstrap 树。

如果某个分支在这 1000 棵树里出现了 900 次,那么这个分支的 Bootstrap 值就是 90%。

所以,Bootstrap=90% 的直接含义是在这些重抽样得到的树中,有 90% 都恢复出了这个分支。

它不是说这个分支有 90% 的概率是真的。

Felsenstein 最初的思路,就是通过对序列比对矩阵中的“位点列”进行有放回抽样,观察不同重抽样数据得到的树之间有多大变化,从而评估原始树中分支的可靠程度。 Holmes 后来也专门强调过,Bootstrap 在系统发育中的核心用途之一,是评价结果的稳健性或可重复性,而不是简单给“真树”打一个概率分数。

这句话可以作为理解 Bootstrap 的起点:Bootstrap 支持的是“这个分支在数据扰动下是否稳定出现”,而不是“这个分支真实存在的概率”。

二、为什么很多人会误解 Bootstrap?

最常见的误解,是把 Bootstrap 值直接看成正确率。

看到 Bootstrap=90%,就理解成“这个分支有 90% 的概率正确”;看到 Bootstrap=100%,就觉得“这个分支肯定是真的”。这种理解很直观,但并不严谨。

因为 Bootstrap 的所有重抽样,都是从你现有的数据里抽出来的。它评估的是如果现有数据略微变化,这个分支还能不能出现。可是,它并不能自动判断现有数据本身有没有问题。

如果原始数据中存在系统偏差,比如序列比对有明显错误、进化模型选择不合适、某些序列进化速率异常快,或者出现长枝吸引,那么 Bootstrap 可能会非常稳定地重复这个偏差。换句话说,一个错误的分支,也可能得到很高的 Bootstrap 支持。

这也是为什么“100”并不等于“真”。

Bootstrap=100 只能说明在几乎所有重抽样数据中,这个分支都被恢复出来了。它说明这个结果很稳定,但稳定不等于正确。如果数据本身存在偏差,那么 Bootstrap 也可能是在稳定地重复这个偏差。

反过来,Bootstrap 低,也不一定意味着这个分支就是错的。

比如某些类群分化时间很近,序列之间差异很少;或者使用的基因片段太短,真正有系统发育信息的位点本来就不多;又或者不同位点支持不同的拓扑关系。这时 Bootstrap 值偏低,更多时候说明的是现有数据还不足以稳定回答这个问题。

所以低 Bootstrap 更像是在提醒我们这里证据不够稳定,需要谨慎解释。而不是直接宣判这个分支不存在。

三、支持率 90% 就一定可靠吗?

标题里的问题,现在可以回答得更清楚一些了。

Bootstrap=90% 通常是一个值得认真对待的支持信号,但它不能脱离数据和方法单独解释。

同样是 90%,背后的含义可能差别很大。

如果一棵树只用了 200 bp 的短片段,真正有信息的变异位点很少,那么 Bootstrap=90% 虽然看起来高,但仍然要问:是不是少数几个位点在强烈影响结果?是不是序列太少?是不是外群选择影响了拓扑?

如果另一棵树使用了多个基因、上万个可靠比对位点,模型选择也比较充分,不同方法得到的拓扑也一致,那么 Bootstrap=90% 的分量就要重得多。

因此,真正应该问的不是90% 够不够高?而是这个 90% 是在什么数据、什么模型、什么分析条件下得到的?

历史上,很多研究者会把 70% 以上的 Bootstrap 看作“较有支持”的经验界线。这一传统很大程度上受到 Hillis 和 Bull 1993 年研究的影响。他们在特定模拟和实验条件下发现,Bootstrap 超过 70% 的分支,往往具有较高准确性。 但这个结论不能机械理解成“只要超过 70 就一定可信”。它来自特定数据和特定条件,不是适用于所有系统发育问题的统计学定律。

更佳的说法应该是Bootstrap 70% 左右可以作为一个初步参考;90% 往往表示较强的重抽样稳定性;95% 以上通常可视为很强支持。但这些都是经验判断,不是绝对门槛。

早期 Felsenstein 也曾提出,如果某个类群在 95% 或更多 Bootstrap 样本中出现,可以认为有统计学意义上的较强证据。 但在今天的实际分析中,我们仍然需要把它放回具体数据背景中理解。尤其在多基因拼接、基因组尺度数据中,Bootstrap 经常整体偏高,甚至很多分支都接近 100。这时如果只看一个数字,很容易高估结论的确定性。

四、Bootstrap 高,为什么仍然可能不靠谱?

一个高 Bootstrap 至少说明:这个分支对当前数据的重抽样比较稳定。这当然是好事。但它挡不住几类常见问题。

第一类是比对问题。进化树的输入通常是多序列比对。如果某些区域比对不可靠,尤其是插入缺失很多、同源位置难以判断的片段,那么后面再复杂的建树方法也很难把问题完全修正。Bootstrap 只是从这些位点里重新抽样,它并不会自动识别哪些位点本身就不可信。

第二类是模型问题。最大似然法和贝叶斯法都依赖进化模型。如果真实进化过程和模型差得太远,比如不同谱系进化速率差异很大、碱基组成明显偏倚、位点间速率变化处理不足,树形推断就可能受到影响。高 Bootstrap 在这种情况下可能只是说明“模型下的错误很稳定”。

第三类是长枝吸引。这是系统发育分析中的经典陷阱。简单说,就是两个进化很快、分支很长的类群,可能因为积累了大量相似但并非共同祖先遗传下来的变化,而被错误地聚到一起。某些情况下,这类错误关系也可能获得很高支持。

第四类是数据量与信息量不匹配。序列长不等于信息一定多,样本多也不等于分支一定稳。如果真正有系统发育信号的位点很少,或者不同基因之间存在冲突,Bootstrap 数字就需要格外谨慎解释。

这也是为什么在论文中,最好不要只写该分支 Bootstrap=90%,因此关系可靠。更好的表达是在当前数据集和分析模型下,该分支获得较高Bootstrap 支持,说明其具有较好的重抽样稳定性。

五、那 Bootstrap 到底应该怎么看?

首先,看 alignment 是否可靠。比对区域是否经过检查?是否去除了明显难以比对的片段?是否存在大量缺失、N、gap 或低质量序列?

其次,看数据量是否足够。序列长度、变异位点、信息位点数量是否能够支撑这个分支?如果数据本身很短,一个高支持值也需要谨慎。

第三,看模型是否合适。是否做过模型选择?是否考虑了位点间速率差异?是否存在明显长枝、碱基组成偏倚或其他模型违背?

第四,看不同方法是否一致。最大似然树、贝叶斯树、邻接法树得到的关键分支是否大体一致?换模型、换外群、删掉可疑序列后,关键拓扑是否仍然稳定?

第五,看支持值的类型。传统 Bootstrap、UFBoot、SH-aLRT、Bayesian posterior probability 并不是同一类指标,不能简单放在同一把尺子上比较。

比如 IQ-TREE 文档明确提醒,UFBoot 和传统 Bootstrap 的解释不同,不应直接把 BS% 和 UFBoot% 等同;对于单基因树,通常建议 UFBoot ≥95%,并结合 SH-aLRT ≥80% 一起判断,但这些建议不适用于多基因拼接树。

贝叶斯 posterior probability 也经常被误解。它看起来像“概率”,但它是建立在模型、先验和数据共同条件下的后验概率,不等同于 Bootstrap,也不能简单说 posterior probability=0.95 就和 Bootstrap=95% 是一回事。

所以,最合适的读法是Bootstrap 是证据稳定性的一个刻度,而不是系统发育结论的最终裁判。

六、写论文或文章时,怎么表述更好?

Bootstrap=100,说明该分支完全可靠——可以改成:该分支在 Bootstrap 分析中获得 100% 支持,说明其在当前数据集的重抽样检验中具有很高稳定性。

Bootstrap=90%,说明该分支有 90% 的概率正确。——可以改成:该分支获得 90% Bootstrap 支持,表明其在大多数重抽样数据集中能够被恢复,但该值仍需结合比对质量、模型选择和其他证据共同解释。

Bootstrap 低于 70%,说明该分支错误。——可以改成:该分支 Bootstrap 支持较低,提示当前数据对该关系的支持不稳定,相关拓扑应谨慎解释。

这些表达看起来只是文字差异,其实背后是统计理解的差异。前者把 Bootstrap 当成“真相概率”,后者把 Bootstrap 放回了“数据稳定性评估”的位置。

七、结语

Bootstrap 值最有价值的地方是提醒我们:

进化树不是一张确定无疑的谱系图,而是根据有限数据和特定模型推断出来的科学假设。

因此,看到 90%可以说这个分支有较强支持;但不能立刻说它有 90% 的概率是真的。看到 100%,可以说它在当前数据下非常稳定;但不能说它绝对正确。看到低值,也不必马上否定它;它可能只是告诉我们,现有数据还不足以稳定回答这个问题。

真正可靠的进化树判断,从来不只靠节点旁边那一个数字,而要看完整证据链:比对是否可靠,数据量是否足够,模型是否合适,方法之间是否一致,结果是否有合理的生物学解释。

所以,Bootstrap 最该告诉我们的不是“真相已经确定”,而是这个结论在当前数据和方法下,有多稳定。

理解了这一点,才真正开始理解了进化树上的"数字"。

参考文献

[1] Felsenstein, J. 1985. Confidence limits on phylogenies: an approach using the bootstrap.Evolution, 39(4): 783–791.

[2] Hillis, D. M., & Bull, J. J. 1993. An empirical test of bootstrapping as a method for assessing confidence in phylogenetic analysis.Systematic Biology, 42(2): 182–192.

[3] Efron, B., Halloran, E., & Holmes, S. 1996. Bootstrap confidence levels for phylogenetic trees.Proceedings of the National Academy of Sciences, 93(23): 13429–13434.

[4] Holmes, S. 2003. Bootstrapping phylogenetic trees: theory and methods.Statistical Science, 18(2): 241–255.

[5] Felsenstein, J. 1978. Cases in which parsimony or compatibility methods will be positively misleading.Systematic Zoology, 27(4): 401–410.

Minh, B. Q., Nguyen, M. A. T., & von Haeseler, A. 2013. Ultrafast approximation for phylogenetic bootstrap.Molecular Biology and Evolution, 30(5): 1188–1195.

[6] Hoang, D. T., Chernomor, O., von Haeseler, A., Minh, B. Q., & Vinh, L. S. 2018. UFBoot2: improving the ultrafast bootstrap approximation. [7]Molecular Biology and Evolution, 35(2): 518–522.

[8] IQ-TREE Documentation. Frequently Asked Questions: How do I interpret ultrafast bootstrap support values?

  • 点赞 (0人)
  • 收藏 (0人)
Alkalinity
  • 课程数:
  • 文章数:
  • 学习人数: 0
关注
--- 作者文章 ---
  • 暂无内容
作者课程
  • 暂无内容
相关好课严选

官方微信公众号

客服热线:15618809518

【勤学如春起之苗,不见其增日有所长。假以时日,你定会为你的努力学习而倍感骄傲,加油!】