AbAffinity:用序列预测抗体-抗原亲和力的链感知模型

📅 2026/7/2 4:12:24
AbAffinity:用序列预测抗体-抗原亲和力的链感知模型
在抗体工程中我们经常会遇到一个实际问题实验能测的抗体数量有限但计算设计能够产生大量突变体。此时仅靠结构建模、分子对接或经验判断很难完成大规模排序。AbAffinity 的价值就在这里它试图直接从抗体重链序列、轻链序列和抗原序列出发预测抗体-抗原结合亲和力也就是输出近似的pKd分数用于候选抗体的快速排序。根据论文描述AbAffinity 是一个 sequence-only、chain-aware 的三流模型专门面向结构信息有限或没有可靠复合物结构的早期抗体筛选场景。一、AbAffinity解决的不是“突变是否稳定”而是“抗体和抗原是否更匹配”很多抗体突变工具关注的是单条抗体序列本身是否稳定、是否自然、是否更像人源抗体而 AbAffinity 关注的是另一件事这个抗体序列和这个抗原序列放在一起是否可能形成更强结合。它的预测目标是 pKd。Kd 越小结合越强pKd −log10(Kd[M])所以 pKd 越高理论上代表亲和力越强。AbAffinity 的输入不是 PDB 复合物结构而是三段序列heavy chain、light chain、antigen。模型把这三者分别编码然后在后续模块中学习它们之间的匹配关系。论文中使用 SAAINT-DB、SAbDab、AB-Bind、SKEMPI 2.0 等数据进行训练和验证并强调该模型可用于自然抗体-抗原复合物预测也可迁移到亲和力成熟的突变体排序任务中。二、AbAffinity的核心原理AbAffinity 的核心可以概括为一句话先分别理解重链、轻链和抗原再学习三者之间的相互作用而不是一开始就把它们简单拼接在一起。传统序列模型常见做法是把抗体和抗原序列拼接或者把重链和轻链压缩成一个抗体向量。这种做法虽然简单但容易丢失两个关键信息第一重链和轻链在抗原识别中的作用不同第二抗体与抗原的结合不是单条序列性质而是配对关系。AbAffinity 因此采用了“三流架构”重链一条流、轻链一条流、抗原一条流。论文中的图 1 展示了这一流程三条序列分别经过 PLM 编码然后进入 CDR pooling、mean pooling、projection、self-attention、fusion gate、gated cross-attention最后通过 cosine similarity 输出 pKd。具体来看AbAffinity 先使用冻结的 ESM-2 650M 蛋白语言模型对重链、轻链和抗原分别编码。所谓“冻结”意味着 ESM-2 本身不参与训练更新训练的主要是后面的轻量交互模块。这样做的好处是计算成本相对可控同时可以利用 ESM-2 已经学到的蛋白序列表示。AbAffinity 的 GitHub 说明也明确写到它使用 frozen ESM-2 650M embeddings并且只训练 compact interaction module。重链部分不是简单地对全链求平均而是重点聚焦 CDR-H1、CDR-H2 和 CDR-H3。这个设计非常符合抗体生物学因为抗原结合位点通常集中在 CDR 区域尤其 HCDR3 常常对特异性贡献很大。论文中的消融实验显示CDR-focused pooling 相比 full-chain mean pooling 提高了 Pearson 相关性并降低了 RMSE说明“把注意力集中在重链 CDR”确实有助于亲和力预测。轻链和抗原则采用 mean pooling。这里的逻辑是轻链整体也会参与结合和构象支撑而抗原的真实 epitope 在预测前通常未知因此模型先保留抗原的全局表示再通过后续 cross-attention 让抗体去“选择”与当前抗体相关的抗原特征。接下来模型会让重链和轻链先进行 self-attention 交互。也就是说它不是把 VH 和 VL 当成彼此无关的两段序列而是允许它们先互相交换信息形成更合理的 antibody representation。随后fusion gate 会学习重链和轻链的权重。有些抗体可能重链贡献更大有些抗体轻链也很重要对于 VHH 或 nanobody模型也可以更依赖重链样表示。最关键的是 gated cross-attention。它让抗体表示作为 query去过滤抗原表示中与当前抗体结合相关的特征。论文中指出关闭 learned gate 后模型性能明显下降说明这个 gate 不是简单装饰而是在帮助模型过滤掉与结合无关的 PLM 表征维度。换句话说AbAffinity 不只是“拿 ESM-2 向量做回归”而是增加了抗体-抗原配对关系建模。最后AbAffinity 把抗体表示和抗体条件化后的抗原表示分别映射到同一潜在空间并计算 cosine similarity再把这个相似度转换为 pKd。这个设计的含义是模型认为亲和力预测可以被看作一种“抗体-抗原匹配度学习”。匹配度越高预测 pKd 越高。三、AbAffinity的安装方式AbAffinity 的实现代码已经公开在 GitHub仓库中包含 Python package、configs、data、model_weights、notebooks、environment.yml、requirements.txt 等内容。官方推荐的安装方式是使用 conda 环境然后执行 editable install。git clone https://github.com/harshitsinghsnu/AbAffinity.git cd AbAffinity conda env create -f environment.yml conda activate AbAffinity pip install -e .从仓库说明看AbAffinity 当前更像一个研究代码仓库 notebook入口 训练/评估脚本集合而不是一个已经封装成稳定命令行软件的工业级工具。官方推荐的快速入口是notebooks/AgAbGated_Custom_ZeroShot_FewShot_IG.ipynb可以在 Colab 中运行自定义数据输入 CSV 需要包含light, heavy, antigen, Y四列其中Y是 pKd 标签。GPU 推荐用于 ESM-2 embedding 计算但仓库说明中也提到不是绝对必需。四、AbAffinity的基本使用方式对于自己的抗体-抗原体系可以准备一个 CSV 文件light,heavy,antigen,Y SYVLTQPPSVSVAPGQTARITCGGNNLGSKSVHWYQQKPGQAPVLVVYDDSDRPSWIPERFSGSNSGNTATLTISRGEAGDEADYYCQVWDSSSDHVVFGGGTKLTVL,QMQLVESGGGVVQPGRSLRLSCAASGFTFRTYGMHWVRQAPGKGLEWVAVIWYDGSNKHYADSVKGRFTITRDNSKNTLNLQMNSLRAEDTAVYYCARAPQWELVHEAFDIWGQGTMVTVSS,ANTIGEN_SEQUENCE_HERE,9.0其中heavy是 VH 或重链序列light是 VL 或轻链序列antigen是抗原蛋白序列Y是已知 pKd。若只是做 zero-shot 排序理论上可以用占位标签或按照 notebook 逻辑修改输入若要做 few-shot fine-tuning则需要一部分实验测得的 pKd 作为校准数据。官方 notebook 支持 zero-shot prediction、few-shot fine-tuning、Integrated Gradients 残基归因和结构映射。仓库还提供了 SAAINT-DB 和外部 benchmark 的运行命令。例如python -m AbAffinity.training.run_saaintdb_multiseed \ --config configs/saaintdb/sa_ours_allcdr_random.yaml python -m AbAffinity.training.run_saaintdb_multiseed \ --config configs/saaintdb/sa_ours_allcdr_cold.yaml如果要复现外部 benchmark可以运行python -m AbAffinity.training.run_multiseed \ --config configs/benchmark/exp02_ours_allcdr_cv.yaml python -m AbAffinity.training.run_multiseed \ --config configs/benchmark/exp04_ours_allcdr_benchmark.yaml这些命令更适合论文复现或模型评估。如果只是用于抗体工程项目中的突变体排序优先使用官方 notebook 或基于 notebook 改造成自己的批量预测脚本会更直接。五、AbAffinity与Thermo、PLM预测氨基酸、Pythia的差异工具/方法核心问题输入输出更适合回答的问题AbAffinity抗体和抗原是否结合得更强VH、VL、抗原序列pKd 或亲和力排序这个突变体对当前抗原是否可能更高亲和ThermoMPNN突变是否影响蛋白稳定性蛋白结构/PDB 突变ΔΔG 稳定性变化这个突变会不会让抗体自身更不稳定PLM氨基酸预测某个位点换成某个氨基酸是否自然/可接受蛋白或抗体序列有时可结合 mask 或 log-likelihood概率、log likelihood、ΔlogP、rank这个突变是否符合序列上下文和天然分布Pythia / Pythia-PPI突变对稳定性或PPI结合变化的影响结构/PDBPPI版本面向复合物stability score、ΔΔG 或结合变化相关评分这个突变是否破坏结构或界面相互作用ThermoMPNN 是结构驱动的稳定性预测模型本质上是一个 GNN用于预测 protein point mutant 的稳定性变化。它回答的不是“抗原结合是否增强”而是“这个突变是否可能让蛋白本身更稳定或更不稳定”。官方仓库中也明确说明 ThermoMPNN 是通过 transfer learning 训练的 GNN用于预测 point mutants 的 stability changes并提供了 PDB 推理和批量 CSV 推理方式。PLM 氨基酸预测通常不是一个单独固定工具而是一类方法。比如 ESM、ESM-1v、ESM-IF1、IgLM、AntiBERTy、AbLang 等都可以用于不同形式的序列打分。ESM 官方仓库说明其提供 ESM-2、ESMFold、ESM-1v 和 ESM-IF1其中 ESM-1v 面向 zero-shot variant effect predictionESM-IF1 面向 fixed-backbone inverse folding。 IgLM 则是抗体专用语言模型可用于 antibody sequence generation、infill 和 sequence evaluation也可以计算给定抗体序列的 log likelihood。Pythia 需要区分两个版本。Wublab/Pythia 主要面向结构驱动的蛋白稳定性预测官方仓库写到它包含 zero-shot protein stability prediction 和 ligand binding pocket prediction使用时可以对 PDB 进行突变稳定性预测并且说明 “Lower the score is better”。 Pythia-PPI 则进一步面向蛋白-蛋白相互作用可以预测 single-point mutation 对 PPI binding affinity changes 以及 protein stability changes 的影响适合界面突变分析。所以在抗体突变筛选中这几类工具不是互相替代关系而是分工关系。AbAffinity 更偏向“亲和力排序”ThermoMPNN 更偏向“蛋白稳定性闸门”PLM 更偏向“序列自然性/人源性/上下文合理性”Pythia 或 Pythia-PPI 更偏向“结构稳定性或界面突变影响”。真正做项目时不应该只看其中一个分数。六、在抗体优化项目中如何组合使用对于你现在做的 AMG157/TSLP 这类抗体优化任务可以把这些工具放进一个分层筛选流程第一步用 PLM 预测氨基酸先排除明显不自然、不符合抗体序列上下文的突变。例如某个位点突变后在 IgLM 或 ESM 中概率极低就要谨慎。第二步用 ThermoMPNN 或 Pythia 评估突变对抗体自身结构稳定性的影响。如果一个突变虽然可能增强结合但显著破坏 VH/VL 稳定性、CDR 构象或界面骨架就不能直接作为优先候选。第三步用 Pythia-PPI、Rosetta、PLIP 或复合物模型分析突变是否可能改善抗原-抗体界面包括氢键、盐桥、疏水接触、芳香堆积、水桥和空间冲突。第四步用 AbAffinity 对完整的 VH、VL、TSLP 序列进行亲和力排序。这里的重点是AbAffinity 看的是“抗体-抗原配对后的整体预测亲和力”它可以作为最后一层排序依据但不应单独决定实验候选。第五步形成综合推荐表。一个比较实用的排序逻辑是候选优先级 AbAffinity亲和力提升信号 PLM序列自然性 Thermo/Pythia稳定性 界面相互作用解释 可开发性风险过滤其中 AbAffinity 可以帮助你判断“哪个突变组合更值得测亲和力”但 Thermo、PLM 和 Pythia 帮你避免选出“看起来结合强、但表达差/不稳定/不自然”的候选。七、需要注意的局限性AbAffinity 的优势是 sequence-only、速度较快、可用于没有可靠复合物结构的早期筛选而且还能通过 Integrated Gradients 给出残基层面的归因提示。论文中也强调这些归因可以帮助定位可能的 paratope 和 epitope 残基但不能把它等同于真实物理能量分解。它的局限也很明确。第一AbAffinity 不显式建模构象变化、诱导契合、糖基化、价效应、实验体系差异等因素。第二对全新抗原的泛化比随机交叉验证更难。第三zero-shot 用于突变体排序时可能不稳定论文中也指出 few-shot calibration 往往更可靠。第四它目前还是预印本和研究代码实际项目中最好作为候选排序工具而不是最终决策工具。八、总结AbAffinity 的定位可以概括为抗体-抗原序列级亲和力预测器。它不是 ThermoMPNN 这种稳定性模型也不是 PLM 这种序列自然性模型更不是单纯的界面能量打分工具。它真正补上的一环是在没有高可信复合物结构、但已经有 VH、VL 和抗原序列的情况下快速预测不同抗体序列与目标抗原之间的相对亲和力。在抗体工程项目中最合理的使用方式不是“用 AbAffinity 替代所有工具”而是把它放在多模型筛选流程的后段前面用 PLM、Thermo、Pythia 过滤不自然和不稳定突变后面用 AbAffinity 做抗原特异性的亲和力排序最后再结合结构解释和实验可行性形成真正可交付的突变推荐清单。