try ai
科普
编辑
分享
反馈
  • 演化生物信息学

演化生物信息学

SciencePedia玻尔百科
核心要点
  • 系统发育树是代表生命历史的数学模型,物种间的演化分歧可以被量化测量。
  • 区分直系同源(由物种形成事件分离的基因)和旁系同源(由基因复制事件分离的基因)对于准确的演化推断至关重要,并且需要超越简单相似性搜索的方法。
  • 现代系统发育学依赖于最大似然法和贝叶斯推断等概率方法,这些方法使用明确的DNA替换模型来计算给定数据下某一系统发育树的概率。
  • 演化生物信息学的工具促成了强大的应用,包括重建祖先蛋白质、通过保守性识别功能性DNA,以及使用分子钟为生命之树定年。
  • 在将机器学习应用于生物学时,恰当考虑生物数据的共享历史对于稳健的统计分析和避免错误结论至关重要。

引言

我们如何阅读以DNA语言书写的生命故事?演化生物信息学正是破解这一宏大叙事的领域,它融合了遗传学、计算机科学和演化理论,从当今的数据中重建遥远的过去。它提供了一套强大的工具集,用于理解生命在数十亿年间是如何变化、适应和多样化的。该领域解决了一个根本性的知识鸿沟:如何将我们今天观察到的静态基因和基因组序列,转化为一个关于共同祖先、物种形成和适应的动态历史。

本文将引导您了解这一激动人心的学科的核心信条。在第一章“原则与机制”中,我们将探索构成该领域基石的基本概念。您将学习系统发育树——生命历史的数学蓝图,以及同源性、直系同源和旁系同源这些至关重要的遗传关系。我们还将剖析那些计算引擎——从简约法的直观原则到最大似然法和贝叶斯推断的强大概率框架——它们使我们能够从分子数据中构建这些树。随后,在“应用与跨学科联系”中,我们将看到这些工具的实际应用,发现它们如何让我们复活古老蛋白质、精确定位自然选择的印记、为生命之树定年,甚至提高基因组研究的质量。

原则与机制

现在我们对整个旅程有了鸟瞰式的了解,让我们开始动手实践吧。我们究竟如何破译用DNA和蛋白质语言写成的生命脚本?演化生物信息学的魔力不在于单一的发现,而在于计算机科学、统计学和演化理论之间美妙的相互作用。我们将探索其核心原则和巧妙的机制,这些原则和机制使我们能够一步一个演化脚印地重建遥远的过去。

生命历史的蓝图:系统发育树

一切的核心是一个简单而深刻的想法:生命的历史可以被描绘成一棵树。但在这种情境下,“树”是什么?它不仅仅是一个方便的比喻,更是一个具有强大属性的精确数学对象。用图论的语言来说,树是节点(代表物种或基因)的集合,由边(代表演化后裔)连接,并遵循一个关键规则:图中没有环路。这意味着在任意两个节点之间——比如说,你和一只黑猩猩——存在一条且仅一条连接你们的独特祖先路径。

这个属性带来一个明显的推论。如果你想完全切断两个共享共同历史的物种之间的演化联系,你只需要切断一个连接——沿着那条独特路径上的任何一条边都可以做到。然而,如果两个物种源于完全不同的起源(属于一个更大的生命“森林”中的不同“树”),它们本就毫无关联,不需要任何切断。因此,切断连接所需的最少连接数要么是一,要么是零。这个简单的思想实验揭示了我们正在处理的基本结构。

但是,一个简单的无向树仅仅是一张关系图。要把它变成一部历史,我们需要为时间设定一个方向。我们通过指定一个​​根​​节点来做到这一点,它代表了我们树中所有实体的共同祖先。有了根,这棵树突然就充满了生命和意义。边现在有了方向,从根开始,从​​父节点​​流向​​子节点​​。我们可以将一个节点的​​深度​​定义为它到根的距离,作为时间的代理。位于最末端、没有子节点的节点是​​叶节点​​——这些通常是我们拥有数据的现代物种或基因。

