AlphaFold2(Jumper 等,Nature 2021)在 CASP14 上把蛋白结构预测的准确度提升到接近实验水平,是计算生物学几十年来最重要的突破。理解它的架构与局限,对判断「什么时候能用预测结构」至关重要。
三个核心组件
| 组件 | 作用 |
|---|---|
| MSA 与模板搜索 | 从序列数据库找同源序列,构建多序列比对 |
| Evoformer | 在 MSA 表示与残基对表示间反复交换信息 |
| 结构模块 | 从表示直接生成三维坐标 |
为什么 MSA 是关键
# 核心生物学原理:共进化
#
# 如果两个残基在三维空间中接触,
# 那么其中一个突变时,另一个往往也会「补偿性」突变
# (否则结构被破坏,蛋白失活)
#
# → 在大量同源序列中,接触的残基对表现出相关的变异模式
# → 从 MSA 中统计这种相关性,可以推断哪些残基在空间上接近
#
# 这就是为什么:
# 1) MSA 的深度决定预测质量
# 同源序列少 → 共进化信号弱 → 预测差
# 2) 孤儿蛋白(无同源序列)预测困难
# 3) 人工设计的蛋白预测困难(没有进化史)
#
# AlphaFold2 相对前人的突破:
# 前人:从 MSA 统计出接触图,再用接触图约束建模(两步)
# AF2:MSA 表示与结构表示在网络中【端到端联合优化】
# → Evoformer 让两种表示反复相互更新
Evoformer 的关键设计
- 两个表示并行更新:MSA 表示(序列 × 残基)与残基对表示(残基 × 残基),两者通过注意力反复交换信息;
- 三角更新与三角注意力:这是最有洞察力的设计。残基对表示中,i–j、j–k、i–k 三个距离必须满足三角不等式。三角操作显式地在网络中强制这种几何一致性——把物理约束编码进架构,而非指望网络自己学会;
- 不变点注意力(IPA):结构模块中的注意力机制,在局部坐标系中操作,保证等变性;
- 循环回收(recycling):把预测的结构再输入网络,迭代精化 3~4 轮——用少量参数换取更多计算,是很划算的设计;
- 自蒸馏训练:用模型对未知结构蛋白的高置信度预测作为额外训练数据,扩大了训练集。
置信度指标:必须会读
# pLDDT(predicted Local Distance Difference Test)
# 逐残基的置信度,0~100,越高越可信
#
# > 90 非常高,主链与侧链都可靠
# 70 ~ 90 可信的主链
# 50 ~ 70 低,需谨慎
# < 50 很可能是【无序区】而非「预测错了」
#
# 关键理解:
# 低 pLDDT 常常是有信息的 —— 它提示该区域本身就无固定结构
# 这与「模型不会预测」是两回事
#
# 在 PDB 格式中,pLDDT 存放在 B 因子列
# PAE(Predicted Aligned Error)
# 残基对之间的相对位置误差矩阵,单位 Å
#
# 读法:
# 以残基 i 为参照对齐时,残基 j 的预测位置误差
# 低 PAE 区块 = 该区域内部相对位置可靠
#
# 最重要的用途:判断【结构域之间的相对取向】
# 两个域各自 pLDDT 很高,但域间 PAE 很大
# → 各域结构可信,但它们的相对摆放不可信
# → 【这是最常被忽略的判读】
#
# 对多链复合物:链间 PAE 是判断相互作用可信度的核心指标
# ipTM / pTM(多链预测)
# pTM: 整体的预测 TM-score
# ipTM: 界面的预测 TM-score
# → ipTM > 0.8 通常认为界面可信
# → ipTM < 0.6 界面预测不可靠
在药物发现中的真实边界
| 用途 | 可行性 |
|---|---|
| 获得蛋白的整体折叠 | 很可靠 |
| 同源建模的替代 | 可靠且更好 |
| 判断结构域边界 | 可靠 |
| 识别无序区 | 可靠(低 pLDDT 区) |
| 直接用于对接 | 需谨慎(见下) |
| 预测点突变的影响 | 不可靠 |
| 预测构象变化 | 不可靠 |
| 预测配体结合位点的构象 | 不可靠 |
用于对接时的问题
- 预测的是 apo 样构象:这是最关键的限制。AlphaFold2 学习的是 PDB 中的结构,输出倾向于「该蛋白最常见的构象」——而配体结合往往需要口袋打开或侧链重排;
- 侧链取向不可靠:即使主链准确(pLDDT > 90),结合位点侧链的具体朝向可能与配体结合态不同。而对接对侧链位置极其敏感;
- 无辅因子与金属:AF2 不预测辅因子,而很多口袋的形状依赖它们;
- 基准结果:多项研究发现,用 AF2 结构做对接的成功率明显低于用共晶结构,尤其在虚拟筛选的富集能力上;
- 应对:
- 优先用实验结构,哪怕是同源蛋白的;
- 用 MD 或侧链采样生成构象集合,做集合对接;
- 用 AF3 类模型直接预测复合物(见 113《AlphaFold3 论文精读》、120《Boltz-1 技术报告精读》);
- 必须验证:能否复现已知配体的结合模式。
使用途径
# 1) AlphaFold 数据库(最简单)
# https://alphafold.ebi.ac.uk/
# 已覆盖 2 亿以上蛋白,包括几乎所有人类蛋白
# → 大多数情况直接下载即可,不必自己跑
# 2) ColabFold(见 118)
# 用 MMseqs2 加速 MSA 搜索,Colab 免费 GPU 可用
# → 需要预测数据库中没有的序列时用它
# 3) 本地部署官方代码 / OpenFold(见 117)
# 需要下载数 TB 的序列数据库
# → 只在有大批量需求时值得
# 用 Python 读取置信度
from Bio.PDB import PDBParser
import numpy as np
structure = PDBParser(QUIET=True).get_structure("af", "AF-P00533-F1.pdb")
plddt = [a.get_bfactor() for a in structure.get_atoms() if a.get_id() == "CA"]
plddt = np.array(plddt)
print(f"平均 pLDDT: {plddt.mean():.1f}")
print(f"高置信度残基比例: {(plddt > 90).mean():.1%}")
print(f"可能无序的残基比例: {(plddt < 50).mean():.1%}")
关键要点
- MSA 深度决定预测质量——共进化信号是方法的物理基础;
- 三角注意力把几何一致性约束编码进架构,是最有洞察力的设计;
- 域内 pLDDT 高不代表域间相对取向可信——必须看 PAE;
- 预测的是 apo 样构象、侧链取向不可靠,直接用于对接需谨慎验证。
延伸资源
- AlphaFold3:113《AlphaFold3 论文精读》;RoseTTAFold:114《RoseTTAFold 论文精读》;ESMFold:116《ESMFold 论文精读》;
- ColabFold:118《ColabFold》;结构在药物发现中的应用:343《用 AlphaFold Server 预测无结构靶点》。