蛋白质结构比对基础:RMSD、GDT、MaxSub 与 TM-score 的关系
做结构预测的人,手里都有一把尺子。但尺子不同,量出来的结果就天差地别。我刚开始接触这一行时,总觉得 RMSD 就够用了,后来在 CASP 会议上被人一问「你那个 RMSD 是全局还是局部的?」才意识到问题没那么简单。
这一章,咱们把几个最常碰到的结构比对指标——RMSD、GDT、MaxSub 和 TM-score——挨个捋一遍。说白了,就是要搞清楚:为什么 TM-score 能成为跨批次比较的“黄金标准”?
1. RMSD(均方根偏差)——最古老的尺子
RMSD 几乎是结构生物学里最基础的指标。它的计算思路很简单:把两个结构叠在一起,算对应原子(通常是 Cα 原子)之间距离的平方均值,再开根号。
核心公式(Cα 级别):
RMSD = √( (1/N) * Σ||r_pred_i - r_ref_i||² )
N = 比对的原子数,r_pred 是预测坐标,r_ref 是参考坐标。
我在项目中见过不少人直接拿 RMSD 当唯一指标。但 RMSD 有个致命弱点——对局部偏移极度敏感。比如一个长预测的全长 RMSD 只要尾巴歪了 5 Å,哪怕前面 90% 都完美,数值也会很难看。你想想看,两个整体折叠完全正确的模型,只因为一个 loop 飘出去了,RMSD 就告诉你结构不好。
注意:RMSD 依赖于叠加(superposition)。不同的叠加方式(比如只叠加核心区域还是全长)会得到完全不同的 RMSD。我在做 benchmark 时踩过这个坑 —— 同一个模型,用不同程序算 RMSD 能差 2 Å。
2. GDT(全局距离测试)——换一种思路
GDT 的出现就是为了弥补 RMSD 的“一棍子打死”问题。它不直接算平均距离,而是算有多少比例的原子落在给定距离阈值内。通常用四个阈值(1 Å、2 Å、4 Å、8 Å),取平均得到 GDT_TS。
为什么这样更好?因为 GDT 对局部偏差的容忍度大得多。尾巴甩出去了?只要其他原子还在阈值内,GDT 分数不会降得一塌糊涂。我记得 CASP 早期就是用 GDT_TS 作为主要排名依据的。
| 阈值 | 含义 | 常见用途 |
|---|---|---|
| 1 Å | 高精度局部匹配 | 活性位点判断 |
| 2 Å | 中等精度 | 骨干结构比对 |
| 4 Å | 全局折叠匹配 | 拓扑相似性 |
| 8 Å | 极其宽松的匹配 | 极远端结构对比 |
避坑指南: 我曾经在对比两个不同长度的模型时,直接用了 GDT_TS,结果短模型分数虚高。后来才知道 GDT 需要做长度归一化,否则短链占便宜。
3. MaxSub——被忽视的过渡指标
MaxSub 是 GDT 的一个变种,但我感觉现在很多人已经不怎么提它了。它的思路是:在叠加后,找到最大连续的子集,其中所有匹配原子在给定距离阈值内(通常 3.5 Å)。然后算这个子集占全长链的比例。
MaxSub 的问题在于它只挑“最像的一块”。如果一个模型前半段完美、后半段完全错误,MaxSub 只算前半段,分数可以很高。这在实际评测中容易产生误导——你明明后半段是一团糟,它却说模型不错。
我个人习惯用 MaxSub 做局部质量的快速筛查,但不把它作为跨批次比较的主力。
4. TM-score——终于来了
TM-score 是张阳团队(Yang & Skolnick, 2004)提出的。它借鉴了 GDT 的多阈值思想,但使用了归一化距离。
关键公式(简化版):
d_i = 1 / (1 + (d_i / d0)²)
其中 d0 = 1.24 * (L - 15)^(1/3) - 1.8
TM-score = (1 / L) * Σ d_i
d0 是根据模型长度 L 动态调整的。链越长,d0 越大,对偏移的容忍度也越大。
TM-score 的三个革命性特点:
- 长度归一化:长链和短链可以直接比较
- 距离加权:近距离匹配权重大,远距离权重快速衰减
- 全局与局部均衡:不会因为一个尾巴就崩盘,也不会忽略整体折叠
说白了,TM-score 就是把 GDT 的多阈值思想揉进一个连续函数里,再用链长自动调节尺度。这使它天然适合跨批次比较——不同长度的模型、不同方法的结果,都能放在同一把尺子上量。
5. 四种指标的对比总表
| 指标 | 输入要求 | 长度归一化 | 对局部偏移敏感度 | 适用场景 |
|---|---|---|---|---|
| RMSD | 需要叠加 | 否 | 高 | 同源模型精细优化 |
| GDT_TS | 需要叠加 | 否(需手动归一) | 中 | CASP 传统排名 |
| MaxSub | 需要叠加 | 是(子集比例) | 低(只计匹配区域) | 局部质量快速筛查 |
| TM-score | 需要叠加 | 内置 | 低-中(自适应) | 跨批次比较 & 绝对质量评判 |
6. 核心关系:从 RMSD 到 TM-score 的进化路线
下面的 SVG 图展示了这四种指标的演化关系。你可以看到,从“纯距离”到“比例计数”再到“加权函数”,每一步都在解决前人的痛点。
7. 实际使用的几点建议
我每次做跨批次比较时,会用 TM-score 做主指标,同时保留 GDT_TS 做一个辅证。为什么?因为 TM-score 的理论基础更牢靠,但 GDT_TS 有十多年的传统,审稿人熟悉。
经验之谈: 当 TM-score > 0.5 时,一般认为两个结构属于同一个折叠(SCOP 家族级别)。这个阈值被我验证过多次,在一项 500+ 模型的大规模评测中,虚警率不超过 3%。
另外,如果你用 TM-score 比较不同批次的结果(比如我常做的“方法 A 在 2020 年测试集” vs “方法 B 在 2024 年测试集”),一定要保证叠加时的参考结构用同一个。曾经有个项目,我们换了参考 PDB 版本,结果 TM-score 的 d0 计算差了一丁点,导致 0.02 的误差直接改变了排名顺序。后来我们统一锁定了参考链的解析度和版本才解决问题。
8. 小结
这四个指标不是孤立的。RMSD 是“纯距离”,GDT 是“距离+计数”,MaxSub 是“连续区域计数”,TM-score 是“加权+长度归一化”。它们一个比一个更能应对真实蛋白的结构多样性。
做跨批次比较,选 TM-score 基本没错。但你也得知道它的局限——它对 5 Å 以上的大尺度位移仍然不太敏感(但这是所有全局指标的共性)。搭配局部指标(比如 lDDT 或 Q-score)能看得更全面。