借助这种有根的结构,我们可以用前所未有的精度来量化演化关系。两个物种之间的“演化分歧”,比如在一棵假想树中的叶节点H和叶节点D,就是连接它们的路径长度。这条路径从H“向上”追溯到它与D最近的分支点,然后再“向下”到达D。这个分支点具有特殊的重要性:它是它们的​​最近共同祖先(Most Recent Common Ancestor, MRCA)​​。H和D之间的距离可以优雅地计算出来:它等于H的深度加上D的深度,再减去它们MRCA深度的两倍。这个优美的公式将一个视觉路径变成了一个确切的数字,一个量化它们共享和各自历史的度量。

阅读基因之书:同源性、直系同源和旁系同源

现在我们理解了蓝图的结构,让我们来看看写在上面的文本:基因本身。当我们将人类的一个基因与果蝇的一个基因进行比较时,我们真正在寻找什么?

第一个也是最基本的概念是​​同源性​​。当且仅当两个基因共享一个共同的祖先时,它们才是同源的。这是一个二元问题——是或否。它不是相似性的度量。我们不说两个基因“70%同源”。它们要么同源,要么不同源。我们从统计上显著的相似性来推断同源性。想象一下,你用一个人类蛋白质进行数据库搜索,并匹配到了一个酵母蛋白质。原始相似度可能只有30%,这个值处于一个被称为“暮光区”的危险区域,在这个区域,偶然的相似性可能具有欺骗性。然而,真正的仲裁者是统计显著性。像BLAST这样的现代搜索工具提供了一个​​期望值(E-value)​​,它告诉你,在一个那么大的数据库中,纯粹由于偶然性能找到多少个具有该相似度水平的匹配。一个例如1×10−201 \times 10^{-20}1×10−20的E-value是天文数字般的小。它告诉我们这个匹配并非巧合,而是共享演化起源的证据。这两个基因是同源的。

但“同源性”仅仅是故事的开始。演化树由两种主要的分支事件塑造:物种形成和基因复制。这导致了两种至关重要的同源体类型:

  • ​​直系同源​​是因​​物种形成事件​​而分歧的同源基因。想想人类的胰岛素基因和老鼠的胰岛素基因。它们的最后一个共同祖先是人类和老鼠最后一个共同祖先体内的单个胰岛素基因。它们是不同物种中的“同一个”基因。

  • ​​旁系同源​​是因单个谱系内的​​基因复制事件​​而分歧的同源基因。例如,人类基因组包含一整个球蛋白基因家族(α-球蛋白、β-球蛋白、肌红蛋白)。这些都源于很久以前一个祖先球蛋白基因的复制。它们现在是我们自身基因组内共存的、相关的但不同的基因。

区分这两者至关重要,并且不能通过简单的相似性搜索来完成。仅凭一个BLAST匹配结果是不够的。为什么呢?想象一个基因在一个古老的脊椎动物中复制,产生了G1和G2两个拷贝。数百万年后,这个脊椎动物的谱系分裂为人类和老鼠。人类和老鼠都继承了G1和G2。因此,人类的G1是老鼠G1的直系同源,人类的G2是老鼠G2的直系同源。但是人类的G1是人类G2的旁系同源,同时也是老鼠G2的旁系同源!

为了解开这个结,我们需要更复杂的方法。一个强有力的方法是​​基因树-物种树调和​​。我们为整个基因家族构建一个系统发育树,并将其拓扑结构与已知的物种树进行比较。在树形冲突的地方,我们推断发生了复制事件。另一个功能强大且日益流行的方法是观察​​保守共线性​​——即基因在染色体上顺序的保守性。如果一个复制基因组中的两个基因位于大片复制的邻近基因块内,这就是它们源于大规模复制事件(如全基因组复制 (WGD))的确凿证据。这些方法使我们能够正确识别塑造基因历史的事件,避免陷入将最相似的基因幼稚地称为“真正”直系同源的陷阱。

推断的引擎:我们如何构建树

我们有了数据(序列),也知道了我们正在寻找的关系类型(直系同源、旁系同源)。我们如何从不同物种的序列集合中,实际构建出最能解释其历史的树呢?有几种相互竞争的哲学,每一种都有其独特之美。

简约法原则:演化版的奥卡姆剃刀

最古老且最直观的方法是​​最大简约法​​。它基于一个简单而优雅的原则:最好的演化树是需要最少演化变化来解释我们今天所见数据的树。这是应用于分子演化的奥卡姆剃刀。

