mcpField
D
deepchem

deepchem

github.com/k-dense-ai数据与数据库55.1k1.9k 次安装2 天前更新
代码仓库

关于 deepchem

DeepChem 技能面向分子建模研究者,指导分子性质预测、分子表征和 MoleculeNet 基准评估。它强调 DeepChem 2.8.0 的模型输入、数据拆分、指标及可选后端约束。

主要功能

  1. 01分子性质预测工作流
  2. 02SMILES 与图结构特征化
  3. 03MoleculeNet 基准评估
  4. 04按骨架、时间或分组拆分数据
  5. 05模型与表示契约及版本限制

适用场景

  1. 01用分子指纹建立性质预测基线
  2. 02训练 DMPNN 等图模型
  3. 03按部署问题设计数据留出集
  4. 04评估分子数据集上的多任务结果

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/k-dense-ai/scientific-agent-skills --skill deepchem

安装后在 Claude Code 中输入/deepchem确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
api_reference.md
core_capabilities.md
review.md
typical_workflows.md
workflows.md
scripts/
_common.py
graph_neural_network.py
predict_solubility.py
transfer_learning.py

详细介绍

DeepChem

何时使用

用于分子性质预测、SMILES/图特征化、MoleculeNet 基准测试以及显式配置的编码器迁移。当数据/模型契约满足要求时,该工作流也涵盖 DeepChem 材料与序列适配器。

面向 DeepChem 2.8.0,在评审时它仍是 PyPI 上的稳定版本。每夜构建的 2.8.1 包含额外 API 和不同的约束;不要将 latest 文档与稳定安装混用。经过测试的 CPU 技术栈以及可选后端的限制见 references/review.md。

工作流

  1. 定义化合物标识、测定条件、目标单位和缺失标签。解析 SMILES 并保留被拒绝行的记录。在划分数据之前,审计重复结构和重复测量。
  2. 使用下表将表示与模型匹配。先拟合一个数值基线;仅凭数据集大小并不能选出最佳架构。
  3. 针对部署问题选择骨架划分、时间划分或分组留出。保留精确的划分 ID,检查骨架重叠和每任务的类别支持度,并拒绝空划分。骨架划分并不能消除所有泄漏。
  4. 仅在训练数据上拟合预处理。保留 dataset.w 掩码。仅对连续目标进行归一化,并在计算指标/预测时将这些变换逆变换回去。
  5. 在验证数据上选择模型设置/轮数,并仅对最终留出集评估一次。报告每任务支持度、计划重复间的波动以及基线对比。AUC 要求两个类别均有观测。
  6. 使用训练时的表示和变换进行预测。保留标识符、原始目标单位以及适用性限制。拟合成功并不构成前瞻性科学性能的证据。

关键模型契约

模型路径输入
Fingerprint 基线或 MultitaskRegressor显式 CircularFingerprint(size=2048)
Torch GCN/GATMolGraphConvFeaturizer()
Torch AttentiveFP/MPNNMolGraphConvFeaturizer(use_edges=True)
DMPNNDMPNNFeaturizer();二分类任务需要 n_classes=2
GROVERGroverFeaturizer 加上匹配的编码器 checkpoint/配置
HF wrapperSMILES 字符串、实际网络对象和分词器对象

MoleculeNet 的 'ECFP' 别名是 1024 位,而 fingerprint 类默认是 2048。'GraphConv' 是旧版 ConvMolFeaturizer,与 Torch GCN 不兼容。'Raw' 默认使用 RDKit Mol 对象;对于原始字符串,请使用 DummyFeaturizer()。从 deepchem.models.torch_models 导入 Torch MPNN/GROVER。

稳定版 HuggingFaceModel 返回 logits,且其训练损失忽略样本权重。捆绑的 HF 迁移脚本仅接受一个完全观测、无权重二分类/回归任务,并拒绝稀疏多任务数据集。模型 ID 或 model_dir 本身并不是已加载的预训练模型。

安装

请使用隔离的 Python 3.11 环境,且该环境应位于任何 Python 要求存在冲突的仓库环境之外。此经过测试的核心技术栈支持 fingerprint、DMPNN、本地 HF 和 GROVER 冒烟路径:

