课程导论:ADMET 预测——从“实验试错”到“数据驱动”
大家好,欢迎来到《自监督预训练加速ADMET预测建模》的第一章。
做药物研发的朋友都清楚,一个候选分子能不能成药,光看它对靶点的活性远远不够。药代动力学特性(吸收、分布、代谢、排泄)和毒性(Toxicology),也就是我们常说的 ADMET,才是卡住项目进度的真正瓶颈。我见过太多在体外活性测试中表现优异的分子,最后因为肝脏代谢过快或 hERG 毒性问题,倒在了临床前最后一公里。说白了,ADMET 预测这个环节,直接决定了候选化合物的命运。
1.1 ADMET 预测的意义:为什么它如此重要?
ADMET 是药物研发的“过滤器”。它回答三个核心问题:
- 能不能到达靶点?(吸收与分布)
- 会不会被快速清除?(代谢与排泄)
- 会不会产生毒性?(安全性)
一个成熟的 ADMET 预测模型,能在虚拟筛选阶段就排除掉 50%-70% 的不可成药分子。这意味着什么?我用一个数字告诉你:节省的每个实验循环,平均能砍掉 8-12 个月的研发时间和数百万美金的成本。
我参与的第一个工业级项目,就是构建 CYP450 酶抑制预测模型。那时候团队花了三个月收集数据,又花了两个月调模型,最终准确率勉强到 80%。但在后续验证中,我发现模型的泛化能力很差——换个骨架的分子,预测值就飘了。那次经历让我意识到:ADMET 预测的难点,从来不是建模算法本身,而是高质量、大规模、多样化的标注数据极度稀缺。
核心结论:ADMET 预测是从“经验试错”向“数据驱动”转型的关键环节。谁能把预测准确率再往上提 5%,谁就能在研发效率上建立巨大的优势。
1.2 传统方法的瓶颈:我们被什么卡住了?
传统 ADMET 建模路径主要有两条:物理模拟和机器学习。
| 方法 | 代表技术 | 典型瓶颈 |
|---|---|---|
| 物理模拟 | 分子动力学(MD)、自由能微扰(FEP) | 计算成本高、通量低,无法大规模筛选 |
| 传统机器学习 | 随机森林、XGBoost、简单 DNN | 依赖手工特征、小样本过拟合、对未见分子泛化差 |
| 深度神经网络 | 图神经网络(GNN)、Transformer | 需要大量标注数据,而公共 ADMET 数据集通常只有几千到几万条 |
说到这里,你可能已经发现问题了。ADMET 实验成本极高——一个单点 hERG 测试要花几百美金,Caco-2 渗透性实验更是既耗时又费力。公开数据库(比如 PubChem、ChEMBL、Tox21)里,每个 ADMET 任务的标注样本数平均在 3000-15000 条之间。你指望一个百万参数的深度模型在这点数据上训出好效果?说实话,很难。
我曾经在 Tox21 挑战赛的五个毒性任务上,尝试用当时最先进的 GNN 直接训练。结果验证集精度比随机森林只高了不到 2%,而且模型极其不稳定,换个 seed 结果就变。那次我悟出一个道理:不是模型不够强,是数据太少了,模型根本没学到分子结构的深层规律。
避坑提醒:我曾经看到一些论文在私有数据集上宣称 SOTA,但换了外部验证集效果直接崩盘。这往往是标注数据与测试数据存在严重的分布偏移。传统监督学习对此束手无策。
1.3 自监督预训练的救场逻辑:让模型先“学会化学”
自监督预训练的核心理念,说白了就是:先让模型在大量无标号分子上学通化学语言,再拿少量标注数据做下游任务。
为什么这招管用?你想想看,模型如果看过千万个 SMILES 表达式或分子图,它会自然而然地学到:哪些原子更容易成键、哪些官能团经常一起出现、什么样的三维构像更稳定。这些都是“化学直觉”。然后我们用几千条 ADMET 标注数据对它做微调——模型只需要把学到的化学知识跟特定的毒性或代谢通路对齐即可。
这就好比,你培养一个工程师:先给他系统的基础课程(自监督预训练),再让他去解决具体的工程问题(微调)。显然,比上来就扔给他一个复杂问题要高效得多。
我个人的习惯:在处理新的 ADMET 任务时,永远先问一个问题——“我能拿到多少无标号分子?”。如果分子量在百万级甚至亿级,自监督预训练的价值就非常大。如果只有几千个分子,那还不如直接用传统方法。
自监督预训练还有一个隐藏优势:它对数据分布偏移的鲁棒性更强。因为预训练阶段见过更多样的分子空间,微调时即使下游标注数据跟预训练分布有差异,模型也不容易崩溃。我记得在应对一个肝毒性(DILI)预测任务时,预训练模型在完全不相关的分子骨架上依然保持了 85% 以上的 AUC,而直接训练的基线模型直接掉到了 70%。
1.4 ADMET 预测中的自监督学习:有哪些具体玩法?
目前主流自监督预训练模式,按分子表示方式可以分为三类:
- 基于序列的(SMILES/字符串):类 BERT 的掩码语言模型(MLM),随机遮蔽 SMILES 中的原子符号或键符号,让模型去预测。代表:ChemBERTa、MolBERT。
- 基于图的(分子图/拓扑结构):对节点(原子)和边(化学键)进行掩码、对比学习或生成式重建。代表:GraphMVP、GROVER、GCL。
- 基于几何的(3D 构象):利用分子的三维坐标进行坐标掩码、距离预测或构象对比。代表:Uni-Mol、TorchMD-NET。
| 范式 | 输入数据 | 典型自监督任务 | 代表性模型 |
|---|---|---|---|
| 序列自监督 | SMILES | 掩码语言模型、对比学习 | ChemBERTa, MolBERT |
| 图自监督 | 分子图(原子+键) | 节点/边掩码、图级对比、上下文预测 | GROVER, GraphMVP, GEM |
| 3D 几何自监督 | 3D 构象 | 坐标掩码、距离预测、构象对齐 | Uni-Mol, TorchMD-NET |
每种方式各有优劣。我个人更倾向于在图和几何之间做融合——一个分子最本质的信息其实藏在其 3D 构象里,但 SMILES 和图可以低成本获取大量数据。如何平衡成本与信息量,是我们这门课的核心课题之一。
1.5 课程学习路线图:我们将怎么走?
这门课一共 30 章,我把它拆成了四个层次:
| 层次 | 章节范围 | 核心内容 |
|---|---|---|
| 基础篇 | 第 1-6 章 | ADMET 背景、分子表示(SMILES/图/3D)、自监督学习基础理论、数据准备与预处理 |
| 方法篇 | 第 7-15 章 | 序列自监督(ChemBERTa)、图自监督(GROVER/GIN/对比学习)、3D 几何自监督(Uni-Mol)、多模态融合 |
| 实战篇 | 第 16-24 章 | 完整微调流水线、迁移学习策略、多任务 ADMET 预测、不确定性估计、模型压缩与部署 |
| 进阶篇 | 第 25-30 章 | 主动学习 + 自监督联合训练、分子生成与 ADMET 优化、联邦学习下的隐私保护、大语言模型(LLM)在 ADMET 中的应用 |
每一章我都会配上可运行的代码示例、数据集路径和避坑经验。你可以把它当成一本操作手册,遇到问题时随手翻阅。
一个小建议:如果你之前没有接触过分子图或 SMILES,建议先把第 2 章(分子表示基础)和第 3 章(自监督学习核心概念)认真啃下来。后面所有实战代码都建立在这两章的基础上。我见过不少同学跳过基础直接调代码,结果卡在数据预处理上出不来。