2. 蛋白-配体相互作用基础:结合位点、结合模式、亲和力测量与常用数据集

做交叉验证之前,先把基础打牢。蛋白-配体相互作用,说来说去就三个核心问题:它俩在哪结合、怎么结合、结合得有多牢。我刚开始做分子对接时,连结合位点都没搞清楚就急着上模型,结果交叉验证出来的分数虚高,后来一查——训练集和测试集里混了同一个蛋白家族的多个同源结构,信息泄露了。那次教训让我记住:吃透底层的相互作用知识,比调超参数重要得多。

2.1 结合位点:蛋白上的“口袋”长什么样?

结合位点(binding site)就是蛋白表面上一块能容纳小分子的凹陷区域。你想想看,蛋白表面凹凸不平,真正能稳定结合药物小分子的,往往是一些疏水口袋、极性裂隙或沟槽。这些“口袋”有几个关键特征:

  • 几何形状:通常比较深、狭长,能包裹住配体的一部分。
  • 化学环境:疏水区域(亮氨酸、异亮氨酸、缬氨酸等侧链)和极性区域(丝氨酸、苏氨酸、天冬氨酸等)交错分布。
  • 柔性:口袋的侧链和骨架在结合过程中会发生构象变化,有的甚至很大的“诱导契合”。

我记得在一次预测任务中,我直接用刚性受体结构做对接,结果对不出一个靠谱的结合姿势。后来花了三天做了柔性口袋的分子动力学采样,交叉验证的R才从0.3提到0.7。说白了,结合位点的静态结构只是一个起点,动态信息才更能反映真实情况。

特征描述对交叉验证的影响
几何深度口袋越深,配体越难逃逸不同蛋白的深度差异大,需按口袋类型分层划分
疏水性比疏水残基占比影响打分函数中的疏水项权重
可接触面积配体与蛋白的接触面积面积越小,结合可能越不稳定
我的一个小技巧:在收集PDB结构时,我习惯先用fPocket或SiteMap自动检测一下结合口袋,再手动检查是否与文献中的“经典口袋”一致。这能帮你快速筛掉那些晶体结构里配体被堆叠在表面假口袋的数据。

2.2 结合模式:弱相互作用织成的“网”

结合模式描述的是配体与蛋白之间具体的非共价相互作用类型。常见的“主力军”有:

  • 氢键:方向性强,通常2.5~3.5Å之间最有利。我见过不少学生会忽略水分子介导的氢键,其实水桥在网络里经常是关键节点。
  • 疏水相互作用:非极性基团之间的堆叠,本质上是为了减少水分子接触。一个距离在4Å以内、非极性原子接触数超过5个就值得关注。
  • π-π堆叠:芳环之间的面对面或边对面接触,常见于DNA结合蛋白。
  • 静电相互作用:带电基团之间的盐桥,强度大但容易被溶剂屏蔽。
  • 范德华力:无处不在的色散力,虽然单体弱但加总起来非常可观。

我早期犯过一个错:在做打分函数的交叉验证时,我直接用了简单加和的能量项,结果对含有多个共溶剂小分子的体系完全失效。后来才意识到,共溶剂占据了结合口袋的局部空间,改变了结合模式,而我的训练集里根本没有包含这种场景。所以,在拆分数据集时,一定要考虑结合模式的多样性。

关键认知:交叉验证中,如果两个蛋白虽然序列相似但结合模式截然不同(比如一个以氢键主导,另一个以疏水主导),把它们分在同一折里会严重高估模型的泛化能力。

2.3 亲和力测量:从实验到模型桥梁

亲和力衡量的是配体与蛋白结合的“牢固程度”。常见的量化指标有:

  • Ki:抑制常数,反映配体与酶结合的解离平衡。
  • IC50:半抑制浓度,通常实验条件下测出。
  • Kd:解离常数,直接反映结合平衡。

这三种数值在理想情况下可以互相换算(Cheng-Prusoff方程),但实际上因为实验条件(pH、温度、离子强度)不同,直接替换使用会引入噪声。我在PDBbind数据集里就遇到过同一对蛋白-配体在不同论文中给出差10倍的IC50。所以做交叉验证前,一定要对亲和力数据进行质量筛检和单位归一化。

常用的实验测量方法包括:

方法测量量通量是否直接给出结合分数
表面等离子体共振(SPR)Kd, kon, koff中低是
等温滴定量热(ITC)Kd, ΔH, ΔS低是
荧光偏振(FP)IC50高间接
酶活性抑制实验IC50中间接
注意:千万不要把不同实验测出的IC50和Kd直接混合训练——我曾经这么干过,结果模型在测试集上表现奇差。后来查文献才发现,两种测量值误差范围不同,IC50往往受底物浓度影响,而Kd更稳定。

2.4 常用数据集:PDBbind与CASF

说到交叉验证,数据集的选择是第一个门槛。做蛋白-配体结合亲和力的任务,最经典的公开基准就是PDBbind和CASF。

PDBbind

PDBbind是一个精心整理的数据库,每个条目包含蛋白-配体复合物的三维结构(来自PDB)以及对应的实验测定的亲和力数据(Ki, Kd, IC50等)。它的核心文件长这样:

# PDBbind v2020 refined set - INDEX_general_PL.2020
# Columns: PDB_code, resolution, release_year, -logKd/Ki, reference, ligand_name
1a30   2.20   2000   6.12   SomeRef_2000   STU
1a4k   1.90   1999   5.88   AnotherRef     ATP
...

我习惯在交叉验证前先对PDBbind的数据做几步处理:

  • 移除分辨率>3.0Å的条目(结构质量差,亲和力预测不可靠)。
  • 将IC50统一转换为pIC50(-log IC50),减少量纲差异。
  • 检查是否有冗余的同配体-不同蛋白对,如果有,要按蛋白家族分组。

CASF

CASF(Comparative Assessment of Scoring Functions)是专门用来打分函数评估的基准。它包含了一组高质量的蛋白-配体复合物和对应的实验亲和力,并提供了“无偏”的测试协议。CASF-2016是目前使用最广的版本,包含285个复合物,覆盖9种打分函数评价指标。

举个例子,CASF的评价流程包括:

  1. 打分能力(Scoring Power):直接计算预测亲和力与实验值的相关性。
  2. 排序能力(Ranking Power):对同一靶标的不同配体进行正确排序的能力。
  3. 对接能力(Docking Power):能否从大量“假”结构中识别出正确的结合姿势。
  4. 筛选能力(Screening Power):从混杂库中富集活性分子。

交叉验证在这里的典型用法是:用CASF的评分项作为外部测试集,评价你用PDBbind训练出来的模型。

项目实施建议:我个人喜欢把PDBbind refined set(约4000个复合物)作为主训练集,再用CASF-2016的285个复合物做独立的交叉验证测试。注意CASF的数据在PDBbind refined set中有一部分重叠,一定要去掉重叠项,否则你会得到一个虚高的测试分数。

最后,我把这一节的核心逻辑画成了一张图,你看看就清楚了:

蛋白-配体相互作用基础知识框架 蛋白-配体相互作用基础 结合位点(口袋) 几何特征 化学环境 结合模式 氢键/静电 疏水 范德华 亲和力测量与数据集 Ki/Kd/IC50 PDBbind CASF 交叉验证的关键:按口袋/模式/亲分组分层 避免将结合模式或亲和力范围差异过大的样本 放在同一折中,否则会高估模型泛化能力