本节摘要:1968 年木村资生提出:分子水平上多数可观测的替换是中性或近中性的,它们由漂变固定而非选择推广。这一命题当时近乎异端,如今却是分子进化的默认零假设。本节讲清中性理论的可检验推论——替换率与群体大小无关、分子钟、功能不重要区间演化最快——并用模拟同时呈现中性派与选择派的预测差异。
1960 年代,血清学与电泳数据显示蛋白质以大致恒定的速率积累差异。若全是选择驱动,演化速率应随群体大小与生态压力剧烈波动——但观察到的近似恒定难以自洽。木村的解法干净利落:如果多数突变的适合度效应约为零,它们的命运由漂变决定,而漂变理论与群体大小的乘积恰好给出与群体大小无关的恒定替换速率。
推导骨架(启发式):每个世代每个座位新产 2Nμ 个中性突变,每个的固定概率是 1/(2N),两者相乘,替换率 k = 2Nμ × 1/(2N) = μ。群体大小完全消掉了。这个"消去 N"是中性理论最漂亮的指纹,也是它与选择假说最可分的判据。
第 4 条后来发展成 MK 检验,与 dN/dS(第 5 章)并列分子进化的两大判据。
import random def neutral_substitutions(N=1000, mu=1e-4, runtime=2000, seed=0): """数一数中性突变的固定事件数:应当 ≈ mu * runtime,与 N 无关""" rng = random.Random(seed) fixed = 0 p = 0.0 # 当前追踪的中性突变家系频率 for _ in range(runtime): # 供给:每代出现新中性突变的概率(单座位简化) if p == 0.0 and rng.random() < 2 * N * mu: p = 1 / (2 * N) if p > 0.0: p = sum(rng.random() < p for _ in range(2 * N)) / (2 * N) if p == 1.0: fixed += 1; p = 0.0 elif p == 0.0: pass # 丢失,等下一个突变 return fixed for N in (100, 1000, 10000): fx = neutral_substitutions(N=N) print(f"N={N:>5}: 固定事件 {fx} 次(理论期望 ≈ {int(1e-4*2000)})")
三个 N 差两个数量级,固定事件数却都在理论值附近——N 消掉了。这就是分子钟能当"表"用的原因,也是中性理论被接受的第一根支柱。注意统计涨落不小,跑多次取均值更稳。
import random def polymorphism_lifetime(N=500, s=0.0, p0=0.5, seed=1): """一个已有变异在群体里能存在多久:中性靠漂变,有利靠选择加速""" rng = random.Random(seed) p = p0; t = 0 while 0.001 < p < 0.999 and t < 5000: # 简化的 haploid 选择步 if s > 0: p = p * (1 + s) / (p * (1 + s) + (1 - p)) p = sum(rng.random() < p for _ in range(2 * N)) / (2 * N) t += 1 return t, p for label, s in [("中性 s=0", 0.0), ("弱选择 s=0.01", 0.01), ("强选择 s=0.1", 0.1)]: t, p = polymorphism_lifetime(s=s) print(f"{label}: 变异存续 {t} 代, 终点 {'固定' if p > 0.5 else '丢失'}")
中性变异能以中等频率在群体里"荡"很久(这就是可见多态性的来源),有利变异则快速走完固定或被早期漂变掐灭。真实群体的杂合度水平与中性预测的 4Neμ/(1+4Neμ) 大致吻合,是支持"多数多态为中性"的证据之一。
⚠️ 常见误读:中性理论不是"自然选择不存在",而是"分子数据的大多数模式不必援引选择即可解释"。争论的和解点在于分工:适应性进化由选择完成(表型层),但基因组里积累的大多数替换是中性背景。近中性理论(Ohta)进一步放宽:轻微有害的突变在小群体里也能当"中性"漂进固定,这解释了小群体基因组中略偏有害的替换富集。
| 观察到的模式 | 中性解释 | 选择解释 |
|---|---|---|
| 替换率恒定、跨群体一致 | 默认预期 | 需要额外协调 |
| dN/dS ≈ 1 | 中性或宽松约束 | 低于1净化、高于1正选择 |
| 特定位点加速替换 | 无力解释 | 分子适应信号 |
| 群体小则替换略偏有害 | 近中性预期 | 不必然 |
第 4 章讲完"改变频率的力"。第 5 章进入分子数据的实战:如何从两条序列里读出选择与中性。

太田朋子 1973 年的修正把中性理论推进到更贴现实的一步:多数新突变的效应不是零而是"接近零"——轻微有害的突变在大群体里会被选择清除,在小群体里却因为选择效率不足(回忆 4Ns 判据)而像中性突变一样漂进固定。这个"近中性"框架有一个漂亮的可检验推论:小群体世代应积累略偏有害的替换。证据方向支持它:岛屿与穴居物种的基因组里,轻微有害替换的富集是反复出现的模式。
和解后的分工表可以这样记:表型层的适应性进化(喙、抗药、耐寒)是选择的领地;分子层的大多数替换模式(恒定速率、家族间速率与功能约束反比、群体大小不敏感)由中性漂变主导;两层的边界用 dN/dS、MK 检验这类工具来勘定。当年论战火药味十足,结局却是互补——科学争论最好的收尾方式。
中性理论还能叫"理论"吗,它不是已被选择证据推翻? 没有。大量正选择案例的存在与多数替换为中性并不矛盾——正选择集中在少数位点与时段,中性背景占据其余。定量上,编码区平均 dN/dS 普遍显著低于 1,恰恰说明净化选择与中性漂变共同主导着绝大多数位点的日常。