AlphaFold 置信度完全指南:pLDDT 与 PAE 怎么读才靠谱
【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold
拿到一份 AlphaFold 预测结果,你很难第一眼分辨哪些结构可信、哪些只是噪声。这篇文章教你把 pLDDT 和 PAE 读明白,建立一套从"快速判断"到"深度分析"的蛋白质结构预测置信度评估流程。
一、3 分钟速览:拿到预测结果后先看什么
别急着把预测图拖进分子查看器。先按这个顺序过一遍:
先看 pLDDT 条形图的均值和分布→再看 PAE 矩阵的块状结构→最后检查两者是否"打架"。
均值 < 70 直接存疑;均值 ≥ 70 且条形图平坦,才有资格往下读。PAE 矩阵用来定位"哪里可能塌"。两个指标不一致时,才是真正需要动脑的时刻。
二、pLDDT:它到底在回答什么问题 📈
它回答的问题是:第 i 个残基的局部结构,你该信几分?
拿两个具体场景对比:
- 某残基 pLDDT = 95:位于稳定 α 螺旋核心区,Cα 原子位置预测误差通常在 1 Å 内,骨架取向可以直接用于对接、突变分析。
- 同一链另一残基 pLDDT = 40:落在 N 端或 loop 区,主链方向大概率对,但原子坐标已经不能拿来当"真实位置"用,只能当拓扑参考。
四档分级怎么落地用:
| 分数区间 | 颜色 | 含义 | 你该怎么用 |
|---|---|---|---|
| 90–100 | 深蓝 | 非常高 | 原子级可信,可直接做对接、位点设计 |
| 70–90 | 浅蓝 | 中等偏上 | 骨架可信,侧链取向建议复核 |
| 50–70 | 浅绿 | 偏低 | 拓扑可参考,别信坐标 |
| 0–50 | 橙色 | 无序 / 不可信 | 视为柔性或无序区,勿当刚性处理 |
为什么有的残基 pLDDT 天然偏低?三个高频原因:
- 内在无序区(IDR):蛋白本来就"没定型",模型只能给一个低分。
- 柔性 loop:结构存在但自由度大,模型主动压低置信度。
- MSA 覆盖不足:该区域缺少同源序列支撑,信号本身就弱。
def compute_plddt(logits): # logits: [N_res, N_bins] 模型原始输出 num_bins = logits.shape[-1] bin_centers = np.arange(0.5/num_bins, 1.0, 1.0/num_bins) probs = scipy.special.softmax(logits, axis=-1) return (probs * bin_centers[None]).sum(-1) * 100 # 期望值 × 100 → 0~100 分三、PAE:残基对之间的"距离误差地图" 🗺
它回答的问题是:若把预测结构和真实结构做最优叠合,残基 i 和 j 之间的距离误差大约是多少?
PAE 是 N×N 矩阵,对角线附近 = 近邻残基对,远离对角线 = 远距离残基对。看三种典型模式:
多亚基复合物的 3 句话读法: 对角块(亚基内 PAE)低 → 单链骨架可信;非对角块(亚基间 PAE)低 → 界面相对取向可信;某非对角块整体高值 → 该亚基对相对位置不确定,界面结论要谨慎。
def compute_pae(logits, breaks): probs = scipy.special.softmax(logits, axis=-1) # [N_res, N_res, N_bins] bin_centers = breaks + (breaks[1] - breaks[0]) / 2.0 # bin 中心 bin_centers = np.append(bin_centers, bin_centers[-1] + (breaks[1] - breaks[0])) return (probs * bin_centers[None, None]).sum(-1) # 期望距离误差 [Å]四、组合判读:pLDDT 和 PAE 打架时怎么办 ⚠️
| 冲突场景 | 最可能的解释 | 下一步该做什么 |
|---|---|---|
| pLDDT 均值高,但某残基对 PAE 极高 | 该残基对相对取向建模失败,可能是 loop 或界面 | 单独看该残基 pLDDT;若也低,确认是柔性区而非 bug |
| pLDDT 均值低,但 PAE 对角块整体低 | 全局拓扑对,但局部原子级细节未定型 | 骨架方向可参考,原子坐标不可信;考虑提高 MSA 深度复跑 |
| pLDDT 呈"高-低-高"块状,PAE 出现对应大方块 | 典型多结构域蛋白,低 pLDDT 区是结构域连接 loop | 把低 pLDDT 区当柔性连接子,PAE 方块边界的残基号即结构域边界 |
| 复合物某非对角块整体高值,对应亚基 pLDDT 正常 | 两个亚基骨架各自 OK,但相对取向不确定 | 换更多种子复跑;若仍高,用其他实验数据(如 FRET)约束界面 |
底层逻辑:pLDDT 管"单链局部精度",PAE 管"残基对相对可靠性"。一个说原子级,一个说相对级,两者一致才算真的信。
五、技术原理速览(给好奇的你)🔬
如果你不关心实现细节,直接跳到下一节。
pLDDT 的计算链路:
PAE 的数学表达一行:
$$\text{PAE}{ij} = \sum{k=1}^{K} p_{ij,k} \cdot c_k$$
三个置信度头在模型里的分工:
| 头名称 | 输出形状 | 作用 |
|---|---|---|
| PredictedLDDTHead | [N_res, N_bins] | 每残基 pLDDT 的 softmax 分布 |
| PredictedAlignedErrorHead | [N_res, N_res, N_bins] | 每残基对 PAE 的 softmax 分布 |
| ExperimentallyResolvedHead | [N_res, N_atoms] | 每个原子"实验上是否可解析"的概率 |
六、实战检查清单 + 常见问题 ✅
从预测结果到写进论文的完整操作链:
- 先扫 pLDDT 条形图:均值 ≥ 70 且无大面积橙色?
- 打开 PAE 矩阵,画圈标出所有异常方块。
- 用 pLDDT 逐残基标注低置信区(< 70),记录残基号区间。
- 复合物:分别核对每个非对角块,确认界面相对定位。
- 对存疑区域换 seed / 提高 MSA 深度复跑 1 次,看 pLDDT 是否稳定。
- 若需交叉验证,用 ESMFold 或 RoseTTAFold 跑同序列,看低置信区是否一致。
- 论文里报告时,同时给出 pLDDT 均值 + PAE 热图,缺一不可。
- 所有写入结论的结构,其 pLDDT 必须 ≥ 70 且对应 PAE 块低值。
高频 FAQ:
| 问题现象 | 最可能的原因 | 你该做什么 |
|---|---|---|
| 整体 pLDDT < 50 | 序列内在无序或 MSA 覆盖极弱 | 用 IUPred 等工具先判无序,别硬信结构 |
| PAE 出现对角线外高值大方块 | 对应残基对相对取向建模失败 | 定位方块边界的残基号,结合 pLDDT 确认区域 |
| pLDDT 均值正常但某残基对 PAE 极高 | 局部构象不确定,可能是 loop / 界面 | 单独看该残基 pLDDT;若也低,确认柔性区 |
| 复合物界面非对角块高值 | 亚基间相对取向不确定 | 换种子复跑;用实验数据(如 FRET)约束界面 |
| pLDDT 稳定但跨 run 变化大 | 随机种子 / MSA 深度不稳定 | 固定种子并记录参数,多次复跑取中位数 |
想再深挖一步?用 ESMFold 或 RoseTTAFold 做交叉验证,是判断"模型特有偏差"还是"蛋白本来就不确定"的最快路径。
下次拿到 AlphaFold 结果,按这个顺序看:pLDDT 均值定基调,PAE 方块定区域,两者冲突时再动手——不会漏。
【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考