Agent Skills
返回列表
📊

DeepChem 化学与材料机器学习

数据分析 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/cn-deepchem。

技能介绍

要解决什么问题

在药物发现、材料筛选或生物分子分析里,你往往要从 SMILES、晶体结构或蛋白质序列出发,预测溶解度、毒性、结合能等属性。通用 scikit-learn 流程缺少分子表示与切分约定,随机 train/test 切分还会让结构相似的分子同时出现在两侧,基准结果也难以复现。

技能如何组织工作流

本技能围绕 DeepChem 2.8.0(Python 3.7–3.11)梳理端到端用法,而不是替代官方文档:

  • 特征化:从经典 ECFP、RDKit 描述符到图特征化器(MolGraphConvFeaturizer、DMPNNFeaturizer),以及预训练路线上的 GroverFeaturizer。
  • 数据切分:药物相关任务强调用 ScaffoldSplitter 按分子骨架切分,避免结构泄漏;另有 ButinaSplitter、MaxMinSplitter 等可选策略。
  • 模型选择:小数据或指纹基线可走 Random Forest / XGBoost;样本量上来再试 GCN、AttentiveFP、DMPNN;小样本迁移可用 ChemBERTa、GROVER、MolFormer;材料侧常见 CGCNN、MEGNet,序列侧可用 ProtBERT。
  • MoleculeNet:通过 load_tox21()、load_delaney()、load_qm9() 等加载器快速接入 30+ 标准化基准及固定切分。

技能内 references/api_reference.md 覆盖加载器、特征化器与 50+ 模型目录;references/workflows.md 给出从 SMILES 预测、基准复现、超参搜索、迁移学习到材料/蛋白等八条完整工作流模板。

适用边界与常见坑

  • 后端依赖:DeepChem 对 PyTorch / TensorFlow 等是惰性加载;用 GNN 或预训练模型前需安装匹配 extra(GPU 环境应先装对应 CUDA 版 PyTorch/TensorFlow)。
  • GNN 不如指纹:常见于数据量不足(通常建议 >10K)、训练轮数过少或架构不合适;可加长训练、换 AttentiveFP/DMPNN,或改用 GROVER 等预训练特征。
  • 小数据集:优先更强正则、更简单模型或迁移学习,而不是堆大网络。
  • Conda + PyTorch:若出现 undefined symbol: iJIT_NotifyEvent,可能与 MKL 2025 不兼容,需按文档固定 mkl<2025。

使用场景

  • 用 `ScaffoldSplitter` 切分自研化合物库,训练溶解度或毒性回归模型,避免相似骨架同时进入训练集与测试集
  • 在 MoleculeNet 上复现 BBBP、Tox21 等分类基准,对比 ECFP+Random Forest 与 AttentiveFP/DMPNN 图模型表现
  • 自有活性数据仅数千条时,用 ChemBERTa 或 GROVER 预训练特征做迁移学习,替代从零训练大 GNN
  • 针对 perovskite 或 bandgap 等材料任务,用 CGCNN/MEGNet 从晶体结构预测形成能或带隙等属性

适合人员

  • 药物发现项目里负责 ADMET/活性建模的计算化学或 ML 工程师,需要可复现切分与公开基准对照
  • 材料或催化方向的研究员,要把 DFT/实验性质数据接到 DeepChem 的结构模型工作流里
  • 研究生或青年研究员撰写 MoleculeNet 相关论文,需要按文档跑通特征化、切分与指标评估全流程
  • 平台团队维护化合物/材料预测服务,要在小数据与 GNN、迁移学习方案之间做模型选型