245

TDC HTS Group:高通量筛选数据建模任务

TDC HTS Group 提供高通量筛选活性建模任务,适合练习大规模、不平衡的活性预测。这篇讲清任务内容、不平衡处理与假阳性问题。

TDC HTS Benchmark Group 提供来自真实高通量筛选实验的活性预测任务。它的价值在于让你面对真实筛选数据的两个核心困难:极端类别不平衡,以及大量非特异性的假阳性。这两点在整洁的文献数据集上体验不到,却是实际项目的日常。

主要任务

数据集 内容 规模 阳性率
SARSCoV2_Vitro_Touret SARS-CoV-2 体外抗病毒活性 约 1,480 较低
SARSCoV2_3CLPro_Diamond 3CL 蛋白酶抑制(片段筛选) 约 880
HIV 抗 HIV 复制活性 约 41,000 约 3.5%
Butkiewicz 系列 多个 PubChem HTS 靶点 数十万级 0.1%~1%

Butkiewicz 系列最接近真实 HTS 场景:数十万化合物、千分之几的阳性率、来自实际的筛选项目。

不平衡数据的正确处理

from tdc.single_pred import HTS
from sklearn.metrics import average_precision_score, roc_auc_score

data = HTS(name="HIV")
split = data.get_split(method="scaffold", seed=42)
y_true = split["test"]["Y"].values

# 关键:极端不平衡下,两个指标给出完全不同的图景
print("ROC-AUC ", roc_auc_score(y_true, y_score))        # 可能看着很好
print("PR-AUC  ", average_precision_score(y_true, y_score))  # 通常低得多
print("随机基线 PR-AUC =", y_true.mean())                 # 阳性率即随机水平
  • PR-AUC 是主指标:阳性率 0.5% 时,随机模型的 PR-AUC 就是 0.005。你的模型做到 0.05 意味着比随机好 10 倍——这是有意义的结果,而对应的 ROC-AUC 可能是看着漂亮的 0.85。
  • 报告富集因子:EF@1%、EF@0.1% 直接对应「筛前 1% 能捞到多少活性」,是实验室最关心的数字。
  • 谨慎使用重采样:过采样少数类或欠采样多数类会扭曲概率校准。若要做,评测时必须在原始分布上评估。
  • 类别权重优于重采样:多数框架支持 class_weight="balanced"scale_pos_weight,副作用更小。

假阳性:HTS 数据的固有噪声

真实 HTS 的阳性中,相当比例不是真正的特异性结合,而是各种干扰机制造成的:

  • 聚集体形成:化合物在水中形成胶体聚集体,非特异性地吸附并抑制酶。这是 HTS 假阳性最主要的来源之一。
  • 光学干扰:荧光或吸光干扰读数。
  • 化学反应性:迈克尔受体、烷化剂等与蛋白共价反应。
  • 频繁命中者:在多个不相关 assay 中都显示活性的化合物,几乎肯定是干扰。
# 建模前的必要过滤
from rdkit import Chem
from rdkit.Chem import FilterCatalog

params = FilterCatalog.FilterCatalogParams()
params.AddCatalog(FilterCatalog.FilterCatalogParams.FilterCatalogs.PAINS)
params.AddCatalog(FilterCatalog.FilterCatalogParams.FilterCatalogs.BRENK)
catalog = FilterCatalog.FilterCatalog(params)

def is_clean(smi):
    m = Chem.MolFromSmiles(smi)
    return m is not None and not catalog.HasMatch(m)

# 训练前过滤掉 PAINS 与反应性化合物
df_clean = df[df["Drug"].apply(is_clean)]

不过滤就训练,模型会学到「什么化合物容易造成假阳性」而非「什么化合物真正有活性」——这是 HTS 建模最常见的陷阱。

实际价值

  • 练习真实场景的建模纪律:不平衡处理、指标选择、假阳性过滤,这三件事在整洁数据集上学不到。
  • 迭代筛选的模拟:可以用它模拟「先筛一小部分、训模型、再筛模型推荐的部分」这种主动学习流程,评估能省多少实验量。
  • 预期管理:见识到真实 HTS 数据上模型能做到什么水平,有助于对虚拟筛选形成合理预期。

上手提示

  • 极端不平衡下 PR-AUC 与富集因子才有信息量,ROC-AUC 会误导;
  • 建模前必须过 PAINS / 反应性过滤,否则学到的是假阳性模式;
  • 类别权重优于重采样,重采样会破坏概率校准;
  • 用它模拟主动学习筛选流程,评估能省多少实验量。

延伸资源