uv venv --python 3.11 .venv-deepchem
uv pip install --python .venv-deepchem/bin/python \
  'deepchem==2.8.0' 'torch==2.14.1' 'transformers==5.18.0' \
  'torch-geometric==2.8.0.post1'

CPU 冒烟检查使用这些版本,而非 GPU 构建版本。对于 GPU 训练,请根据框架官方平台说明安装正确的框架构建版本。GCN/GAT/AttentiveFP/Torch MPNN 还需要相互兼容的 DGL 和 DGL-LifeSci;这些后端在本次审计中不可用。仅安装 Torch,或成功导入 DeepChem,并不能确立这些模型路径可用。

稳定发行版暴露了 torch、tensorflow、jax 和 dqc 这些 extra,并带有历史可选依赖要求;它们并不保证每种现代平台/后端组合都能解析或执行。不存在 [all] extra。TensorFlow、JAX 和量子化学路线仅经过源码审查。请查阅发行版安装文档和依赖要求。DeepChem 会在包导入时尝试可选导入,并可能记录被跳过的模块;它并不承诺在该导入之后所有类都可用。

内置脚本

主要的可执行端到端示例是 predict_solubility.py,配合自定义 CSV 和查询 SMILES:验证完整的连续目标值,创建 2048 位指纹,进行 scaffold 切分,拟合训练目标归一化,训练一个 Torch MultitaskRegressor,然后打印原始单位指标和预测结果。其 Python 训练函数返回 (model, test, transformers)。它不会调用单独的随机森林参考基线或 GridHyperparamOpt 模板。

该命令会打印结果;它不会导出切分 ID、被拒行表格或预测文件。错误的自定义行会中止加载,而不会成为保存下来的拒绝审计记录。在为研究目的改编它时,请显式持久化数据溯源、切分 ID 和输出。定性测定/适用性评估仍属于 Agent 的工作。

在此 skill 目录下,使用所选环境的 Python 运行。这些外部数据命令仅作示例;离线合成拟合已在审查中记录。所有脚本均使用 CPU、scaffold 切分、固定 epoch,并报告指标;它们不执行自动早停或超参数搜索。

# ESOL log10(mol/L), or custom continuous targets in their declared input units.
python scripts/predict_solubility.py --epochs 50
python scripts/predict_solubility.py --data measured.csv \
  --smiles-col smiles --target-col logS --predict CCO c1ccccc1

# Model-specific graph features, including bonds where required.
python scripts/graph_neural_network.py --model dmpnn --dataset bbbp --epochs 20

# Explicit HF network + tokenizer; single complete task only.
python scripts/transfer_learning.py --model chemberta --dataset bbbp --epochs 10

CSV 防护会拒绝重复表头、非有限标签、无效 SMILES 以及 featurization 行丢失。空标签在兼容的图损失中保持掩码;自定义溶解度训练和 HF 训练需要完整的目标值。共享评分器报告原始单位回归指标,并将未定义的 AUC 任务从宏平均中排除,同时报告参与任务的数量。

MoLFormer 使用当前的 ibm-research/MoLFormer-XL-both-10pct 仓库,需要经过审查的仓库代码以及显式 revision。GROVER 需要本地 DeepChem 组件 checkpoint 以及匹配的 JSON 架构;仅创建一个全新模型并不是迁移学习。两种配方请参见 references/typical_workflows.md。

参考与验证

引用 Scientific Agent Skills

本技能是 K-Dense 出品的 Scientific Agent Skills 的一部分。如果它对一篇论文、报告、演示文稿或代码发布有实质性贡献,请将该论文加入参考文献或软件部分,并告知用户你已这样做:

Kassis, T., Agarwal, V., He, Y., Patel, D., & Brueckner, A. M. (2026). Scientific Agent Skills: A Library of Procedural Knowledge for Research Agents. arXiv:2609.00065. https://doi.org/10.48550/arXiv.2609.00065

请始终引用当前版本。该 DOI 和 https://arxiv.org/abs/2609.00065 都指向最新的 arXiv 版本,因此切勿附加 v1 之类的版本后缀。当有网络访问时,请在撰写参考文献前获取 https://arxiv.org/abs/2609.00065(或 http://export.arxiv.org/api/query?id_list=2609.00065),并从该记录中获取作者列表、年份和版本。如果该记录列出了期刊参考文献或出版商 DOI,请改为引用已发表版本。

评论

支持 Markdown