课程介绍:ADMET数据与批次效应概述

做药物研发的朋友都知道,光看活性远远不够。我刚开始接触药化项目那会儿,花了好几个月筛出一批候选分子,结果一到动物实验全翻了车——要么毒性超标,要么代谢太快。说白了,ADMET 才是决定一个分子能不能走到临床的关键关卡。

什么是ADMET?

ADMET 是五个词的缩写,我习惯按顺序来理解:

缩写全称白话解释
AAbsorption药物能不能被吸收到血液里
DDistribution药物在体内能不能到对的地方
MMetabolism肝脏会不会把它代谢掉
EExcretion药物最后怎么排出去
TToxicity它会不会毒到正常细胞

这五个维度,任何一个出问题,分子基本就废了。我记得有一次项目组就是因为忽略了代谢稳定性,结果花了三百万做的毒理实验全部白费。嗯,从那以后我再也不小看ADMET数据了。

数据是怎么来的?批次效应又是什么?

现实中的ADMET数据,往往来自不同的实验批次。比如:

  • 周一做的Caco-2渗透实验,和周三做的同一板分子
  • 北京实验室测的肝微粒体半衰期,和上海实验室的数据
  • 不同仪器、不同试剂批次、不同操作员

这些因素都会引入非生物学的噪声。我叫它「批次效应」——不等于实验错误,而是一种系统性的偏移。你看下面这张图就明白了:

ADMET批次效应及其修正流程 批次A实验 (Lab A / 仪器1) 批次B实验 (Lab B / 仪器2) 批次C实验 (不同批次试剂) 合并后的ADMET数据 相同化合物在不同批次里数值不一致 建模 / 筛选结果失真 误判活性、错误预测ADMET ComBat校正 去除批次效应,保留生物信号 一致的、可靠的ADMET数值 批次效应 = 系统偏移 非生物差异,需校正

你有没有遇到过这种情况:同一个化合物,在批次A里Caco-2渗透值是5×10⁻⁶ cm/s,在批次B里测出来只有1.5×10⁻⁶?其实化合物没变,变的是实验条件。这就是典型的批次效应。

为什么不能无视它?

我来说个真实经历。几年前我帮一个团队做ADMET模型,他们从三个供应商拿了数据直接合起来训练随机森林。结果模型在测试集上表现很好,但一放到新化合物上就崩了。来回查了两个月,最后发现——所谓的高准确率,其实是模型学到了批次标签,而不是真实的ADMET规律。说白了,这模型是一个「批次识别器」,不是「预测器」。

警告:直接混合不同批次的ADMET数据做机器学习,会导致严重的过拟合。模型可能记住的是哪个数据来自哪个批次,而不是分子本身的属性。

ComBat 是什么来头?

ComBat 全名 Combatting Batch Effects,本来是基因组学里对付批次效应的利器。后来我试着把它移植到ADMET数据上,效果出乎意料地好。它的核心思想很简单:

  • 假设批次效应是可加性 + 可乘性的
  • 用贝叶斯框架估计每个批次的均值和方差偏移
  • 把偏移从原始数据里减掉,保留生物相关的信号

你想想看,这和「把不同相机拍的照片统一白平衡」差不多一个道理。

使用 ComBat 之前需要什么?

条件说明
已知批次标签每个样本属于哪个实验批次必须明确
至少有2个批次ComBat 需要跨批次估计参数
每个批次有多个样本推荐每个批次至少5~10个样本
测量值应为连续变量比如渗透率、半衰期、IC50,而非分类变量

小提示:如果某些ADMET指标是分类(比如“高/中/低”),可以先做排序转换成数值,再使用ComBat。但最好还是用原始连续值。

一个简单的数据预览

假设我们有一个 CSV 文件,里面记录了几种化合物的 Caco-2 渗透率。我习惯先看原始分布的散点图,确认有没有明显的批次偏移。

# 数据长这样(示例)
Compound, Batch, Caco2_Permeability
MolA, Batch1, 3.2e-06
MolA, Batch2, 1.1e-06
MolB, Batch1, 8.5e-07
MolB, Batch2, 2.3e-07
...

你看 MolA 在两个批次里差了近 3 倍。如果是批次B的试剂放久了或者pH有问题,那这个差异就是噪声,不是真正的理化性质。

本课程能给你什么?

  • 从头理解批次效应的数学本质
  • 亲手在 Python 里运行 ComBat 校正
  • 学会评估校正效果(可视化 + 统计指标)
  • 避开我踩过的那些坑(特别是参数调优部分)

核心思想:ComBat 不是万能钥匙,但在处理多批次的ADMET连续数据时,它比简单均一化要可靠得多。我会带你一步步看懂它到底做了什么,以及什么时候不该用。

好,第一章就是铺垫到这里。记住:认清批次效应,是做好ADMET数据预处理的第一步。后面我们会真正上手写代码,调参数,看效果。到时你会发现——原来数据里的假象可以被轻松揭穿。