为了找到最简约的树,我们通过将性状(例如,核苷酸A、C、G、T)映射到叶节点上,并计算产生该模式所需的最少分支变化数,来为每个可能的树拓扑结构评分。变化的成本可以用不同方式定义。对于​​无序简约法​​,任何变化的成本都相同——从A到T的跳跃与从A到G没有区别。任何变化的成本为1,无变化的成本为0。对于其他性状,比如椎骨的数量,我们可能会使用​​有序(Wagner)简约法​​,其中从状态iii到状态jjj的变化成本就是它们之间的步数,即∣i−j∣|i - j|∣i−j∣。从状态0到状态2的变化将花费2,意味着它必须经过一个中间状态1。在所有性状中总分最低的树被宣布为获胜者。

概率革命:似然法与贝叶斯推断

尽管简约法优美简洁,但它有其局限性。它假设演化变化是罕见的,并且在树的不同谱系演化速率差异巨大时可能会被误导。系统发育学的现代纪元由概率方法主导,这些方法将演化视为其本质:一个随机过程。

这些方法——​​最大似然法​​和​​贝叶斯推断​​——建立在​​核苷酸替换模型​​之上。这是对性状随时间可能如何变化的数学描述。这些方法核心的引擎是计算给定一棵树和一个模型下数据的​​似然性​​。似然性是指,如果所提议的树是真实的历史,我们观察到当前序列数据的概率。

单个位点的似然性公式是概率推理的杰作。它由以下公式给出: L=∑xinternalπxρ∏(u,v)∈EPxuxv(tuv)L=\sum_{\mathbf{x}_{\mathrm{internal}}}\pi_{x_{\rho}}\prod_{(u,v)\in E} P_{x_u x_v}(t_{uv})L=∑xinternal​​πxρ​​∏(u,v)∈E​Pxu​xv​​(tuv​) 让我们来解读一下。我们不知道祖先物种(树的内部节点)的序列,所以我们必须考虑每一种可能性。巨大的求和符号∑\sum∑告诉我们,要对所有内部节点所有可能的状态组合进行求和。在求和内部,πxρ\pi_{x_\rho}πxρ​​是树根处状态的概率。巨大的连乘符号∏\prod∏告诉我们,要将树的每一条分支上发生变化的概率相乘。每一项Pxuxv(tuv)P_{x_u x_v}(t_{uv})Pxu​xv​​(tuv​)是在一条长度为tuvt_{uv}tuv​的分支上,父节点uuu的状态xux_uxu​演化成其子节点vvv的状态xvx_vxv​的概率。

这个看起来令人生畏的方程是现代系统发育学的主力。最大似然法寻找能够最大化此似然值的树拓扑和分支长度。贝叶斯方法更进一步。它们将似然性(数据所言)与关于参数的先验信念相结合,以计算​​后验概率​​——即给定数据下树的概率。

这个框架使我们能够进行强大的模型比较。假设我们有两个相互竞争的树,T1T_1T1​和T2T_2T2​。哪一个更能被数据支持?我们可以计算数据在每棵树下的边际似然性,p(D∣T1)p(D \mid T_1)p(D∣T1​)和p(D∣T2)p(D \mid T_2)p(D∣T2​)。这两个值的比率就是​​贝叶斯因子​​,它告诉我们数据应该在多大程度上改变我们对一棵树相对于另一棵树的信念。例如,如果T1T_1T1​的自然对数似然值为−1200-1200−1200,T2T_2T2​为−1203-1203−1203,差异仅为3。但在概率空间中,这意味着支持T1T_1T1​的证据比支持T2T_2T2​的证据强exp⁡(3)\exp(3)exp(3)倍——大约20倍。这就是概率推断的惊人力量:将数据中的细微差异转化为对证据的定量陈述。

置信度与注意事项:我们有多确定?

推断一棵系统发育树是一项巨大的统计估计任务。其结果也仅仅是一个估计值。科学过程的一个关键部分是提问:我们对这个估计有多大信心?我们的结果有多稳定?

评估树分支置信度的最常用方法之一是​​非参数自举法​​。其直觉非常巧妙。你的序列比对,拥有成百上千个位点,是你对演化过程的抽样。自举法会问:“我的结果对于这个样本的微小扰动有多稳健?”它的工作方式是创建许多新的“伪重复”数据集。每个数据集都是通过从原始比对中有放回地抽样位点来构建的,直到其大小与原始比对相同。一些原始位点会被选择多次,而另一些则根本不会被选中。

