MGSSL 项目使用教程
2024-09-13 08:11:53作者:翟江哲Frasier
1. 项目介绍
MGSSL(Motif-based Graph Self-Supervised Learning)是一个基于图神经网络(GNN)的自监督学习框架,专门用于分子属性预测。该项目在 NeurIPS'21 会议上发表,旨在通过引入一种新颖的自监督图生成框架来提升 GNN 在分子属性预测任务中的表现。MGSSL 通过提取分子图中的子图(motif)并进行自监督预训练,从而在下游任务中实现更好的性能。
2. 项目快速启动
2.1 环境准备
首先,确保你的环境中安装了以下依赖:
- PyTorch 1.8.1
- torch-geometric 1.7.0
- rdkit 2020.09.1
- tqdm 4.31.1
- tensorboardx 1.6
你可以通过以下命令安装这些依赖:
pip install torch==1.8.1 torch-geometric==1.7.0 rdkit==2020.09.1 tqdm==4.31.1 tensorboardx==1.6
2.2 克隆项目
使用以下命令克隆 MGSSL 项目到本地:
git clone https://github.com/zaixizhang/MGSSL.git
cd MGSSL
2.3 预训练模型
进入 motif_based_pretrain 目录,运行以下命令进行模型预训练:
cd motif_based_pretrain
python pretrain_motif.py
2.4 模型评估
预训练完成后,进入 finetune 目录,运行以下命令进行模型评估:
cd ../finetune
python finetune.py
3. 应用案例和最佳实践
3.1 分子属性预测
MGSSL 主要应用于分子属性预测任务。通过预训练模型,可以有效地捕捉分子图中的子图信息,从而在下游任务中实现更高的准确性。例如,在药物发现领域,MGSSL 可以用于预测分子的毒性、溶解度等属性。
3.2 最佳实践
- 数据准备:确保数据集符合项目要求,特别是分子图的格式。
- 超参数调优:根据具体任务调整预训练和微调的超参数,以获得最佳性能。
- 模型保存与加载:在训练过程中保存最佳模型,并在评估时加载该模型。
4. 典型生态项目
4.1 PyTorch Geometric
PyTorch Geometric 是一个基于 PyTorch 的几何深度学习扩展库,提供了丰富的图神经网络模型和工具。MGSSL 依赖于 PyTorch Geometric 进行图数据的处理和模型构建。
4.2 RDKit
RDKit 是一个开源的化学信息学库,用于处理化学分子数据。MGSSL 使用 RDKit 进行分子图的生成和处理。
4.3 TensorBoardX
TensorBoardX 是一个用于记录和可视化训练过程的工具,MGSSL 使用它来监控模型的训练进度和性能。
通过以上模块的介绍和实践,你可以快速上手并应用 MGSSL 项目进行分子属性预测任务。
登录后查看全文
热门项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0213
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0137
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03
热门内容推荐
最新内容推荐
项目优选
收起
deepin linux kernel
C
32
16
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
468
461
暂无描述
Dockerfile
776
5.07 K
Ascend Extension for PyTorch
Python
756
961
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
872
2.01 K
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
696
1.4 K
昇腾LLM分布式训练框架
Python
183
230
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.1 K
1.14 K
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
271
Oohos_react_native
React Native鸿蒙化仓库
C++
361
430