2026-07-29
在 439 个蛋白二聚体上,打乱 MSA 配对关系后 AlphaFold3 精度几乎不变(0.612 vs 0.613),说明驱动精度的是 MSA 深度,不是配对。
AlphaFold-Multimer 和 AlphaFold3 把蛋白质复合物(两条或多条蛋白链结合在一起的结构)预测推到了前所未有的精度。这两套模型的标配做法是配对 MSA:把来自不同物种、可能共同进化的序列按物种对应起来,让模型捕捉链与链之间的协同进化信号。过去几年冒出一堆改进配对算法的工作(ESMPair、DeepSCFold 等),都在追求「更准地把序列配对」。
但有个问题一直没人系统验证:配对这个步骤到底贡献了多少精度?还是说只要 MSA 够深(同源序列够多),配不配对都无所谓?这篇山东大学的工作用一个干净的基准把这件事测清楚了。
作者构建了 HD439 基准:439 个异源二聚体(两条不同蛋白链组成的复合物),刻意剔除了与 AlphaFold3 训练集相似的序列,避免模型靠记忆作答。再用 DockQ(衡量复合物界面预测质量的指标,0 到 1,越高越好)打分。
关键实验是对比四种 MSA 策略:mMSA 是每条链各自的单体 MSA、不做跨链配对(基线);pMSA 是标准的跨链配对 MSA(AF3 默认);sMSA 把 pMSA 的配对关系随机打乱,但保留序列组成和 MSA 深度;uMSA 不做配对,但把 UniProt 里能拿到的同源序列尽量都堆进去。
sMSA 是整个实验的灵魂:它精确保留了深度和组成,只破坏了配对关系。打乱配对后精度若不变,就说明配对本身没用。
配对的提升很小。pMSA 平均 DockQ 0.613,mMSA 0.602,差 0.011。
打乱配对几乎无损:sMSA 0.612,和 pMSA 在统计上没有差异(P=0.96)。在跨物种复合物上,sMSA 甚至反超 pMSA(0.561 vs 0.545),因为按物种配对反而引入了错误的协同进化噪声。一个典型例子(PDB 8JLE):不配对 mMSA 能给到 DockQ > 0.8,标准配对 pMSA 却几乎全错(DockQ ≈ 0),打乱配对后救回到 0.800。
最有效的策略是 uMSA:不配对、只管堆同源序列,平均 DockQ 0.623,四者最高,在种内和跨物种上都稳定领先。
| MSA 策略 | 平均 DockQ | 说明 |
| mMSA(不配对基线) | 0.602 | 每链各自比对 |
| pMSA(标准配对) | 0.613 | AF3 默认 |
| sMSA(打乱配对) | 0.612 | 只破坏配对关系 |
| uMSA(不配对+堆同源) | 0.623 | 最高 |
这篇的结论很反直觉:过去花大力气优化的「跨链配对」算法,贡献可能被高估了。真正驱动精度的是 MSA 深度,也就是同源序列够不够多。对做蛋白结构预测的人,与其纠结配对算法,不如想办法多塞有效的同源序列(omicMSA 策略的成功也印证了这点)。方法上也解释了机理:AlphaFold3 靠链间的物理化学互补(形状匹配、电荷互补)和迭代更新机制,在没有协同进化先验时也能摆对姿势。
只在 AlphaFold3 和二聚体上做了系统测试,更高阶的多聚体结论是顺带提的。抗体-抗原、宿主-病原这类进化信号弱的界面仍是难点。作者也承认 AF3 内置的模型打分(rank score)不稳定,有些情况下高精度模型其实生成了,只是被排到后面。基准的 439 个样本虽然控制了训练集泄漏,但仍是人工策展的集合,真实场景的分布可能不同。