对于每一个新数据集,你都必须从头开始重复整个树推断过程。为什么?因为自举法旨在近似你的估计器的抽样分布——你用来从数据中得到一棵树的整个复杂算法。固定树然后仅仅微调它是不够的;那无法告诉你一个稍微不同的数据集是否可能更偏好一棵完全不同的树。在这样做数百或数千次之后,你统计原始最佳树中的每个分支(或二分划分)在自举树中出现的频率。一个分支上的95%的数值意味着,在这100次重抽样实验中,有95次的数据一致支持那个特定的物种分组。

但是我们必须追求更深层次的统计诚实。当我们使用概率方法时,我们选择了一个演化模型。我们可能会比较几个模型(例如,严格分子钟与松弛分子钟),并使用像赤池信息准则(AIC)这样的标准来选择“最佳”模型。这是​​模型选择​​。但是,如果我们所有的候选模型都很差怎么办?如果它们中没有一个能很好地描述数据怎么办?

这就是​​模型充分性​​的问题。我们可以使用​​后验预测检验​​来测试这一点。我们使用我们的“最佳”模型来模拟全新的数据集,看看它们是否像我们的真实数据。例如,我们可以检查我们模拟数据中演化速率的方差是否与我们真实数据中的方差相匹配。如果我们的真实数据与模型能产生的数据相比,看起来像一个极端的异常值(例如,预测p值为0.010.010.01),这是一个巨大的危险信号。模型是不充分的——它未能捕捉到真实演化过程的一个关键特征。在这种情况下,我们的模型选择可能只是“从一堆糟糕的模型中选出了最好的那个”。这种批判性的自我评估对于稳健的科学至关重要。

超越树:生命之网

我们花了这么多时间讨论树。但如果生命的历史并非一棵完美、整齐分枝的树呢?演化可能是混乱的。细菌通过​​水平基因转移​​交换基因。植物和一些动物会​​杂交​​。同一组物种中的不同基因可能有相互冲突的历史。在这些情况下,将数据强行拟合到一棵单一的树上可能会产生误导。

为了捕捉这种复杂性,该领域已经发展出构建​​系统发育网络​​的方法。这些网络就像树,但带有额外的连接,可以表示网状演化事件。像​​NeighborNet​​这样的算法可以接受一个物种间的距离矩阵,并且不是将其强行构造成树,而是生成一个能够可视化数据中冲突信号的网络。在一棵树会显示一个单一、不确定的分支顺序的地方,一个网络可以显示一个盒状结构,精美地说明了这种模糊性,或者,可能是一个真实的非树状历史。这提醒我们,我们的模型必须像现实本身一样丰富,而理解生命历史的探索是一段不断演化的发现之旅。

应用与跨学科联系

在探索了驱动演化生物信息学的原则和机制之后,你可能会感到惊奇,但也会有一个实际的问题:这一切究竟是为了什么?构建优雅的演化数学模型是一回事,而用它们来揭示自然界的秘密则完全是另一回事。真正的冒险由此开始。演化生物信息学的工具并非仅仅是学术上的好奇之物;它们集时间机器、显微镜和侦探工具包于一身。它们让我们能够回答生物学中一些最深刻的问题,甚至解决一些与化石或古DNA毫无关系的实际问题。

让我们踏上一段旅程,探索其中的一些应用。我们将看到,通过将DNA视为最终的历史文献,我们如何能够复活已灭绝的蛋白质,精确定位适应的引擎,观察基因组的扩张与收缩,并绘制出生命宏伟的时间线。

复活过去:祖先序列重建

想象一下,你可以穿越时空,收集数百万年前某个生物的蛋白质样本。它会是什么样子?它将如何运作?这不是科幻小说,而是计算生物学中的一项常规任务。利用现代生物的序列,我们可以沿着生命之树回溯,以一定的置信度推断出它们共同祖先的序列。

这个逻辑与历史学家从几份后来充满错误的副本中修复受损古籍的逻辑惊人地相似。如果三个后代物种中有两个在某个位置上是丙氨酸(A),而第三个是甘氨酸(G),那么祖先状态是什么?我们无法确定,但我们可以计算每种可能性的似然性。一个统计框架,通常是连续时间马尔可夫模型,使我们能够量化在演化树的每个分支上发生突变的概率。通过将从一个假定祖先演化到所有观察到的后代所需的演化路径的概率相乘,我们可以为每个祖先的可能性计算总似然性。拥有最高似然性的祖先胜出。

