PaddleHelix 是百度基于 PaddlePaddle 构建的生物计算开源框架,覆盖分子表示、性质预测、蛋白结构、药物-靶点相互作用等方向。对国内团队而言,它的中文文档与本地化支持是实际的优势。
主要模块
| 模块 | 内容 | 对应 |
|---|---|---|
| 分子表示预训练 | GEM 等图预训练模型 | 见 142《Uni-Mol 论文精读》 |
| 分子性质预测 | ADMET、活性 | 见 156《AI ADMET 预测模型》 |
| 蛋白结构预测 | HelixFold 系列 | 见 112《AlphaFold2 论文精读》 |
| 药物-靶点相互作用 | DTI 模型 | 见 157《AI DTI 预测模型》 |
| 分子生成 | 生成模型 | 见 158《AI 分子生成模型》 |
| RNA 结构 | RNA 二级结构预测 | — |
| 疫苗设计 | mRNA 序列优化 | — |
GEM:几何增强的分子表示
# PaddleHelix 中较有特色的工作
#
# 核心思想:
# 在分子图的基础上,显式加入【几何信息】
# - 键长
# - 键角
# - 二面角
# 作为图中的额外节点/边特征
#
# 与纯拓扑 GNN 的差异(见 159):
# 纯拓扑:只知道「哪些原子相连」
# GEM: 还知道「它们在空间中的相对位置」
#
# 预训练任务:
# - 预测键长、键角(几何信息的自监督)
# - 预测原子距离矩阵
# → 【与 MolBERT 的思路一致(见 146)】:
# 用可计算的量作为免费的监督信号
#
# 【评估建议】:
# 与 Uni-Mol(见 142)、Chemprop(见 131)
# 在同一数据、同一划分下比较
# → 【不同工作报告的数字不可直接比较】
# 因为划分方式、超参数预算可能不同
HelixFold 系列
- HelixFold:AlphaFold2 的 PaddlePaddle 复现,重点在训练效率优化;
- HelixFold-Single:不需要 MSA 的单序列预测,用蛋白语言模型表示替代(与 ESMFold 思路一致,见 116《ESMFold 论文精读》);
- HelixFold3:AF3 级的复合物预测能力;
- 选型考量:
- 如果只是要预测结构,ColabFold(见 118《ColabFold》)或 Boltz(见 020《Boltz 教程》)通常更成熟、社区更大;
- HelixFold 的价值在于国内可访问性与 PaddlePaddle 生态的整合;
- 许可条款使用前应确认。
使用
# 安装(需要先装 PaddlePaddle)
pip install paddlepaddle-gpu # 或 paddlepaddle(CPU)
pip install pahelix
# 分子性质预测的典型流程
import paddle
from pahelix.model_zoo.gem_model import GeoGNNModel
from pahelix.utils.compound_tools import mol_to_geognn_graph_data_MMFF3d
from rdkit import Chem
# 1) 分子转几何图
mol = Chem.MolFromSmiles("CC(=O)Nc1ccc(O)cc1")
data = mol_to_geognn_graph_data_MMFF3d(mol)
# 【注意】:这一步会生成三维构象(MMFF 优化)
# → 有随机性,应固定种子
# 2) 加载预训练模型
# model = GeoGNNModel(model_config)
# model.set_state_dict(paddle.load("pretrained.pdparams"))
# 3) 微调做下游任务
# ...
# 【实践提醒】:
# PaddlePaddle 与 PyTorch 的 API 差异较大
# → 如果团队已有 PyTorch 技术栈,
# 引入 Paddle 会增加维护成本
# → 【技术栈的统一性是实际的选型因素】
选型的实际考量
| 因素 | 说明 |
|---|---|
| 技术栈匹配 | 已有 PyTorch 栈时,引入 Paddle 增加维护成本 |
| 国内可访问性 | 模型下载与文档访问更快 |
| 中文文档 | 降低团队上手门槛 |
| 社区规模 | 相对 PyTorch 生态较小 |
| 方法更新速度 | 需要评估项目的活跃度 |
| 硬件适配 | 与国产 AI 芯片的适配可能更好 |
| 许可 | 使用前确认当前条款 |
务实的评估方法
# 【不要只看论文报告的数字】
#
# 正确的评估流程:
#
# 1) 【在自己的数据上比较】
# 同样的数据、同样的划分方式、同样的调优预算
# 对比:
# - PaddleHelix 的 GEM
# - Uni-Mol(见 142)
# - Chemprop(见 131)
# - 【ECFP + LightGBM 基线】
#
# 2) 【多个随机种子】
# 报告均值 ± 标准差
# → 提升必须超过 2 倍标准差
#
# 3) 【计入工程成本】
# - 环境搭建的难度
# - 与现有流程的集成成本
# - 团队的学习成本
# - 长期维护的风险
#
# 4) 【检查活跃度】
# - GitHub 最近更新时间
# - issue 的响应情况
# - 是否有人报告复现问题
#
# 【结论的常见形式】:
# 在多数常规任务上,各框架的差异
# 小于「数据质量」与「评测设计」带来的差异
# → 【优先投入到数据与评测上】
国产开源生态的意义
- 降低了国内团队的入门门槛:中文文档、本地化的模型下载;
- 提供了技术栈的备选:在供应链考量下有实际价值;
- 推动了社区建设:与 Uni-Mol(见 142《Uni-Mol 论文精读》)等一起构成了国内 AI 制药开源生态;
- 但要客观评估:方法本身的先进性应该用同样的标准衡量——在自己的数据上比较,而非依据宣传;
- 可持续性的考量:开源项目的长期维护是实际风险,选型时应看项目的活跃度与背后的投入。
关键要点
- GEM 显式加入键长、键角、二面角作为几何特征,是它较有特色的工作;
- 技术栈的统一性是实际的选型因素——已有 PyTorch 栈时引入 Paddle 增加维护成本;
- 必须在自己的数据上与 Uni-Mol、Chemprop、ECFP 基线同条件比较;
- 多数常规任务上,框架差异小于数据质量与评测设计带来的差异。
延伸资源
- PaddleHelix 工具:189《PaddleHelix》;Uni-Mol 教程:022《Uni-Mol 教程》;
- Chemprop:131《Chemprop / D-MPNN 论文精读》;GNN:159《图神经网络 GNN》;ESMFold:116《ESMFold 论文精读》。