信息速览
INFOBOX — InteractBind 一屏速览
维度 内容 本质 蛋白-配体残基级相互作用图谱数据集 + 细粒度评测基准(非挑战赛、非临床数据) 团队 格拉斯哥大学计算科学学院牵头,联合 Science Tokyo、剑桥 LTL、布莱根妇女医院/哈佛医学院、Broad 研究所等 论文 arXiv:2605.24045(v1 2026-05-21);NeurIPS 2026 Evaluations & Datasets Track 在审 规模 99,391 对 / 11,473 唯一蛋白 / 9,017 唯一配体 结构来源 PDB 实验解析复合物(剔无机配体、结晶水、金属离子;多配体按 0.5 nm 拆链) 表示 蛋白 FASTA + Foldseek 结构感知序列;配体 SMILES + SELFIES 标注 PLIP + GetContacts 检测六类非共价接触,投影成七列残基级二值指纹 划分 ID 子集 84,825 对(对接亲和力 ≤−7 为正 / >−5 为负);四个蛋白相似度 OOD 集各 13,126 对(25/28/31/33%) 核心任务 二元结合预测、亲和力预测、结合位点定位、相互作用类型预测 核心指标 BRHR@K(Top-K 预测残基中至少 1 个命中真值结合位点即记 1) 扎心结果 FusionDTI AUROC 98.3%,BRHR@1 仅 21.6% 类型差异 BRHR@5 范德华 33.2% vs 阳离子-π 16.1%,相差一倍 获取 HuggingFace Zhaohan-Meng/InteractBind,gated=false,直接 load_dataset许可 CC BY 4.0(数据卡明示);GitHub 代码无 LICENSE 文件 库内互链 bindingdb(91)、pdbbind(134)、binding-moad(174)、crossdocked2020(164)、plinder(184)、plip(840)
蛋白-配体模型这些年一直在刷新一个数字:给定一对蛋白和配体,判断它们结不结合,AUROC 已经堆到 98% 上下,几乎要撞上天花板。但 AUROC 98% 的模型究竟"看懂"了什么?它是认出了口袋里的氢键和疏水接触,还是仅仅记住了一大类激酶抑制剂长什么样、因而赌对了标签?
InteractBind 就是为回答这个问题造的一把尺子。它把 PDB 里近十万个实验解析的蛋白-配体复合物拆开,用 PLIP 和 GetContacts 把每一个残基-原子之间的非共价接触记录下来,再压缩成与蛋白序列逐位对齐的二值指纹。于是模型不再只能被问"结合吗",还可以被追问"结合的到底是哪几个残基、靠哪一类作用力"。八个主流模型的答卷相当不客气:最强者的二元预测 AUROC 是 98.3%,但"Top-1 预测残基能命中真实结合位点"的概率只有 21.6%。
导语读法三则:
- 只要数据:直奔 §6 获取与许可——HuggingFace 无门禁,五个配置名记住即可。
- 要做定位任务:直奔 §4 与 §5,BRHR 的定义、分母陷阱、类型差异三段连读。
- 要给自己的模型找对标:直奔 §7 的八模型全表与 §9 的关系图谱,注意别和 BindingDB/PDBbind 混为一谈。
§0 导读:这个数据集解决什么问题
0.1 一个被 AUROC 掩盖的空白
序列基蛋白-配体相互作用(protein-ligand interaction, PLI)预测的标准范式是:把蛋白序列和配体字符串喂进双塔编码器,输出一个结合概率。这个范式在 DUD-E、BioSNAP、Human、BindingDB 等基准上已经卷到极高分数,以至于"AUROC 0.98"几乎成了默认起点而非成果。
问题在于监督信号。二元标签只告诉模型"这两个东西在一起还是不在一起",亲和力数值只告诉它"结合得多紧"。这两类信号都把复杂的分子识别过程压缩成了一个标量结果。模型完全可以靠配体侧的统计捷径——分子量、环数、官能团——把标签猜对,而蛋白侧的口袋信息形同虚设。
0.2 InteractBind 的三层回答
第一层是数据:99,391 对样本,每一对除了标签和亲和力,还带七列与蛋白序列逐残基对齐的二值指纹,指示该残基是否参与氢键、盐桥、π-π 堆积、阳离子-π、疏水接触、范德华接触,以及是否参与任意一类(Overall)。
第二层是任务:把"结合位点定位"提升为一级评测任务。模型输出的相互作用图沿配体维取最大值,投影到蛋白残基轴上,得到每个残基的得分,再看 Top-K 里有没有命中真值残基。
第三层是诊断:六类相互作用单独成通道,于是可以问"模型在氢键上强、在阳离子-π 上弱"这类问题,而不是笼统地报一个聚合分数。
0.3 它不解决什么
需要提前说清楚的三条边界:
- 它不是结构级基准。作者在局限性里明确写了,只做序列级评估,三维结构级评测留作未来工作。
- 它的亲和力不是实验值。分值来自对接计算,正负样本靠 −7/−5 kcal/mol 阈值切分,因此带有打分函数自身的系统偏差。
- 它不提供新结构。所有复合物都来自 PDB,它的增量在于"标注"而非"采集"。
§0 读法三则:
- 这个条目是"数据集 + 基准 + 方法论批评"三合一,本体在 HuggingFace,论文在 arXiv,代码仓目前只有 README。
- 全文硬数字以论文 Table 3、Table 2、Table 4 为主,凡与 HuggingFace 实测口径不一致处已在坑 2、坑 3 逐条存照。
- 检索时若只搜 “InteractBind dataset” 会同时命中 HF 数据集卡与 arXiv 摘要页,两处规模数字分别为 151,895 行与 99,391 对,不可互换。
§1 数据集速览:十问十答
Q1:InteractBind 一句话是什么?
一个从 PDB 实验结构派生的大规模蛋白-配体数据集,附带六类非共价相互作用的残基级标注,以及一套把"结合位点定位"作为核心任务的评测基准。
Q2:规模到底多大?
99,391 对蛋白-配体样本,覆盖 11,473 个唯一蛋白与 9,017 个唯一配体。论文摘要写作"约 100k",正文与 Table 3 给的是精确值 99,391。
Q3:样本从哪来?
PDB(Protein Data Bank)。筛选条件是:复合物中至少含一个有机配体且与蛋白结合;剔除所有无机配体与结晶水;剔除配体或蛋白含金属离子的条目;多配体条目按 0.5 nm 距离拆出邻近蛋白链。
Q4:蛋白和配体怎么表示?
蛋白用 FASTA 序列,另加一列由 Foldseek 生成的结构感知序列(structure-aware sequence, SA);配体从 PDB 坐标转成 SMILES,再转成 SELFIES 作为更稳健的序列表示。
Q5:六类相互作用是怎么算出来的?
氢键、盐桥、π-π 堆积、阳离子-π、疏水接触由 PLIP 检测;范德华接触由 GetContacts 计算且只保留吸引项。每一类都有明确的距离与角度阈值(见 §3.2)。
Q6:标签和亲和力哪来的?
二元标签由对接亲和力阈值定义:≤ −7 kcal/mol 为高置信正样本,> −5 kcal/mol 为高置信负样本,中间区间剔除。亲和力分值本身是对接打分,不是实验测定值。
Q7:数据分成几块?
一块分布内(in-distribution, ID)子集 InteractBind-ID:84,825 对;四块蛋白相似度受控的分布外(out-of-distribution, OOD)子集:各 13,126 对,训练-测试最大蛋白相似度分别为 25%、28%、31%、33%。
Q8:为什么 OOD 集要按蛋白相似度切?
因为序列基模型的泛化难度主要取决于训练与测试序列的相似度。仅按标识符冷启动切分未必更困难,按相似度上限切分才能真实模拟"面对陌生靶点"的场景。
Q9:评测什么指标?
二元任务的 AUROC/AUPRC/ACC/F1;定位任务的 BRHR@1/@3/@5,辅以 Precision、Recall、mAP(后三者在 GitHub README 中给出定义)。亲和力任务用常规回归指标。
Q10:怎么拿到、许可如何?
HuggingFace 上 Zhaohan-Meng/InteractBind,gated: false,无需申请;load_dataset 一行加载。许可为 CC BY 4.0。
§2 数据构成与规格
2.1 总量与三个口径
同一份数据在三个地方有三种"规模"表述,必须分开看:
| 口径 | 数值 | 出处 | 含义 |
|---|---|---|---|
| 论文完整集 | 99,391 对 | 论文 §2.2 + Table 3 | 全部筛选后的蛋白-配体对 |
| ID 子集 | 84,825 对 | Table 3 | 通过亲和力阈值筛选后的分布内子集 |
| 单个 OOD 集 | 13,126 对 | Table 3 + HF split_statistics_table.csv | 四集各 13,126,训练/验证/测试 10,492:1,317:1,317 |
| HF 全库行数 | 151,895 行 | GitHub README | 含 affinity 全表在内的已发布切片总行数 |
四个 OOD 集加总为 52,504 行,ID 子集 84,825 对并未单独成文件发布,而是以 affinity 配置下的 data/affinity/data.csv(648 MB)整体提供。因此"151,895 行"与"99,391 对"不是矛盾,而是两个不同层级的计数:前者是文件行数连同 OOD 子集的重复出现,后者是论文口径的唯一样本数。
2.2 唯一性统计
| 子集 | 对数 | 唯一蛋白 | 唯一配体 |
|---|---|---|---|
| InteractBind(完整) | 99,391 | 11,473 | 9,017 |
| InteractBind-ID | 84,825 | 10,942 | 6,911 |
| P-25% OOD | 13,126 | 3,278 | 9,527 |
| P-28% OOD | 13,126 | 2,966 | 8,957 |
| P-31% OOD | 13,126 | 3,202 | 10,083 |
| P-33% OOD | 13,126 | 4,807 | 11,084 |
一个值得注意的现象:OOD 子集的唯一配体数(8,957–11,084)反而高于完整集的 9,017 附近水平,且蛋白数远少于完整集。这说明 OOD 切分不是"抽一小块",而是先按蛋白相似度聚簇、再从簇内抽样配体;换句话说,OOD 集的配体多样性高于蛋白多样性,这与"评估陌生靶点"的设计意图一致。
2.3 文件与体积
| 文件 | 大小(字节) | 说明 |
|---|---|---|
| data/affinity/data.csv | 648,036,721 | ID 主表(最大单文件) |
| data/p_ood_25/train.csv | 43,872,080 | 25% 相似度上限,训练 |
| data/p_ood_25/validation.csv | 24,760,793 | 验证 |
| data/p_ood_25/test.csv | 24,758,947 | 测试 |
| data/p_ood_28/train.csv | 63,381,328 | 28% 训练 |
| data/p_ood_31/train.csv | 69,690,992 | 31% 训练 |
| data/p_ood_33/train.csv | 60,927,054 | 33% 训练 |
| split_statistics.csv | 582 | 逐子集正负与唯一数明细 |
| split_statistics_table.csv | 263 | 论文 Table 3 的 CSV 版 |
全仓库合计 989,110,899 字节(约 943 MiB)。HF API 的 usedStorage 字段显示 290,522,392 字节,这是去重后的 LFS 存储口径,与下载体积不是一回事——按后者估网络流量会严重低估。
2.4 字段结构
每条样本至少包含以下字段族:
- 蛋白侧:
protein_sequence(FASTA 氨基酸串)、structure_aware_sequence(Foldseek SA 串) - 配体侧:
ligand_smiles、ligand_selfies - 监督:
label(0/1)、affinity(kcal/mol 级对接分值) - 七列残基级指纹:
Hydrogen bonding_binding_site、Salt Bridges_binding_site、π–π Stacking_binding_site、Cation–π_binding_site、Hydrophobic_binding_site、Van der Waals_binding_site、Overall_binding_site
七列指纹的值都是与 FASTA 等长的二值列表。README 给的例子是 [0,0,1,0] 表示第三个残基是结合位点残基。负样本对若没有接触图,七列全填 0——这一点在训练时必须显式处理,否则模型会把"全零"学成"负类"的捷径。
2.5 与"结构级"数据集的区别
PDBbind、CrossDocked2020、PLINDER 等资源的中心对象是三维结构:坐标、构象、口袋几何。InteractBind 的中心对象是序列上的标注:它刻意丢掉了坐标,只保留"第 37 位残基与配体有氢键"这类信息。这个取舍换来的是可以直接与序列编码器(ESM、SELFormer 等)对接的 token 级监督,代价是无法直接用于结构级任务如构象生成或口袋重打分。
§3 标注流水线:从坐标到指纹
3.1 五步构建流程
- 结构收集:从 PDB 拉取全部含蛋白-配体复合物的条目,仅保留至少有一个有机配体且确实与蛋白结合的。
- 净化:移除所有无机配体与结晶水;剔除配体或蛋白中含金属离子的复合物(金属配位会干扰氢键与盐桥的几何判定)。
- 拆链:多配体条目按 0.5 nm 距离拆分,只保留配体 0.5 nm 邻域内的蛋白链,避免把无关链的残基误标为结合位点。
- 表示转换:蛋白经 Foldseek 转成结构感知序列并保留原始 FASTA;配体从 PDB 坐标转 SMILES,再转 SELFIES。
- 接触检测与投影:PLIP 与 GetContacts 输出残基-原子接触,按残基归并成六类二值指纹,再求并集得 Overall。
3.2 六类相互作用的几何判据
论文 Table 4 给出的阈值是本数据集最可复用的部分,直接决定标注的松紧:
| 类型 | 距离/几何判据 | 强度映射 |
|---|---|---|
| 氢键 | 供体-受体距离 2.2 < d ≤ 4.1 Å;供体角 ≥ 100° 作为过滤 | 线性衰减至 [1e-6, 1] |
| 盐桥 | 电荷中心距离 2.8 < d ≤ 5.5 Å | 同上 |
| π-π 堆积 | 环心距离 3.4 < d ≤ 5.5 Å;角偏差 ≤ 30°;环偏移 ≤ 2.0 Å | 同上 |
| 阳离子-π | 阳离子与环心距离 3.0 < d ≤ 6.0 Å | 同上 |
| 疏水接触 | 非极性原子距离 3.0 < d ≤ 5.0 Å | 同上 |
| 范德华 | d0 < d ≤ 4.5 Å,d0 = R_vdW(A) + R_vdW(B) | 同上,仅保留吸引项 |
阈值设定与 PLIP 默认参数基本一致,说明作者倾向"沿用社区共识"而非另立标准,这对跨数据集比较是有利的。但要注意:PLIP 的默认阈值本身是把"可检测的接触"而非"能量上重要的接触"作为目标,5.5 Å 的盐桥上限会纳入相当一部分弱静电作用。
3.3 从接触图到结合位点
六类接触先各自形成"配体原子 × 蛋白残基"的二值矩阵,再把矩阵沿配体维压缩成每个残基的 0/1 标记:只要该残基与任一配体原子在某类接触中出现,就记为 1。七列指纹中的 Overall 是六类并集。
这一步的信息损失值得强调:原始接触图保留"哪个原子连哪个残基",投影后只剩"这个残基参与过"。因此 InteractBind 支持残基级定位评测,但不支持原子级接触保真度评测——后者是作者在 README 中提到希望社区补充设计新指标的方向。
3.4 负样本怎么造
论文的做法是:对每个阳性蛋白,用对接反复生成配体,直到至少获得一个"有效阴性"配体(对接亲和力 > −5 kcal/mol)。发布版实测每个 OOD 子集的正负比严格为 6,563 : 6,563,即 1:1。
这里有两个需要警惕的点:
- 负样本是对接生成的诱饵而非实验证实的非结合物,因此"负"的含义是"打分显示不该结合",不是"实验显示不结合"。
- 论文正文未披露正负样本的绝对数量,1:1 是从 HuggingFace 的
split_statistics.csv实测得来(见坑 5)。
3.5 复现的三个断点
想从 PDB 原始结构重跑这套流水线,会遇到三个断点:
- PDB 快照:论文未说明使用哪一天的 PDB 全量快照,条目数会随时间增长。
- 工具版本:PLIP 只标年份(2025),GetContacts 只标访问日期(2026-05-06),Foldseek 与 PyMOL 无版本号。
- 分辨率过滤:论文称结构"高质量"但未给出任何分辨率或 R-factor 阈值。
作者提供的是已标注的数据产品,而非一条可一键重跑的构建脚本;GitHub 仓库目前只有 README 与一张概览图。
§4 任务定义与评测协议
4.1 四个任务的分工
InteractBind 把评测拆成四个任务,前两个是老任务,后两个是新任务:
| 任务 | 输入 | 输出 | 评价指标 |
|---|---|---|---|
| 二元结合预测 | 蛋白序列 + 配体串 | 0/1 结合概率 | AUROC、AUPRC、ACC、F1 |
| 亲和力预测 | 蛋白序列 + 配体串 | 数值(kcal/mol) | 回归指标(文中未细化) |
| 结合位点定位 | 蛋白序列 + 配体串 | 每个残基一个得分 | BRHR@1/@3/@5、Precision、Recall、mAP |
| 相互作用类型预测 | 蛋白序列 + 配体串 | 每类型的残基得分 | 分类型的 BRHR@K |
关键在于后两个任务的输出不是标量而是序列上的密集预测。这要求模型的中间层能够输出"蛋白残基 × 配体单元"矩阵,而不是只输出一个池化后的向量。这也是本文只评测"交互感知(interaction-aware)"模型的原因——纯双塔模型没有这样的矩阵可投影。
4.2 BRHR 的精确定义
BRHR 全称 Binding Residue Hit Rate,即结合残基命中率。设模型导出的相互作用矩阵为 P,行是配体 token(或原子),列是蛋白残基,P_ij 表示配体单元 i 与残基 j 的预测相互作用得分。
第一步,沿配体维取最大值,得到残基级得分:
s_j = max_{i ∈ {1..m}} P_ij
第二步,取 Top-K 残基集合 R_K。第三步,单样本判定:
BRHR(K) = 1 若 R_K ∩ T ≠ ∅
BRHR(K) = 0 否则
其中 T 是真值结合位点残基集合。第四步,对 N 个样本取均值:
BRHR_avg(K) = (1/N) · Σ_i BRHR_i(K)
4.3 BRHR 的三个设计取向及其代价
取向一:只要命中一个就给满分。 这是 BRHR 与 Precision/Recall 最大的区别。Top-5 预测里命中 1 个真值残基即得 1 分,命中 5 个也是 1 分。好处是它对"模型还没学会排序、但至少找到了一块兴奋区"的状态有区分力;坏处是它对"位点覆盖是否完整"完全无感。
取向二:只沿蛋白轴评估。 论文明确说明,不同序列模型以原子、子结构、图节点或学习 token 作为配体单元,直接比较原子-残基接触不公平,因此把相互作用图投影到蛋白残基轴上。这个选择让不同类型模型可以同台,但也丢掉了"配体侧是否定位正确"的信息。
取向三:Top-K 而不是阈值。 使用 Top-K 避免了不同模型得分尺度不一的问题,代价是 K 的取值直接决定难度。K=1 时,随机命中率约等于 1/序列长度,也就是千分之一量级;K=5 时随机命中率约 5/300 ≈ 1.7%。所以 BRHR@5 的 35.6% 距离随机基线确有实质差距,而 BRHR@1 的 21.6% 也不能简单理解为"只比随机好一点"。
4.4 分布内协议:五折交叉验证
ID 子集的构造分两步。先按对接亲和力筛样本:≤ −7 kcal/mol 进正类,> −5 kcal/mol 进负类,中间值全部剔除——目的是在两类之间留出清晰间隔,减少打分函数噪声带来的标签歧义。再对筛后的 84,825 对做 5 折交叉验证,结果报 5 折的均值 ± 标准差。
用"亲和力阈值"而不是"随机配对"来定义正负,是本文相对早期 PLI 基准的一个重要改进。随机配对产生的负样本往往在理化性质上与正样本差异过大,模型只需识别分子量或极性就能分开,这会让 AUROC 虚高。
4.5 分布外协议:蛋白相似度受控切分
OOD 集的构造用 Needleman-Wunsch 全局序列比对度量蛋白相似度,然后按最大训练-测试相似度 25%、28%、31%、33% 四档切分。每档按 8:1:1 划分为训练/验证/测试。
这个设计回答的是一个很实际的问题:当你要预测的靶点在训练集里没有近亲时,模型还剩多少本事?四档相似度上限构成一条"难度梯度",理论上相似度上限越高(允许越像的蛋白同时出现在训练与测试中),分数应该越好。
实测结果与这个直觉一致:FusionDTI 的二元 AUROC 从 25% 档的 81.8% 单调升到 33% 档的 91.8%,BRHR@5 从 28.4% 升到 30.1%。换句话说,数据泄漏的松紧直接决定分数的高低,任何声称在 PLI 任务上达到 95%+ 的工作,都必须先声明自己的相似度控制口径。
4.6 八折口径的缺口
需要指出协议层面的两个空白:
- 亲和力任务的指标未细化。论文列出亲和力预测是支持任务之一,八模型评测中也有相关结果,但正文对回归指标(RMSE?Pearson?Spearman?)未给出与二元/定位同等级的说明。
- 结构级指标缺席。作者在局限性中直言目前只有序列级基准,三维结构级评测留作未来工作,理由是构象柔性与多解性使结构级真值难以统一定义。
§5 八模型评测:强预测、弱定位
5.1 参评模型与选型逻辑
八个模型全部是序列基或"交互感知"模型,按架构可分三组:
| 分组 | 模型 | 架构特征 |
|---|---|---|
| Transformer 双塔 | MolTrans、TransformerCPI | 子结构-序列交互建模 |
| 注意力增强 | HyperAttentionDTI、PerceiverCPI、CAT-DTI | 多种注意力变体 |
| 双线性/融合 | DrugBAN、GraphBAN、FusionDTI | 双线性注意力、token 级融合 |
选型逻辑很清楚:这八个模型都能输出"蛋白残基 × 配体单元"的中间矩阵,因而都能被投影到残基轴上评 BRHR。纯池化模型被排除在外。
5.2 二元结合预测:天花板已在眼前
ID 子集 5 折结果(单位 %,均值 ± 标准差):
| 模型 | AUROC | AUPRC | ACC | F1 |
|---|---|---|---|---|
| MolTrans | 95.1±2.2 | 93.7±1.2 | 88.6±0.4 | 88.1±0.5 |
| TransformerCPI | 95.4±0.3 | 90.8±0.8 | 89.1±0.4 | 88.5±0.6 |
| HyperAttentionDTI | 95.5±0.6 | 92.8±0.3 | 84.1±0.9 | 88.5±0.5 |
| PerceiverCPI | 96.9±0.2 | 92.6±0.5 | 86.6±0.8 | 82.2±0.7 |
| CAT-DTI | 96.8±0.4 | 92.5±0.6 | 88.1±0.5 | 87.0±0.3 |
| DrugBAN | 97.6±1.2 | 94.3±0.4 | 89.3±0.4 | 88.3±1.4 |
| GraphBAN | 97.8±0.2 | 94.4±0.3 | 88.9±0.4 | 88.5±0.4 |
| FusionDTI | 98.3±0.2 | 95.9±0.4 | 90.1±0.3 | 89.9±0.2 |
三点观察:
- AUROC 区间极窄。八个模型从 95.1 到 98.3,跨度只有 3.2 个百分点。这说明二元任务的区分度已经饱和,排名主要反映实现细节而非范式差异。
- AUPRC 与 ACC 更分散。CAT-DTI 的 AUROC 高达 96.8 但 AUPRC 只有 92.5;PerceiverCPI 的 ACC 86.6、F1 82.2 明显低于同组。AUROC 高而 ACC/F1 低,通常意味着阈值附近的判定不稳。
- FusionDTI 全面领先。它在四个指标上都排第一,是后续定位分析的主参照点。
5.3 结合位点定位:断崖式下跌
同一批模型在同一份 ID 子集上的 BRHR(单位 %):
| 模型 | BRHR@1 | BRHR@3 | BRHR@5 |
|---|---|---|---|
| MolTrans | 10.9±0.5 | 17.7±0.2 | 22.4±0.8 |
| TransformerCPI | 10.9±0.2 | 16.7±0.7 | 21.7±0.4 |
| HyperAttentionDTI | 12.3±0.4 | 17.7±0.6 | 20.8±0.3 |
| PerceiverCPI | 10.6±0.1 | 13.9±0.5 | 19.9±0.9 |
| CAT-DTI | 12.2±0.7 | 14.8±0.2 | 22.1±0.6 |
| DrugBAN | 15.7±0.6 | 23.9±0.1 | 31.4±0.4 |
| GraphBAN | 16.1±0.5 | 22.9±0.2 | 30.4±0.6 |
| FusionDTI | 21.6±0.1 | 29.6±0.3 | 35.6±0.2 |
把两张表并排看,反差极其刺眼:
- FusionDTI 的 AUROC 是 98.3%,BRHR@1 只有 21.6%。也就是说,约五分之四的样本里,模型认为最可能结合的五个残基(Top-1 取一个)全部落空。
- PerceiverCPI 的 AUROC 排第四(96.9),但 BRHR@3 掉到全组最低(13.9),甚至不如 AUROC 最低的 MolTrans。
- 二元任务与定位任务虽然整体正相关(FusionDTI 两项都第一),但排序并不完全一致,说明这两个能力不是同一件事。
5.4 按相互作用类型拆开:难度分层
FusionDTI 在六类通道上的 BRHR@5:
| 类型 | BRHR@5 | 相对最强/最弱 |
|---|---|---|
| 范德华 | 33.2 | 最强 |
| 氢键 | 28.9 | — |
| 疏水接触 | 28.2 | — |
| 盐桥 | 27.9 | — |
| π-π 堆积 | 18.2 | — |
| 阳离子-π | 16.1 | 最弱 |
范德华与阳离子-π 之间差了 17.1 个百分点,最强项是最弱项的两倍。这个分层有清晰的物理解释:
- 范德华与疏水接触是空间弥散、数量众多的作用,一个口袋里往往几十个残基都参与,命中概率天然更高。
- π-π 堆积与阳离子-π 依赖特定的芳香环几何排布与电荷分布,参与的残基数量少、位置集中,一旦排序偏了就是全空。
- 氢键介于两者之间:数量多但方向性强。
作者对此的结论很直接:只看聚合的 Overall BRHR 会掩盖模型在不同相互作用机制上的表现差异,分类型标注才是更有诊断力的那部分。
5.5 OOD 泛化:相似度是总开关
| 模型 | AUROC@25% | AUROC@33% | BRHR@5@25% | BRHR@5@33% |
|---|---|---|---|---|
| FusionDTI | 81.8 | 91.8 | 28.4 | 30.1 |
| DrugBAN | 79.1 | 89.0 | 27.8 | 29.1 |
| GraphBAN | 81.7 | 90.8 | — | — |
三个读数:
- 二元任务从 98.3% 跌到 81.8%(25% 档)是 OOD 的真实代价。ID 与 OOD 之间约 16.5 个百分点的落差,比八个模型之间的差异(3.2 个百分点)大五倍。
- 定位任务的 OOD 衰减反而平缓。BRHR@5 从 28.4 到 30.1,波动只有 1.7 个百分点。这暗示定位能力本身可能更依赖局部理化规律而非特定蛋白家族的记忆——也可能只是 BRHR 这个指标太粗糙,掩盖了真实的衰减。
- 相似度上限从 25% 放宽到 33%,所有模型都涨。这是切分口径差异,不是模型改进;跨论文比较分数时若不一致声明这一口径,结论没有意义。
5.6 读这组数字的四条守则
- 不要跨口径比 AUROC。ID 的 98.3% 与 OOD 25% 档的 81.8% 是两套数据,不是"下降"的同一条曲线——除非你要讨论泛化。
- BRHR@1 不要读成百分比准确率。它是"Top-1 命中即 1"的样本级均值,随机基线在千分之一量级,21.6% 与 50% 之间的差距远比数字看起来大。
- 分类型数字才是诊断。报聚合分数等于放弃了这个数据集最有价值的部分。
- 注意正负样本 1:1。AUPRC 在 1:1 平衡集上比在真实不平衡场景(正样本可能只占 1%)下乐观得多,部署时不能直接引用。
§6 获取与许可:一扇没有门禁的门
6.1 三条入口,一个许可
| 入口 | 地址 | 内容 | 门禁 |
|---|---|---|---|
| HuggingFace 数据集 | Zhaohan-Meng/InteractBind |
全部 CSV(affinity + 四个 OOD) | 无(gated: false) |
| arXiv 论文 | arXiv:2605.24045 | 方法、协议、全部结果表 | 无 |
| GitHub 仓库 | ZhaohanM/InteractBind |
README、概览图、引用信息 | 无 |
许可统一为 CC BY 4.0:可以商用、可以再分发、可以训练模型,只需署名。这在药物发现领域属于相当宽松的口径——同类资源里,PDBbind 的核心数据需注册获取,BioSNAP 的原始来源 DrugBank 本体对商用有限制。
6.2 一行加载
官方 README 给出的加载方式:
from datasets import load_dataset
# 分布内主表
ds = load_dataset("Zhaohan-Meng/InteractBind", "affinity")
# 四个蛋白相似度 OOD 基准集
p25 = load_dataset("Zhaohan-Meng/InteractBind", "p_ood_25")
p28 = load_dataset("Zhaohan-Meng/InteractBind", "p_ood_28")
p31 = load_dataset("Zhaohan-Meng/InteractBind", "p_ood_31")
p33 = load_dataset("Zhaohan-Meng/InteractBind", "p_ood_33")
五个配置名必须写对:affinity、p_ood_25、p_ood_28、p_ood_31、p_ood_33。写 ood_25 或 P-OOD-25 都会报配置不存在。OOD 配置下会自动切出 train/validation/test 三个 split,affinity 配置只有一个 train split——因为它本身就是完整的 ID 表,切分要自己做 5 折。
6.3 版本链与发布时序
一个有意思的时序事实:
- HuggingFace 仓库创建于 2026-02-18,比 arXiv v1(2026-05-21)早三个月。
- HF 最后更新于 2026-05-29,即论文上线后一周。
- GitHub 仓库建于 2026-05-28,最后一次推送在 2026-10-09——说明作者仍在维护。
"先发数据、后发论文"在数据集类工作里越来越常见:数据先上线接受社区试用,论文再定稿。代价是早期用户可能在无文档情况下使用数据,且若数据更新而论文未同步,就会出现口径漂移。
6.4 相关入口
README 另列了一个 HuggingFace Space:Zhaohan-Meng/ExplainBind,定位为 related demo。它不在论文中,本文也未对其功能做核验,检索者若需可视化解释功能可自行查看。
6.5 关于代码缺失
GitHub 仓库当前内容只有 README.md(约 8 KB)与 assets/InteractBind.png(约 900 KB)。没有训练脚本、没有评测脚本、没有数据构建脚本。这意味着:
- 想复现八模型结果,需要自己实现训练与 BRHR 计算(README 给了 BRHR 的精确定义,可实现)。
- 想复现标注流水线,需要自己搭 PLIP + GetContacts + Foldseek 的管线。
- 仓库的
license字段为 null,没有 LICENSE 文件——代码部分的许可状态未明示,只有徽章标了 CC BY 4.0。若计划商用代码,需先向作者确认。
§7 生态定位与横向对比
7.1 论文自己的对比表
论文 Table 1 用五个维度对比了七个序列基数据集:
| 数据集 | 二元标签 | 亲和力 | 对接负样本 | 结合位点 | 相互作用类型注释 |
|---|---|---|---|---|---|
| DUD-E | ✓ | – | ✓ | – | – |
| BindingDB | ✓ | ✓ | – | – | – |
| BioSNAP | ✓ | – | – | – | – |
| Human | ✓ | – | – | – | – |
| Davis | – | ✓ | – | – | – |
| KIBA | – | ✓ | – | – | – |
| InteractBind | ✓ | ✓ | ✓ | ✓ | ✓ |
这张表是本文最有力的论证:只有它同时具备全部五项。DUD-E 擅长生成诱饵但没有位点标注;BindingDB 有亲和力但无负样本设计;Davis/KIBA 只有亲和力矩阵。需要说明的是,Table 1 未列出各数据集规模,也未列年份,因此无法从这张表直接读出"规模更大"这一优势——规模优势要看 §2。
7.2 与结构类资源的分工
| 资源 | 中心对象 | 与本数据集的关系 |
|---|---|---|
| PDB(43) | 实验结构坐标 | InteractBind 的原始来源 |
| PDBbind(134) | 实验亲和力 + 结构 | 亲和力金标准;InteractBind 用对接值替代 |
| CrossDocked2020(164) | 交叉对接构象 | 负样本生成范式近邻 |
| PLINDER(184) | 系统级结构评测集 | 结构级评测的近邻 |
| Binding MOAD(174) | 复合物级亲和力 | 亲和力侧上游 |
| InteractBind | 序列 + 残基级接触标注 | 唯一同时给出类型化接触的序列级资源 |
一句话分野:结构类资源回答"构象长什么样",InteractBind 回答"哪几个残基参与了哪一类力"。两者互补,不能互替。
7.3 位置图
实验亲和力
▲
PDBbind│Binding MOAD
│ ● InteractBind
│ (对接值 + 接触标注)
──────────┼──────────────────► 残基级标注粒度
无 │ 有
│ DUD-E PLINDER
│ BioSNAP (结构级)
▼
打分诱饵
横轴是标注粒度,纵轴是亲和力来源。InteractBind 在右上象限但纵轴位置低于 PDBbind——它用对接值换取规模与标注,这笔交易是否划算,取决于你的下游任务是"排序筛选"还是"亲和力定量"。
7.4 与前代基准的关系
InteractBind 不替代任何现有基准,而是加了一个维度。若你的研究目标是:
- 虚拟筛选排序:DUD-E + LIT-PCBA(154) 仍是首选,它们的诱饵更难。
- 亲和力定量:PDBbind(134) 的实验值不可替代。
- 可解释性/位点定位:InteractBind 目前是唯一的成规模选择。
- 结构级任务:PLINDER(184)、CrossDocked2020(164)。
§8 方法学启示:三条可迁移的经验
8.1 把评测指标设计成"能暴露失败"
大多数基准的设计动机是"提供一个公平赛场",InteractBind 的设计动机则是"提供一个能让人丢脸的考场"。BRHR@1 的 21.6% 就是这个动机的产物——如果只报 AUROC,没人会发现定位能力的缺口。
可迁移的做法:在构造基准时,先问"如果模型只学到了捷径,哪个指标会暴露它",再把这个指标设为主指标。本文的捷径是"配体侧统计特征",暴露它的指标是"Top-1 残基命中率"。
8.2 相互作用类型拆分 = 内置的误差分析
把 Overall 拆成六个通道,等于把误差分析预置进数据集。任何在该数据集上报聚合分数的论文,审稿人都可以要求它同时报分类型分数;一旦报出,性能分层立刻可见。
这个设计思路可以迁移到任何"多因素合成标注"的场景:如果标签是多条规则合成的,就应该逐条规则给标签,而不是只给并集。
8.3 相似度受控切分应成为默认
蛋白相似度从 25% 放宽到 33%,FusionDTI 的 AUROC 就从 81.8% 涨到 91.8%。这十个百分点的差距,比过去几年模型架构改进带来的提升还大。凡是未声明相似度控制口径的 PLI 论文,其"state-of-the-art"声明应当打折看待。
可迁移的做法:报告结果时至少给两档相似度上限(如 30% 与 90%),让读者看到模型的"泄漏敏感度"。
8.4 序列级是务实的第一步,不是终点
作者在局限性里坦承只做序列级评测,并把结构级列为未来方向,理由是构象柔性使结构级真值难以统一。这个坦诚值得肯定,但也提示了一个方向:谁能定义一个可操作的"结构级接触保真度"指标,谁就拿到了这个领域的下一个话语权。
§9 与库内条目的关系
9.1 家族图谱
上游(数据来源)
- PDB(rid 43):全部复合物的原始结构来源
- AlphaFold DB(rid 40 / 573):无实验结构时的补充结构预测来源,本文未使用
- UniProt(rid 37):蛋白序列与标识符体系的上游
同域(蛋白-配体资源)
- BindingDB(rid 91):Table 1 对比对象,二元 + 亲和力,无位点标注
- PDBbind(rid 134):实验亲和力金标准
- Binding MOAD(rid 174):复合物级亲和力库
- CrossDocked2020(rid 164):交叉对接与诱饵生成范式
- PLINDER(rid 184):系统级结构评测资源
- Davis(rid 234)/ KIBA(rid 244):仅亲和力的激酶基准,Table 1 对比对象
工具与配体侧
- PLIP(rid 840):本文六类相互作用中五类的检测工具本体
- ChEMBL(rid 85)/ ZINC(rid 90)/ DrugBank(rid 89 / 571)/ Drug Target Commons(rid 1080):配体与活性数据的上游生态
评测范式近邻
- LIT-PCBA(rid 154):真实实验来源的虚拟筛选基准
- PPB-Affinity(rid 814):蛋白-蛋白亲和力数据集,任务近邻、模态不同
- ProteinGym(rid 813):蛋白质适应性大规模基准,评测方法论近邻
9.2 检索路径建议
- 若你的兴趣是"为什么 AUROC 会骗人",从本条目 → ProteinGym(813) → LIT-PCBA(154)。
- 若你的兴趣是"蛋白-配体数据全景",从本条目 → PDBbind(134) → BindingDB(91) → Binding MOAD(174) → PLINDER(184)。
- 若你的兴趣是"接触检测怎么做",从本条目 → PLIP(840) → PDB(43)。
9.3 消歧声明
- InteractBind ≠ BindingDB:前者是序列 + 残基级接触标注,后者是亲和力数据库。两者的"binding"词根相近但对象完全不同。
- InteractBind ≠ PLINDER:后者是结构级系统评测资源,前者是序列级标注。
- InteractBind ≠ Binding MOAD:后者以复合物为单位给亲和力,前者以"对"为单位给接触指纹。
- 库内
binding-moad(rid 174)曾被模糊查询命中,属词根巧合,非同一实体。
§10 避坑清单:十个已踩过的坑
这一节给出一条最小可行的上手路径,按顺序执行即可在半天内拿到第一组可比的分数。每个步骤只依赖前一步的产物,不要求理解全文。
10.5.1 环境与数据(约 30 分钟)
pip install datasets pandas numpy scikit-learn rdkit
python -c "import datasets; print(datasets.__version__)"
下载建议按需而非全量:若先做二元任务,只需 affinity 配置;若先做定位任务,只需 affinity + 一个 OOD 配置。全量 943 MiB 在没有 SSD 的机器上解压与缓存会明显变慢。
缓存位置默认在 ~/.cache/huggingface/datasets,一份全量数据会占用约 1.5 GB(CSV 解压后体积大于压缩传输体积)。容器环境下记得把缓存目录挂到持久卷,否则每次重建都要重下。
10.5.2 第一次数据体检(约 20 分钟)
打开数据后,先跑五项体检,把"数据长什么样"摸清楚再谈建模:
- 长度一致性:随机抽 200 条,断言七列指纹长度都等于
len(protein_sequence)。若出现不等,说明有序列缺失或非标准残基,需要单独处理。 - 全零比例:统计七列中
Overall_binding_site全零的样本占比,这就是"无接触图"的样本量,决定了定位任务的有效样本数。 - 正负分布:确认
label列在 OOD 集上是严格 1:1;在affinity全表上则可能是另一种比例,需要单独统计。 - 类型通道的稀疏度:分别统计六列的非零样本占比。阳离子-π 与 π-π 的非零占比大概率显著低于范德华与疏水,这直接决定了这两个通道的有效分母很小,报分时置信区间会很宽。
- 重复检查:按 (蛋白, 配体) 去重,看是否有同一对在
affinity与某个 OOD 集中同时出现。这是判断"能否跨配置合并训练"的前提。
10.5.3 基线先行(约 1 小时)
在训练任何模型之前,先跑两个不学习的基线,建立分数参照:
- 随机残基基线:对每个样本随机给每个残基一个 0–1 的分数,计算 BRHR@1/@3/@5。期望值约等于 K/L(L 为序列长度均值)。这个数字是"完全不会"的下界。
- 长度先验基线:给每个残基的分数设为其在训练集中成为结合位点的频率(位置无关的频率表,或按相对位置分箱的频率表)。这个基线能回答"模型是否只是学到了有偏的位点先验"。
若某个模型的 BRHR@5 低于长度先验基线,说明它在这个任务上还不如一个查表法,需要重查训练流程。
10.5.4 第一次训练(约 3 小时)
最小配置建议:
| 项 | 建议 | 理由 |
|---|---|---|
| 蛋白编码器 | ESM-2 小档位 | 与 README 提到的 ESM 兼容,且参数量可控 |
| 配体编码器 | 字符级 CNN 处理 SELFIES | 无需构图,实现成本最低 |
| 交互层 | 双线性或外积 | 必须能输出残基×配体矩阵,否则无法投影 |
| 损失 | 二元交叉熵 + 七通道加权 BCE | 位点通道权重要小(如 0.2),否则压过主任务 |
| 掩码 | 全零样本在定位损失上屏蔽 | 否则学到"全零=负"的捷径 |
| 早停 | 按验证集 BRHR@5 而非 AUROC | 主指标要对齐目标 |
一个常见的失误是把位点损失权重设得过高:定位标签非常稀疏(正例占比常在 5% 以下),权重一大就会让模型把所有残基都预测为结合位点以换取召回,AUROC 随之崩塌。建议先只训二元任务拿到基线,再加入位点辅助头,两次结果对照。
10.5.5 报分模板
无论结果好坏,报告时至少给出以下六项,否则结论无法被复现或比较:
| 项 | 示例 |
|---|---|
| 使用的配置 | affinity(5 折)/ p_ood_25(8:1:1) |
| 数据版本 | HF commit b99a31d |
| 蛋白相似度口径 | ID / OOD-25% / OOD-33% |
| 二元指标 | AUROC、AUPRC、ACC、F1(5 折或 5 种子 mean±std) |
| 定位指标 | BRHR@1/@3/@5 + 有效样本数(排除全零后) |
| 分类型指标 | 六通道各自的 BRHR@5 + 各通道有效样本数 |
有效样本数是最容易被漏报的一项。 阳离子-π 通道的有效样本可能只有总样本的一小部分,此时 BRHR@5 的方差极大,一个 16% 与 20% 的差异完全可能是噪声。
10.5.6 与论文结果的对照方法
论文的八个基线结果不能直接与你的模型比,除非满足三个条件:同样的 5 折划分、同样的指纹列定义、同样的 Top-K 投影方式(沿配体维取最大)。三条件里最容易被忽略的是第三条——如果你的模型直接输出残基级得分而不是残基×配体矩阵,那你的"BRHR"其实评估的是另一个任务(残基级二分类的 Top-K 命中),与论文不同源。
建议做法:先用论文的口径在你的模型上复算一遍,再选一个最接近的基线(如 GraphBAN)在相同环境下重训,两者对照才有意义。直接照抄论文表格里的 35.6% 比自己模型算出的数,是跨实现比较中最常见的错误来源。
10.5.7 常见失败模式与排查顺序
| 症状 | 可能原因 | 排查第一步 |
|---|---|---|
| AUROC 高但 BRHR 极低 | 模型没输出残基级矩阵,投影退化 | 检查交互层输出形状 |
| BRHR 高于论文一截 | 划分不同(用了 ID 却声称 OOD) | 核对配置名 |
| BRHR 稳定在 5% 附近 | 全零样本未屏蔽,模型学会输出零 | 统计预测非零率 |
| 分类型指标全为 NaN | 该通道无有效样本被全过滤 | 打印各通道有效样本数 |
| 训练损失下降但验证不降 | 位点损失权重过高 | 把位点权重降到 0.1 以下 |
| 两次运行差异很大 | 未固定种子或未做 5 种子平均 | 固定种子并重复 5 次 |
10.5.8 一天能走多远
按上述路径,一天内可完成:环境搭建 → 数据体检 → 两个参考基线 → 一次最小训练 → 一组符合报告模板的分数。这个分数大概率远低于论文的 35.6%,但这正是这个数据集要传达的信息:在真实条件下,定位任务并不容易,而"能跑通一遍并诚实地报出低分",比引一个漂亮的高分更有价值。
坑 1:把"约 100k"当成精确规模。
摘要写 approximately 100k,正文和 Table 3 写 99,391。写论文引用时用 99,391,并注明摘要口径。
坑 2:把 HF 的 151,895 行当成样本数。
这是已发布切片的文件行数总和,含 OOD 子集与 affinity 全表的重复出现。唯一样本数是 99,391。
坑 3:以为 OOD 集各 13,126 对是"新增样本"。
四个 OOD 集是从同一批复合物里按蛋白相似度重新切分的,与 ID 子集有重叠。它们不是四份独立数据,而是四套划分方案。
坑 4:把负样本当成实验证实的非结合物。
负样本由对接诱饵生成,阈值 > −5 kcal/mol。“负"的含义是"打分说不该结合”,不是"实验说不结合"。
坑 5:以为论文给了正负样本比例。
论文未披露绝对数量。1:1(6,563:6,563)是从 HF 的 split_statistics.csv 实测的,属发布版事实而非论文声明。
坑 6:把全零指纹当作普通负样本训练。
负样本对的七列指纹全为 0。若不加掩码直接当标签,模型会学到"全零 = 负类"的捷径,而非真正的位点判别。
坑 7:用 usedStorage 估下载量。
HF API 的 usedStorage 是 290 MB(去重口径),实际下载体积是 943 MiB。按前者做容量规划会翻车。
坑 8:以为 GitHub 仓库有代码。
仓库只有 README 与一张概览图。训练、评测、构建脚本均需自己实现,且代码许可未明示。
坑 9:跨相似度档位比较 AUROC。
25% 档 81.8% 与 33% 档 91.8% 是同一个模型在两种切分上的成绩,差距来自切分口径而非模型改进。引用时必须标明档位。
坑 10:以为 BRHR 高就等于定位准。
BRHR 只要求 Top-K 里命中一个真值残基,不惩罚漏检也不惩罚误报。要评估覆盖度必须同时看 Recall 与 mAP(README 定义了这两个指标,但论文未系统报告)。
§10.5 上手实操清单:从零到第一次 BRHR 分数
这一节给出一条最小可行的上手路径,按顺序执行即可在半天内拿到第一组可比的分数。每个步骤只依赖前一步的产物,不要求理解全文。
10.6.1 环境与数据(约 30 分钟)
pip install datasets pandas numpy scikit-learn rdkit
python -c "import datasets; print(datasets.__version__)"
下载建议按需而非全量:若先做二元任务,只需 affinity 配置;若先做定位任务,只需 affinity 加一个 OOD 配置。全量 943 MiB 在没有 SSD 的机器上解压与缓存会明显变慢。
缓存位置默认在 ~/.cache/huggingface/datasets,一份全量数据解压后会占用约 1.5 GB,明显大于压缩传输体积。容器环境下记得把缓存目录挂到持久卷,否则每次重建环境都要重下。
10.6.2 第一次数据体检(约 20 分钟)
打开数据后,先跑五项体检,把数据长什么样摸清楚再谈建模:
- 长度一致性:随机抽 200 条,断言七列指纹长度都等于
len(protein_sequence)。若出现不等,说明有序列缺失或非标准残基,需要单独处理。 - 全零比例:统计七列中
Overall_binding_site全零的样本占比,这就是「无接触图」的样本量,决定了定位任务的有效样本数。 - 正负分布:确认
label列在 OOD 集上是严格 1:1;在affinity全表上则可能是另一种比例,需要单独统计。 - 类型通道的稀疏度:分别统计六列的非零样本占比。阳离子-π 与 π-π 的非零占比大概率显著低于范德华与疏水,这直接决定了这两个通道的有效分母很小,报分时置信区间会很宽。
- 重复检查:按(蛋白,配体)去重,看是否有同一对在
affinity与某个 OOD 集中同时出现。这是判断能否跨配置合并训练的前提。
10.6.3 基线先行(约 1 小时)
在训练任何模型之前,先跑两个不学习的基线,建立分数参照:
- 随机残基基线:对每个样本随机给每个残基一个 0 到 1 的分数,计算 BRHR@1/@3/@5。期望值约等于 K/L(L 为序列长度均值)。这个数字是「完全不会」的下界。以 300 残基蛋白为例,BRHR@1 约 0.33%,BRHR@5 约 1.7%。
- 长度先验基线:给每个残基的分数设为其在训练集中成为结合位点的频率(位置无关的频率表,或按相对位置分箱的频率表)。这个基线能回答「模型是否只是学到了有偏的位点先验」。
若某个模型的 BRHR@5 低于长度先验基线,说明它在这个任务上还不如一个查表法,需要重查训练流程。
10.6.4 第一次训练(约 3 小时)
最小配置建议:
| 项 | 建议 | 理由 |
|---|---|---|
| 蛋白编码器 | ESM-2 小档位 | 与 README 提到的 ESM 兼容,参数量可控 |
| 配体编码器 | 字符级 CNN 处理 SELFIES | 无需构图,实现成本最低 |
| 交互层 | 双线性或外积 | 必须能输出残基×配体矩阵,否则无法投影 |
| 损失 | 二元交叉熵 + 七通道加权 BCE | 位点通道权重要小(如 0.2),否则压过主任务 |
| 掩码 | 全零样本在定位损失上屏蔽 | 否则学到「全零 = 负」的捷径 |
| 早停 | 按验证集 BRHR@5 而非 AUROC | 主指标必须对齐目标 |
一个常见的失误是把位点损失权重设得过高:定位标签非常稀疏(正例占比常在 5% 以下),权重一大就会让模型把所有残基都预测为结合位点以换取召回,AUROC 随之崩塌。建议先只训二元任务拿到基线,再加入位点辅助头,两次结果对照。
10.6.5 报分模板
无论结果好坏,报告时至少给出以下六项,否则结论无法被复现或比较:
| 项 | 示例 |
|---|---|
| 使用的配置 | affinity(5 折)或 p_ood_25(8:1:1) |
| 数据版本 | HF commit b99a31d |
| 蛋白相似度口径 | ID / OOD-25% / OOD-33% |
| 二元指标 | AUROC、AUPRC、ACC、F1(5 折或 5 种子均值±标准差) |
| 定位指标 | BRHR@1/@3/@5 加有效样本数(排除全零后) |
| 分类型指标 | 六通道各自的 BRHR@5 加各通道有效样本数 |
有效样本数是最容易被漏报的一项。 阳离子-π 通道的有效样本可能只有总样本的一小部分,此时 BRHR@5 的方差极大,一个 16% 与 20% 的差异完全可能是噪声。
10.6.6 与论文结果的对照方法
论文的八个基线结果不能直接与你的模型比,除非满足三个条件:同样的 5 折划分、同样的指纹列定义、同样的 Top-K 投影方式(沿配体维取最大)。三条件里最容易被忽略的是第三条——如果你的模型直接输出残基级得分而不是残基×配体矩阵,那你的「BRHR」其实评估的是另一个任务(残基级二分类的 Top-K 命中),与论文不同源。
建议做法:先用论文的口径在自己的模型上复算一遍,再选一个最接近的基线(如 GraphBAN)在相同环境下重训,两者对照才有意义。直接拿自己模型的数去对论文表格里的 35.6%,是跨实现比较中最常见的错误来源。
10.6.7 常见失败模式与排查顺序
| 症状 | 可能原因 | 排查第一步 |
|---|---|---|
| AUROC 高但 BRHR 极低 | 模型没输出残基级矩阵,投影退化 | 检查交互层输出形状 |
| BRHR 高于论文一截 | 划分不同(用了 ID 却声称 OOD) | 核对配置名 |
| BRHR 稳定在 5% 附近 | 全零样本未屏蔽,模型学会输出零 | 统计预测非零率 |
| 分类型指标全为 NaN | 该通道无有效样本被全过滤 | 打印各通道有效样本数 |
| 训练损失下降但验证不降 | 位点损失权重过高 | 把位点权重降到 0.1 以下 |
| 两次运行差异很大 | 未固定种子或未做 5 种子平均 | 固定种子并重复 5 次 |
10.6.8 一天能走多远
按上述路径,一天内可完成:环境搭建、数据体检、两个参考基线、一次最小训练、一组符合报告模板的分数。这个分数大概率远低于论文的 35.6%,但这正是这个数据集要传达的信息:在真实条件下,定位任务并不容易,而能跑通一遍并诚实地报出低分,比引一个漂亮的高分更有价值。
10.6.9 从数据到产品的三个过渡点
若目标是把这个数据集用到实际项目里,有三处需要额外设计,论文与仓库都没有覆盖:
- 从位点指纹到可解释输出。BRHR 只告诉你命中与否,不告诉你命中在哪一类作用力上。产品化时通常需要按六通道分别可视化,让化学家看到「这个模型认为此处是氢键」而不仅是「此残基重要」。
- 从 1:1 平衡集到真实不平衡场景。真实虚拟筛选的命中率常在 0.1% 到 1% 量级,与 1:1 差了三个数量级。在平衡集上训练的判别阈值不能直接迁移,需要按目标库的正例率重校准。
- 从对接分值到实验验证。亲和力列是对接计算值,用作训练监督没问题,但作为「结合强度」对外呈现时必须声明来源,否则会被误读为实验测定。
这三点的共同教训是:数据集交付的是中间表示,把它变成产品还需要一层领域翻译。
§11 总结
11.1 三句话总结
- InteractBind 用 PDB 实验结构 + PLIP/GetContacts 造出 99,391 对带六类非共价接触标注的蛋白-配体样本,把序列级监督从"结合/不结合"推进到"哪个残基、靠哪类力"。
- 八个主流模型在其上的表现呈现系统性割裂:二元 AUROC 高达 98.3%,结合位点 Top-1 命中率仅 21.6%,且不同类型相互作用之间相差一倍。
- 它最大的价值不在数据量,而在评测设计——BRHR 与分类型通道把"模型是否真的看懂结合"变成可测的问题。
11.2 适合谁
- 做蛋白-配体相互作用预测、需要可解释性评估的研究组
- 想给自己的模型加"位点定位"辅助任务以提升泛化的工程团队
- 研究评测方法论、关心基准设计如何暴露模型捷径的学者
- 需要一份 CC BY 4.0 可商用训练数据的数据工程团队
11.3 不适合谁
- 需要实验亲和力金标准做定量预测的团队(应去 PDBbind)
- 需要三维构象做对接或生成建模的团队(应去 CrossDocked2020/PLINDER)
- 需要真实不平衡场景(正样本极少)下 AUPRC 参考的部署方
- 期待开箱即用训练代码的用户(仓库无代码)
11.4 30 秒决策卡
| 你的问题 | 答案 |
|---|---|
| 能不能商用? | 能,CC BY 4.0,署名即可 |
| 要不要申请? | 不要,gated=false |
| 多大? | 99,391 对,下载约 943 MiB |
| 有什么独家的? | 六类非共价接触的残基级二值指纹 |
| 最该看的数字? | FusionDTI:AUROC 98.3% vs BRHR@1 21.6% |
| 最大的坑? | 负样本全零指纹、跨档位比 AUROC |
FAQ(高频问答 30 问)
A. 基础认知
1. InteractBind 是一个数据集还是一个基准?
两者都是。数据(CSV)在 HuggingFace,评测协议(任务定义、指标、切分)在 arXiv 论文。单独下载数据但不用其协议,只利用了它一半的价值。
2. 它和 AlphaFold 有关系吗?
没有直接关系。全部结构来自 PDB 实验解析,不使用 AlphaFold 预测结构。若未来扩展到无实验结构的复合物,AlphaFold 可能成为补充来源,但当前版本没有。
3. “physically grounded” 是什么意思?
指标注来自实验结构的几何测量,而非模型注意力权重。论文用这个词强调:指纹里的每一个 1,都对应 PDB 坐标中一个可测量的原子间距离。
4. 为什么没有年份和规模列的对比表?
论文 Table 1 只对比标注能力五项。规模对比放在 Table 3(仅 InteractBind 自身各子集),不做跨数据集规模比较。这可能是为了避免陷入"我的数据比你大"的争论。
5. 这个名字会不会和别的数据集撞?
“interact” 词根在生物数据领域很常见,但 InteractBind 作为专名目前唯一。库内模糊检索命中的 binding-moad、pdbbind、bindingdb 都是不同实体。
B. 数据与获取
6. 下载要多大?
全仓库 943 MiB。若只做定位任务,只下 data/affinity/data.csv(648 MB)+ 一个 OOD 配置即可。
7. 能不能只下测试集?
可以。OOD 配置的 test.csv 各约 8–25 MB,load_dataset(..., split="test") 即可。
8. 为什么 affinity 配置没有 test split?
因为 affinity 给的是完整 ID 表,论文用 5 折交叉验证,切分由使用者自己做。HF 只提供了一张 train 表。
9. 有中文文档吗?
没有。HF 数据集卡与 GitHub README 均为英文。
10. 数据会不会更新?
HF 最后更新 2026-05-29,GitHub 最后推送 2026-10-09。有维护迹象但无版本号标签,建议下载后记录 commit sha(当前 b99a31d)。
C. 标注与字段
11. 七列指纹的顺序重要吗?
每列独立,顺序无关。但 Overall_binding_site 必须是六类的并集,不能单独解释。
12. 指纹长度一定等于 FASTA 长度吗?
按设计是的。异常情况(序列缺失、非标准氨基酸)的处理论文未说明,实际使用时建议加断言校验。
13. 一个残基能不能同时标六类?
能。全部取 1。这与"一个残基既参与氢键又参与疏水接触"的物理事实一致。
14. 为什么没有金属配位这一通道?
含金属离子的复合物在筛选阶段被整体剔除(见 §3.1),所以没有金属配位标注。
15. 配体侧有标注吗?
没有。全部标注投影到蛋白残基轴,配体侧只保留 SMILES/SELFIES 表示。
D. 评测与指标
16. BRHR@1 的随机基线是多少?
约 1/L,L 为蛋白长度。300 残基的蛋白约 0.33%。所以 21.6% 是随机基线的六十余倍。
17. 为什么不用 AUPRC 评定位?
AUPRC 需要把残基预测二值化(选阈值),而不同模型得分尺度不同。Top-K 避免了阈值选择问题。
18. Precision/Recall/mAP 在论文里报了吗?
论文主表以 BRHR 为主。Precision、Recall、mAP 的定义在 GitHub README 中给出,作为 BRHR 的补充,但论文未系统报告这三项结果。
19. 五折交叉验证的折是怎么分的?
论文只说 5-fold CV,未说明是否按蛋白分组。若按样本随机分,同一蛋白的不同配体可能跨折出现,会高估分数。这是需要向作者确认的点。
20. 为什么 OOD 只做 8:1:1 而不是 5 折?
OOD 协议是"一次划分、五次随机种子"报 mean±std,与 ID 的 5 折不同。两套协议不可直接比较。
E. 结果解读
21. 98.3% 的 AUROC 是不是说明任务已经解决?
不。ID 集正负 1:1、来源同分布、诱饵由对接生成,三重条件都偏乐观。OOD 25% 档跌到 81.8% 才是更接近实战的数字。
22. 定位能力弱是不是因为模型没为这个任务训练?
作者倾向这个解释:现有模型主要靠二元标签训练,缺乏大规模位点监督来直接引导相互作用图。这也解释了为什么加了类型通道后差异更明显。
23. 为什么范德华最好定位?
因为它数量最多、空间最弥散。一个口袋里几十个残基都有范德华接触,Top-K 几乎必然撞上。
24. 为什么阳离子-π 最难?
含芳香环的残基(Phe/Tyr/Trp)数量有限,且需要正电荷中心在特定几何位置。参与残基少,Top-K 稍偏就全空。
25. 这些结论能不能推广到结构模型?
不能直接推广。八个基线都是序列基模型,结构模型(如几何 GNN)的表现完全未测。
F. 工程与复现
26. 想复现 FusionDTI 的 98.3% 要多久?
取决于实现。仓库无代码,需自行复现 FusionDTI 并接入 InteractBind 数据。论文未给训练超参,只能说"工作量不小"。
27. 全零指纹怎么处理?
两种常见做法:训练时对负样本的位点损失加掩码(mask),或把负样本从定位任务中排除、只用于二元任务。论文未规定,需自行实验。
28. 能直接拿来做迁移学习的辅助任务吗?
这是它最实用的用法:在主任务(如亲和力回归)之外,加一个预测六类指纹的辅助头。位点监督作为正则,理论上能抑制配体侧捷径。
29. 数据有隐私或伦理问题吗?
没有。全部来自 PDB 公开结构,不含患者数据,不涉及人体受试者。
30. 引用格式?
BibTeX 键 meng2026largescaleinteractbind,见 GitHub README 的 Citation 节。条目类型是 @misc,不是 @article——因为当时仍在审稿。
事实清单(硬事实 34 条)
| # | 事实 | 来源 |
|---|---|---|
| 1 | 数据集名 InteractBind | HF / arXiv |
| 2 | 论文 arXiv:2605.24045,v1 2026-05-21 | arXiv 列表页 |
| 3 | 投稿 NeurIPS 2026 Evaluations & Datasets Track | arXiv Comments |
| 4 | 7 位作者:Meng/Bai/Yuan/Ounis/Meng/Xu/Loscalzo | arXiv |
| 5 | 完整集 99,391 对 | Table 3 |
| 6 | 唯一蛋白 11,473 | Table 3 |
| 7 | 唯一配体 9,017 | Table 3 |
| 8 | ID 子集 84,825 对 | Table 3 |
| 9 | ID 唯一蛋白 10,942 / 配体 6,911 | Table 3 |
| 10 | 四个 OOD 集各 13,126 对 | Table 3 |
| 11 | OOD 蛋白相似度上限 25/28/31/33% | 论文 §3 |
| 12 | OOD 切分 10,492:1,317:1,317 | HF split_statistics_table.csv |
| 13 | OOD 正负比 6,563:6,563 | HF split_statistics_table.csv |
| 14 | 正样本阈值 ≤ −7 kcal/mol | 论文 §3 |
| 15 | 负样本阈值 > −5 kcal/mol | 论文 §3 |
| 16 | 中间区间剔除 | 论文 §3 |
| 17 | ID 用 5 折交叉验证 | 论文 §3 |
| 18 | OOD 用 8:1:1 + 5 随机种子 | 论文 §3 |
| 19 | 蛋白表示 FASTA + Foldseek SA | 论文 §2 + README |
| 20 | 配体表示 SMILES + SELFIES | 论文 §2 |
| 21 | 六类相互作用由 PLIP + GetContacts 检测 | 论文 §2 |
| 22 | 氢键 2.2–4.1 Å,供体角 ≥100° | Table 4 |
| 23 | 盐桥 2.8–5.5 Å | Table 4 |
| 24 | π-π 3.4–5.5 Å,角偏 ≤30°,偏移 ≤2.0 Å | Table 4 |
| 25 | 阳离子-π 3.0–6.0 Å | Table 4 |
| 26 | 疏水 3.0–5.0 Å | Table 4 |
| 27 | 范德华 d0–4.5 Å,仅吸引项 | Table 4 |
| 28 | 七列残基级二值指纹 | HF README |
| 29 | FusionDTI AUROC 98.3%,BRHR@1 21.6% | Table 2 |
| 30 | 最低 BRHR@1 为 PerceiverCPI 10.6% | Table 2 |
| 31 | 类型 BRHR@5 最高范德华 33.2%、最低阳离子-π 16.1% | Fig 3 |
| 32 | OOD AUROC 25% 档 FusionDTI 81.8% → 33% 档 91.8% | Fig 4 |
| 33 | CC BY 4.0 | HF cardData |
| 34 | 仓库总下载体积 943.3 MiB | HF API tree 实测 |
术语表(28 条)
| 术语 | 英文 | 释义 |
|---|---|---|
| 蛋白-配体相互作用 | protein-ligand interaction (PLI) | 小分子配体与蛋白质之间通过非共价力形成的识别与结合关系 |
| 结合位点 | binding site | 蛋白表面与配体直接接触的残基集合 |
| 结合位点定位 | binding-site localisation | 从序列预测哪些残基参与结合的任务 |
| 残基级指纹 | residue-level fingerprint | 与蛋白序列逐位对齐的二值向量,1 表示该残基参与指定类型接触 |
| 非共价相互作用 | non-covalent interaction | 不含共价键的分子间作用力,本文涉六类 |
| 氢键 | hydrogen bond | 供体氢与受体孤对电子间的定向作用 |
| 盐桥 | salt bridge | 带相反电荷基团间的静电作用 |
| π-π 堆积 | π–π stacking | 芳香环之间的面-面或边-面堆积 |
| 阳离子-π | cation–π | 正电荷中心与芳香环 π 电子云的作用 |
| 疏水接触 | hydrophobic contact | 非极性原子在水环境中的聚集倾向 |
| 范德华作用 | van der Waals | 瞬时偶极诱导的弱吸引,本文只取吸引项 |
| PLIP | Protein-Ligand Interaction Profiler | 开源蛋白-配体相互作用检测工具 |
| GetContacts | — | 开源接触计算工具,本文用于范德华 |
| 结构感知序列 | structure-aware sequence (SA) | 由 Foldseek 将三维结构编码成的氨基酸串 |
| SMILES | Simplified Molecular Input Line Entry System | 配体的线性字符串表示 |
| SELFIES | SELF-referencIng Embedded Strings | 保证化学语法合法的配体字符串 |
| PDB | Protein Data Bank | 实验解析生物大分子结构数据库 |
| 对接 | molecular docking | 计算配体在口袋中的结合姿态与打分 |
| 诱饵 | decoy / docking negative | 由对接生成、打分显示不结合的假想配体 |
| 分布内 | in-distribution (ID) | 训练与测试同分布 |
| 分布外 | out-of-distribution (OOD) | 训练与测试分布不同 |
| Needleman-Wunsch | — | 全局序列比对算法,用于度量蛋白相似度 |
| BRHR | Binding Residue Hit Rate | 结合残基命中率,Top-K 中至少一个命中真值即记 1 |
| mAP | mean Average Precision | 残基排序质量指标 |
| AUROC | Area Under ROC Curve | 二分类排序性能指标 |
| AUPRC | Area Under PR Curve | 正类精度-召回曲线下面积,不平衡敏感 |
| 5 折交叉验证 | 5-fold cross-validation | 数据分五份轮流做测试集 |
| CC BY 4.0 | Creative Commons Attribution 4.0 | 允许商用与再分发,需署名 |
附录
附录 A:条目信息速查卡
| 项 | 内容 |
|---|---|
| 类型 | 数据集 + 评测基准(dataset & benchmark) |
| 论文 | arXiv:2605.24045(v1 2026-05-21) |
| 投稿去向 | NeurIPS 2026 Evaluations & Datasets Track(在审) |
| 团队 | 格拉斯哥大学计算科学学院牵头,七机构联合 |
| 规模 | 99,391 对 / 11,473 蛋白 / 9,017 配体 |
| 划分 | ID 84,825 + 四个 OOD 各 13,126 |
| 表示 | FASTA + Foldseek SA;SMILES + SELFIES |
| 标注 | 六类非共价接触 + Overall,共 7 列残基级指纹 |
| 工具 | PLIP(五类)+ GetContacts(范德华) |
| 许可 | CC BY 4.0(数据);代码许可未明示 |
| 获取 | HuggingFace,gated=false |
| 下载体积 | 943.3 MiB |
| 抓取时点 | 2026-10-17 |
| 库内互链 | bindingdb(91)/pdbbind(134)/binding-moad(174)/crossdocked2020(164)/plinder(184)/plip(840) |
附录 B:DAIMS 评估全表
| 维度 | 评分(1-10) | 依据 |
|---|---|---|
| D 可发现性 | 8 | arXiv + HuggingFace + GitHub 三入口齐备,arXiv 页有 HF 链接;但无独立项目主页,GitHub 仅 1 star、无 topic 标签,社区可见度低 |
| A 可获取性 | 9 | CC BY 4.0、无门禁、无需注册,load_dataset 一行加载;扣分项是无官方校验和清单与版本标签 |
| I 可互操作 | 8 | CSV + HF Datasets 标准格式,parquet 转换开箱可用;扣分项是字段名为空格与特殊字符混排(Hydrogen bonding_binding_site、π–π Stacking_binding_site),下游代码需引号包裹 |
| M 元数据质量 | 7 | 论文 Table 3/4 完备,HF 附带 split_statistics.csv;扣分项是工具版本未固定、分辨率阈值未披露、正负绝对值未在论文给出 |
| S 可持续性 | 6 | 依附 HF 与 arXiv 平台,稳定;但核心代码仓为空壳,作者维护意愿需观察,且无 Zenodo DOI 快照 |
| 综合评级 | 7.6/10(良) | 可获取性显著优于同域(BindingDB 需注册、PDBbind 需申请);扣分集中在可复现性(无代码)与元数据完整度 |
附录 C:逐项证据链自证
| 关键数字 | 来源 | 定位 |
|---|---|---|
| 99,391 / 11,473 / 9,017 | 论文 Table 3 | arXiv HTML §2.2 |
| 84,825 / 10,942 / 6,911 | 论文 Table 3 | arXiv HTML §2.2 |
| 13,126 × 4 | 论文 Table 3 + HF split_statistics_table.csv | 双源一致 |
| 6,563:6,563 正负比 | HF split_statistics_table.csv | 实测文件 |
| 10,492:1,317:1,317 | HF split_statistics_table.csv | 实测文件 |
| 648,036,721 B | HF API tree(lfs.size) | 实测 |
| 989,110,899 B 总计 | HF API tree 累加 | 实测 |
| −7 / −5 kcal/mol | 论文 §3 Dataset splits | arXiv HTML |
| 25/28/31/33% 相似度 | 论文 §3 + Table 3 | arXiv HTML |
| Table 4 六类阈值 | 论文 Table 4 | arXiv HTML |
| FusionDTI 98.3/95.9/90.1/89.9 | 论文 Table 2 | arXiv HTML |
| BRHR 八模型数值 | 论文 Table 2 | arXiv HTML |
| 类型 BRHR@5 六值 | 论文 Fig 3 | arXiv HTML |
| OOD 81.8→91.8 | 论文 Fig 4 | arXiv HTML |
| CC BY 4.0 | HF API cardData.license + GitHub README | 双源一致 |
| 151,895 行 | GitHub README “Dataset At A Glance” | 单源(未复算) |
附录 D:数据获取决策树
你想做什么?
├─ 只要二元结合预测的额外训练数据
│ └─ 下 affinity 配置 → 用 label 列
├─ 想做结合位点定位
│ └─ 下 affinity + 任一 OOD 配置 → 用 7 列指纹 + 自建 BRHR
├─ 想测模型对陌生靶点的泛化
│ └─ 下 p_ood_25(最严格)→ 用其 test split 报分
├─ 想做结构级任务
│ └─ 本数据集不适用 → 转 PLINDER(184) / CrossDocked2020(164)
└─ 想要实验亲和力金标准
└─ 本数据集不适用 → 转 PDBbind(134)
附录 E:字段使用规范
| 字段 | 类型 | 使用建议 |
|---|---|---|
| protein_sequence | str | 直接送 ESM/SELFormer 等编码器 |
| structure_aware_sequence | str | 与 FASTA 同长,可作为第二种视图或辅助输入 |
| ligand_smiles | str | RDKit 解析后建图 |
| ligand_selfies | str | 字符级模型首选,语法合法性强于 SMILES |
| label | int 0/1 | 二元任务标签 |
| affinity | float | 对接分值,负值越小结合越强 |
| 七列指纹 | list[int] | 定位任务标签;全零表示无接触图,需掩码处理 |
附录 F:BRHR 与补充指标实现骨架(代码)
import numpy as np
def brhr(pred_scores, true_residues, k):
"""pred_scores: (n_res,) 残基得分; true_residues: set of idx"""
topk = np.argsort(-np.asarray(pred_scores))[:k]
return 1.0 if set(topk.tolist()) & set(true_residues) else 0.0
def brhr_avg(model_scores, labels, k):
"""model_scores: (N, n_res); labels: (N, n_res) 二值
注意:不同样本序列长度不一,需先 padding 并传 mask"""
vals = []
for s, y in zip(model_scores, labels):
true_idx = np.where(np.asarray(y) == 1)[0]
if len(true_idx) == 0:
continue # 该样本该通道无标注,跳过
vals.append(brhr(s, true_idx, k))
return float(np.mean(vals)) if vals else float("nan")
def precision_recall_at_k(pred_scores, true_residues, k):
topk = set(np.argsort(-np.asarray(pred_scores))[:k].tolist())
true = set(true_residues)
tp = len(topk & true)
p = tp / k if k else 0.0
r = tp / len(true) if true else 0.0
return p, r
def average_precision(pred_scores, true_residues):
order = np.argsort(-np.asarray(pred_scores))
hits, precisions = 0, []
true = set(true_residues)
for rank, idx in enumerate(order, start=1):
if idx in true:
hits += 1
precisions.append(hits / rank)
return float(np.mean(precisions)) if precisions else 0.0
三个实现要点:
- 必须先按 mask 过滤 padding,否则短序列的补齐位会被排进 Top-K。
- 该通道无真值残基的样本要跳过,否则 BRHR 恒为 0,把均值拉低。
- 负样本(全零指纹)在定位任务上应整条排除,只保留给二元任务。
附录 G:六类相互作用阈值速查(复现用)
# 依据论文 Table 4,单位 Å
CUTOFFS = {
"hydrogen_bond": (2.2, 4.1, {"donor_angle_min": 100.0}),
"salt_bridge": (2.8, 5.5, {}),
"pi_pi_stacking": (3.4, 5.5, {"angle_dev_max": 30.0, "offset_max": 2.0}),
"cation_pi": (3.0, 6.0, {}),
"hydrophobic": (3.0, 5.0, {}),
"van_der_waals": (None, 4.5, {"lower": "R_vdw_A + R_vdw_B"}),
}
def strength(d, lo, hi):
"""线性衰减并截断到 [1e-6, 1]"""
if lo is None:
return min(1.0, max(1e-6, 1.0))
s = (hi - d) / (hi - lo)
return min(1.0, max(1e-6, s))
注意:直接照抄阈值不等于复现结果。PLIP 还包含环识别、质子化状态判定等隐含步骤,这些在论文中未展开。
附录 H:HuggingFace 加载与 CSV 直读两种路径
# 路径一:datasets 库(推荐,自动处理配置与 split)
from datasets import load_dataset
ds = load_dataset("Zhaohan-Meng/InteractBind", "p_ood_25", split="test")
# 路径二:直接下载 CSV(适合只想看字段结构)
# curl -L -o test.csv \
# https://huggingface.co/datasets/Zhaohan-Meng/InteractBind/resolve/main/data/p_ood_25/test.csv
import pandas as pd
df = pd.read_csv("test.csv", nrows=1000) # 先读 1000 行看结构
print(df.columns.tolist())
print(df.iloc[0].to_dict())
路径二的 nrows 建议保留:完整 test.csv 有 2 万余行、20 余 MB,字段里含长列表,全量读入内存会明显吃紧。
附录 I:规模口径对照表
| 口径 | 数字 | 单位 | 是否可作"样本数"引用 |
|---|---|---|---|
| 摘要约数 | ~100k | 对 | 否(约数) |
| Table 3 完整集 | 99,391 | 对 | 是 |
| Table 3 ID 子集 | 84,825 | 对 | 是(限 ID 语境) |
| Table 3 单 OOD | 13,126 | 对 | 是(限该 OOD 语境) |
| HF 四 OOD 实测合计 | 52,504 | 行 | 否(是行数) |
| GitHub README 全库 | 151,895 | 行 | 否(是行数) |
| HF 下载体积 | 943.3 | MiB | 否(体积) |
| HF usedStorage | 290.5 | MB | 否(去重口径) |
附录 J:八模型 ID 结果合并表
| 模型 | AUROC | AUPRC | ACC | F1 | BRHR@1 | BRHR@3 | BRHR@5 |
|---|---|---|---|---|---|---|---|
| MolTrans | 95.1 | 93.7 | 88.6 | 88.1 | 10.9 | 17.7 | 22.4 |
| TransformerCPI | 95.4 | 90.8 | 89.1 | 88.5 | 10.9 | 16.7 | 21.7 |
| HyperAttentionDTI | 95.5 | 92.8 | 84.1 | 88.5 | 12.3 | 17.7 | 20.8 |
| PerceiverCPI | 96.9 | 92.6 | 86.6 | 82.2 | 10.6 | 13.9 | 19.9 |
| CAT-DTI | 96.8 | 92.5 | 88.1 | 87.0 | 12.2 | 14.8 | 22.1 |
| DrugBAN | 97.6 | 94.3 | 89.3 | 88.3 | 15.7 | 23.9 | 31.4 |
| GraphBAN | 97.8 | 94.4 | 88.9 | 88.5 | 16.1 | 22.9 | 30.4 |
| FusionDTI | 98.3 | 95.9 | 90.1 | 89.9 | 21.6 | 29.6 | 35.6 |
读表提示:AUROC 排序与 BRHR@1 排序在中间段并不一致(PerceiverCPI 的 AUROC 第四、BRHR@1 垫底),这正说明两个能力相互独立。
附录 K:分类型 BRHR@5 与"参与残基数"的假设关系
论文 Fig 3 给出的六类 BRHR@5 呈现清晰分层。一个未经论文证实的解释框架如下,仅供读者自建实验验证:
| 类型 | BRHR@5 | 一般参与残基数 | 空间弥散度 | 推断难度 |
|---|---|---|---|---|
| 范德华 | 33.2 | 高(数十) | 高 | 低 |
| 氢键 | 28.9 | 中高 | 中 | 中低 |
| 疏水 | 28.2 | 高 | 高 | 低 |
| 盐桥 | 27.9 | 低(个位数) | 低 | 中 |
| π-π | 18.2 | 很低 | 极低 | 高 |
| 阳离子-π | 16.1 | 很低 | 极低 | 高 |
疏水类参与残基多却排在氢键之后,说明"数量多"不是唯一因素——疏水接触缺乏方向性,模型难以从序列中判别哪一侧是真正的界面残基。这个观察值得作为后续研究的切入点。
附录 L:与库内六条同域条目的对照
| 条目 | rid | 与本数据集的关系 | 是否可替代 |
|---|---|---|---|
| BindingDB | 91 | Table 1 对比对象,亲和力 + 二元标签 | 否(无位点标注) |
| PDBbind | 134 | 实验亲和力金标准 | 否(无接触标注) |
| Binding MOAD | 174 | 复合物级亲和力 | 否(粒度不同) |
| CrossDocked2020 | 164 | 交叉对接构象与诱饵 | 否(结构级) |
| PLINDER | 184 | 系统级结构评测 | 否(结构级) |
| PLIP | 840 | 本文五类接触的检测工具 | 否(是工具不是数据) |
结论:在库内现有 20 余条蛋白-配体相关条目中,InteractBind 是唯一提供"类型化残基级接触"的资源,其余均只覆盖亲和力或结构之一。
附录 M:数据卡与论文的口径差异存照
| 项 | 数据卡/仓库口径 | 论文口径 | 处置 |
|---|---|---|---|
| 规模 | 151,895 行(README) | 99,391 对 | 正文以论文为准,注明行数含义 |
| 正负比 | 1:1(split_statistics.csv) | 未披露绝对值 | 正文标为发布版实测 |
| OOD 配体数 | PubChem ID 去重 8,276–9,442 | Table 3 为 8,957–11,084 | 两口径不可比,存照 |
| 许可 | CC BY 4.0(数据卡) | 附录 F 未逐条核阅 | 以数据卡为准 |
| 代码许可 | 未声明(仓库 license 为 null) | 未提及 | 标为遗留疑点 |
附录 N:给不同角色的阅读路径
给模型开发者:§2.4 字段 → §5.2/5.3 两表 → 附录 F 指标实现 → 附录 G 阈值。四步可上手。
给数据工程师:§6.2 加载 → 附录 H 两条路径 → 附录 I 口径表 → §10 十个坑。
给论文作者:§4.2 BRHR 定义 → §4.4/4.5 两套协议 → §7.1 对比表 → 附录 M 口径差异。
给临床或药学背景读者:§0 导读 → §1 十问 → §11.1 三句话 → §11.4 决策卡。可跳过 §5 全部数值。
附录 O:待核事项清单
- ID 子集的 5 折是否按蛋白分组(防泄漏)。
- 亲和力任务的回归指标具体是什么。
- PDB 结构的日期快照与分辨率阈值。
- GitHub 仓库代码许可。
- ExplainBind Space 的功能与数据一致性。
- 论文附录 F 的第三方资源许可条款(本次抓取被截断)。
以上六项均已在 FACTS.md §9 记为遗留疑点,发布后若作者回应可单字段更新正文。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- ppb-affinity — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 虚拟筛选 / 分子对接 / 评测基准
- csar — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 虚拟筛选 / 分子对接 / 评测基准
- bindingdb — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 虚拟筛选 / 分子对接
- dud-e — 共享标签:药物发现与化学 / 虚拟筛选 / 分子对接
- drugcomb — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 虚拟筛选
- kiba — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 分子对接 / 评测基准
- plumber — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 虚拟筛选 / 评测基准
- tcmbank — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 虚拟筛选 / 分子对接
- openbind — 共享标签:药物发现与化学 / 分子对接 / 评测基准
- chembl — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 虚拟筛选
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

