小分子 HOMO-LUMO Gap 预测
1. 背景与目标
PCQM4Mv2 是一个基于图神经网络(GNN)的分子属性预测项目,旨在解决量子化学分子特性预测的挑战。该项目使用了 Open Graph Benchmark (OGB) 中的 PCQM4Mv2 数据集,这是一个大规模的量子化学分子数据集,包含约 400 万个分子的量子力学性质预测任务。
项目目标 :
- 提供完整的工具链,从数据下载、预处理到模型训练和评估
- 实现基于 PyTorch Geometric (PyG) 和 Deep Graph Library (DGL) 的基线模型
- 为研究人员和开发者提供一个标准化的框架,用于开发和测试分子图神经网络模型
- 支持用户生成符合 OGB 竞赛要求的提交结果
2. 功能模块介绍
2.1 数据处理模块
- 数据下载 :从 OGB 官方服务器下载 PCQM4Mv2 数据集的 SDF 文件
- 数据验证 :使用 MD5 校验确保下载的数据完整性
- 数据提取 :解压缩 SDF 文件
- 图构建 :使用 RDKit 将分子的 SMILES 表示转换为图结构,包括原子特征和键特征
2.2 模型训练模块
- PyG 基线 :基于 PyTorch Geometric 实现的图神经网络模型
- DGL 基线 :基于 Deep Graph Library 实现的图神经网络模型(可选)
- 训练配置 :支持自定义设备、批量大小、训练轮数等参数
- 模型保存 :自动保存最佳模型检查点
2.3 评估与提交模块
- 性能评估 :计算预测结果的平均绝对误差 (MAE)
- 提交生成 :生成符合 OGB 竞赛要求的测试提交文件
- 结果可视化 :使用 TensorBoard 记录训练过程和性能指标
3. 功能路径描述
3.1 环境搭建与数据准备
1. 环境配置 :
- 创建并激活 conda 环境
- 执行 install_rdkit.sh 安装 RDKit(分子处理库)
- 执行 pip install -r requirements.txt 安装 Python 依赖
2. 数据下载与预处理 :
- 下载 SDF 文件: python download_and_preprocess.py --root dataset/ --download-sdf --extract
- 构建 OGB 数据集(图结构): python download_and_preprocess.py --root dataset/ --build (可能需要数小时)
3.2 数据集使用
- SMILES 操作演示 : python dataset_demo.py (仅使用 SMILES 表示的操作,快速运行)
- 评估器演示 : pyth
医疗健康