这项被称为祖先序列重建(ASR)的技术非常强大。科学家们随后可以在实验室中合成这些通过计算“复活”的蛋白质,以研究它们的特性。这已被用于研究从病毒蛋白质到生活在原始温泉中的嗜热细菌的酶的各种演化过程。我们不再局限于研究今天存在的生命;我们现在可以直接探索遥远过去的生物学。

寻找功能:解读选择的印记

基因组是一段巨大的DNA,但并非所有部分都同等重要。我们如何找到功能上至关重要的部分——基因、调控开关、结构元件?演化本身提供了答案。自然选择在基因组上留下了不可磨灭的印记,通过学习解读它的信号,我们可以区分重要部分和可有可无的部分。

其中一个最强大的思想是演化保守性。如果某个特定的DNA序列在数亿年的演化过程中保持不变,跨越了庞大的物种群体,那么它一定在执行着极其重要的功能。该区域的任何突变都可能是有害的,并被纯化选择所清除。我们可以通过比较我们在一个位点上观察到的替换数与该位点在中性演化(无选择)情况下预期的替换数来量化这一点。这个差异——“被拒绝的替换”——是作用于该位点纯化选择强度的直接度量。一个大的得分意味着该位点受到强大的功能约束。这种方法以多种形式(如GERP分数)成为ENCODE计划等联盟用来创建人类基因组功能图谱的主要工具之一。

但演化不仅仅是保存旧的;它也关乎创造新的。有时,快速的变化是有益的。这种*正选择*是适应的引擎,驱动新功能的演化。检测它更为微妙,但同样重要。例如,在基因复制事件之后,一个拷贝可以自由探索新的功能空间。我们可以构建复杂的统计模型来提问:在这次复制之后,蛋白质的某个特定部分——比如它的相互作用表面——是否以异常快的速率演化,特别是对于非同义(改变蛋白质的)突变?通过将一个允许在基因树的特定分支上出现这种正选择爆发(ω=dN/dS\omega = dN/dSω=dN/dS比率大于1)的模型,与一个不允许的零模型进行似然性比较,我们可以从统计上精确定位新功能化事件。这使我们能够将一个特定的演化事件(复制)与一个特定的分子机制(蛋白质界面的适应)联系起来。

演化的基因组:动态的零件清单

当我们思考演化时,我们通常关注基因内部的变化。但基因组本身是一个动态的实体。一个基因家族中的基因数量可以随时间扩张或收缩,反映了生物体不断变化的需求。例如,我们自己嗅觉的演化,就是一个我们祖先嗅觉受体基因家族大规模扩张,随后在人类和其他灵长类动物中广泛丢失的故事。

我们如何研究这种“基因组库存管理”?我们可以将基因家族大小的演化建模为一个出生-死亡过程。基因通过复制而“出生”,通过丢失而“死亡”。通过将这种过程的概率模型应用于系统发育树,我们可以估计一个速率参数λ\lambdaλ,它控制着基因随时间增益和丢失的概率。像CAFE(基因家族演化计算分析)这样的框架使用最大似然法来找到最能解释现代物种中观察到的家族大小的λ\lambdaλ,同时对它们祖先所有可能(且未观察到)的家族大小进行积分。这使我们能够识别出在特定基因家族中经历了显著扩张或收缩的谱系,从而为其适应性历史提供关键线索。

编织宏伟的织锦:时间、空间和实践中的树

系统发育树是演化的核心标志。但一个简单的关系分支图仅仅是个开始。演化生物信息学的工具可以将这个简笔画草图转变为一幅丰富、定量的生命历史织锦。

​​为生命之树定年:​​ 我们如何知道恐龙在6600万年前灭绝,或者人类和黑猩猩的共同祖先生活在大约600到800万年前?几十年来,化石记录是我们唯一的指南。现在,我们有了分子钟。其思想是突变以大致恒定的速率累积。通过计算两个物种DNA之间的差异,我们可以估计它们多久前分化。

