药物发现深度学习:分子性质预测与生成
引言
在传统药物发现中,从靶点识别到先导化合物优化往往需要十年以上的时间,耗资数十亿美元。深度学习正在改变这一局面,尤其在分子性质预测与全新分子生成两个关键环节,它大幅降低了实验成本和时间。本教程将带你从零开始,理解如何在药物发现中应用深度学习方法,重点关注分子性质预测(判断分子是否具有特定活性、毒性等)与分子生成(设计全新的类药分子)。
核心概念:分子表示
深度学习的起点是如何将分子转化为模型可理解的数值形式。主流表示方法可分为三类:
基于序列的表示:SMILES 与 InChI
- SMILES(简化分子线性输入规范)将分子结构编码为字符串,如阿司匹林的 SMILES 为
CC(=O)Oc1ccccc1C(=O)O。 - 优点:紧凑,可直接用循环神经网络(RNN)、Transformer 等序列模型处理。
- 缺点:字符串对结构信息的表达不直接,微小改动可能破坏语义,且同一分子有多个合法 SMILES,增加学习难度。
基于图的表示
分子自然被视为图:原子 = 节点,化学键 = 边。节点特征包括原子类型、电荷、杂化状态等;边特征包括键类型、共轭等。图表示保留了完整的拓扑和局部化学信息,是当前性质预测的主流输入形式。
三维几何表示
包含原子坐标,能够刻画立体化学和构象。通常用于需要空间信息的任务,如蛋白质-配体相互作用预测。表示方法有网格体素、点云或球坐标图等。
分子性质预测
性质预测是“虚拟筛选”的核心:给定分子库,快速预测活性、毒性、溶解度等,挑出最有希望进入实验验证的候选物。
图神经网络(GNN)用于分子性质
图神经网络是处理图结构数据的标准工具,其中消息传递神经网络(MPNN) 框架最具代表性:
- 消息函数:邻居原子与边传递信息。
- 更新函数:中心原子聚合邻居消息并更新自身状态。
- 读出函数:聚合所有原子状态得到分子级表示,用于性质预测。
常用模型如 GCN、GAT(含注意力)、MPNN、SchNet(引入距离信息)等。实际训练时会将分子图分为训练/验证/测试集,使用回归或分类损失优化。
基于SMILES的序列模型
直接用一维 SMILES 作为输入时可使用:
- RNN/LSTM:早期方法,双向 LSTM 对 SMILES 序列编码。
- Transformer:自注意力机制能捕捉长距离依赖,适合 SMILES 这类可长可短的序列,如 ChemBERTa 即基于 BERT 架构在百万分子上预训练,可用于下游性质预测微调。
迁移学习与预训练
标注数据稀少是药物发现的核心痛点。大规模无标注分子数据库(如 ZINC、ChEMBL)催生了分子预训练模型:
- 节点/边屏蔽预测:随机遮盖原子或键,让模型推断被遮盖部分。
- 上下文预测:判断子图是否来自同一分子。
- 对比学习:让同一分子的不同增广视图表示接近,不同分子远离。
预训练后的模型只需少量标签微调,即可在小数据集性质预测上达到高准确度。
不确定性估计
药物发现中,错误预测的代价极高。深度学习模型不仅应给出预测值,还应给出置信度。常见方法:
- 集成学习:训练多个模型,预测方差作为不确定性。
- 贝叶斯神经网络:对权重分布建模。
- 蒙特卡洛 Dropout:推理时多次 dropout,取方差。
这些技术能有效识别“模型不熟悉”的分子,避免盲目信任预测结果。
分子生成
性质预测是评估已有分子,而分子生成旨在从头设计具有特定性质的全新分子,相当于“分子逆向设计”。
基于SMILES的生成模型
直接将 SMILES 视为语言,使用生成式模型:
- 循环神经网络(RNN)生成器:在大量类药分子 SMILES 上训练字符级语言模型,可从随机起点采样生成新 SMILES。结合强化学习,可微调生成向目标性质(如高活性)偏移。
- 变分自编码器(VAE):编码器将 SMILES 嵌入连续隐空间,解码器从隐空间重建 SMILES。通过在隐空间进行插值或优化,可以产生新分子。
- 生成对抗网络(GAN):同样可在隐空间生成分子,但训练较不稳定,在离散 SMILES 输出上需技巧(如梯度估计)。
图生成模型
直接从分子图出发生成,输出原子和键的序列化决策:
- 基于节点序贯生成:一步一步添加原子和键,常用 RNN 或图神经网络指导生长过程,如 MoFlow 等模型生成键与原子特征。
- 图变分自编码器:编码分子图到隐空间,解码生成邻接矩阵和节点特征矩阵。需解决图同构和变长问题。
图生成模型天然保证生成分子的化学有效性更高,但训练和采样复杂度也高于 SMILES 模型。
面向目标的分子优化
纯粹的随机生成并不实用,需要将生成引导至理想的化学空间。常用策略:
- 强化学习:以分子性质预测模型作为“奖励函数”,用策略梯度更新生成器,使得生成高奖励分子的概率增加。
- 贝叶斯优化(BO) 与隐空间搜索:在 VAE 的连续隐空间中,用 BO 寻找满足多种性质的隐向量,再解码为分子。
- 遗传算法:对分子种群进行交叉、变异,根据适应度选择后代,不依赖可微模型。
多目标性质优化
实际药物分子需同时满足活性、选择性、代谢稳定性、低毒性等多个目标。可以通过标量化(加权和)、帕累托前沿搜索或条件生成(输入目标性质作为条件)来实现多目标设计。
实践工具与资源
- RDKit:化学信息学工具包,可计算描述符、处理 SMILES、渲染分子。
- DeepChem:基于 TensorFlow/PyTorch 的分子深度学习库,提供各类数据集和预训练模型。
- PyTorch Geometric / DGL:图神经网络库,方便搭建 MPNN 等模型。
- Hugging Face Molecule Transformers:如 ChemBERTa,可直接调用微调。
- 开源数据库:
- ChEMBL:生物活性数据。
- ZINC:可用于虚拟筛选的商业可得类药分子库。
- Tox21:毒性终点数据。
- QM9:小分子量子化学性质。
实战流程:从数据到生成性质优化模型
数据准备与清洗
- 从 ChEMBL 获取针对某靶点(如 EGFR)的抑制活性数据。
- 去除溶剂、盐,标准化 SMILES,去除重复,标注活性阈值(IC50 < 1μM 为活性,>10μM 为非活性)。
- 计算分子指纹、训练图表示等。
构建性质预测分类器
- 使用 RDKit 提取图特征,搭建 3 层 MPNN,在训练集上优化二分类交叉熵。
- 在测试集上用 AUC、精确率等评估。
- 用该模型作为后续生成任务的奖励函数。
训练分子生成器
- 使用预训练 SMILES VAE(如 JunctionTree VAE)在大规模分子库上训练,得到隐空间。
- 将性质预测模型作为 oracle,用策略梯度(REINFORCE)微调解码器,奖励函数 = 预测为活性的概率 - 合成可及性惩罚。
- 采样生成新分子,检查新颖性、有效性、类药性。
湿实验验证与迭代
最终生成的高分分子会被合成并测试。实验数据反馈回来,重新训练预测模型,进入“设计-合成-测试-分析”闭环。这个循环是 AI 驱动药物发现的核心范式。
挑战与展望
- 合成可及性:生成的分子可能在计算机上完美,但难以合成。近年已出现逆合成预测模型(基于 Transformer 或图网络)辅助评估合成路线。
- 小样本学习:许多靶标仅有几十个活性分子,元学习、匹配网络等方法正在被引入。
- 动态与三维结构:仅配体信息不够,未来需深度融合蛋白质三维结构(AlphaFold 等),使用几何深度学习进行结合亲和力预测,将开启基于结构的药物设计新纪元。
- 可解释性:为何模型认为某个分子有效?注意力权重、图显著图、反事实解释等方法逐步被用于揭示结构-活性关系。
- 自动化流程:从靶点发现到临床前候选化合物的全自动 AI 实验室(云端实验室+AI 决策)正在成为现实,深度生成与预测模型将作为核心大脑。
总结
药物发现中的深度学习已经不再只是辅助工具,而是成为高效设计分子的核心引擎。掌握分子表示、性质预测和图/序列生成模型,能让你快速进入这个交叉学科前沿。建议从复现简单的分子性质预测模型开始,逐步尝试条件生成,最终构筑自己的 AI 辅助分子设计流程。