当然,现实更为复杂。“钟”在不同谱系中可能以不同的速率滴答作响。现代方法接受了这种复杂性,使用“松弛分子钟”模型。在贝叶斯框架中,我们可以将序列数据与化石记录的校准点(例如,“我们有这个支系至少5000万年前的化石”)结合起来。使用像马尔可夫链蒙特卡洛(MCMC)这样的强大算法,我们可以联合估计树的拓扑结构、所有节点的分化时间以及每条分支上的具体演化速率,同时传递来自每个来源的不确定性。结果不仅仅是一棵树,而是一个时间校准树的概率分布,为我们提供一个稳健的“时间演化树”,并对每个估计的日期都有置信区间。

​​重建种群历史:​​ 帮助我们确定物种间分化时间的相同逻辑,也可以用来窥探单个物种更近的过去。这个被称为系统动力学的领域,重建了有效种群大小随时间的变化。溯祖理论的关键洞见是,在一个小种群中,任何两个谱系都会很快找到共同祖先。在一个大种群中,谱系在溯祖合并前会徘徊很长时间。因此,从一个种群中许多个体的基因组构建的家谱中,溯祖事件的间隔直接记录了其历史大小。像贝叶斯天际线图这样的方法可以将这种溯祖等待时间的模式转化为种群大小随时间变化的图表,揭示出与冰河时代、迁徙或病毒性流行病爆发等事件相对应的瓶颈和扩张。

​​解开生命之网:​​ 生命之树并非严格意义上的树。特别是在微生物世界,它是一个密集、纠缠的网络。水平基因转移(HGT)——遗传物质在不相关生物体之间的移动——是演化的一个主要力量。细菌就是这样迅速获得抗生素抗性,古代微生物也是这样共享光合作用等突破性创新的机制的。检测HGT是一项高超的基因组侦探工作。确凿的证据是深刻的系统发育不一致性:单个基因的演化历史与其所在生物体的历史大相径庭。这一主要线索通常由次要证据证实:转移的基因可能具有不同的核苷酸组成(一种“基因组口音”),并且它可能被移动遗传元件(如转座子)的标志性特征所包围,这些是转移事件的“逃逸工具”。

​​一个实际的转折:质量控制:​​ 令人惊讶的是,这些复杂的演化模型还有一个非常实际的用途:发现我们数据中的错误。想象一下,你正在测序一种细菌的基因组,但你的样本被另一种微生物的DNA轻微污染了。会发生什么?最终的基因组组装可能会包含外来DNA的片段。当你构建基因树时,来自这些污染区域的基因将不会与来自密切相关物种的对应基因聚在一起;相反,它们将与污染源的真正亲属聚在一起。基因树-物种树调和分析会将其解释为大规模、令人难以置信的HGT事件涌入,所有这些事件都来自单个供体支系,并且都进入了单个基因组。通过比较物种范围内推断的HGT分布,这一个基因组将作为一个戏剧性的异常值脱颖而出。这种异常模式有力地表明,这并非一个奇异的生物学事件,而是一个简单的实验室错误。演化思维帮助我们清理数据!

跨学科桥梁:演化与现代数据科学的交汇

最后,在我们这个数据丰富的时代,演化生物信息学的原则变得越来越重要。当生物学家采用机器学习和人工智能的强大工具时,他们绝不能忘记一个基本真理:生物学数据点并非相互独立的。两个物种不像两次独立的掷骰子;它们由共同的历史连接在一起。

如果你要训练一个分类器来区分同源结构和同功结构,你不能使用标准的交叉验证。随机划分数据将不可避免地将一个物种放入你的测试集,而其几乎相同的姐妹物种仍留在训练集中,导致虚假乐观的结果。为了真正测试一个模型是否能跨越广阔的演化时间进行泛化,必须使用一种考虑系统发育的交叉验证方案。这涉及按支系划分数据,将生命之树的整个分支排除在外,以确保训练集和测试集是真正独立的,并由有意义的演化距离隔开。这展示了一个深刻的原则:要将任何其他科学的工具应用于生物学,必须首先尊重共同祖先这一不容置疑的现实。

从最小的分子到最宏大的历史跨度,从抽象的理论到实际的质量控制,演化生物信息学的应用与生命本身一样多样。这是一个不仅教会我们关于过去的领域,也为我们提供了一个更清晰的镜头来审视现在,揭示了所有生物体之间美丽而错综复杂的统一性,这种统一性写在它们共享的基因组语言中。