pyg-team/pytorch_geometric
Graph Neural Network Library for PyTorch
PyTorch Geometric (PyG)
是什么 – 一个基于 PyTorch 构建的 Python 库,可轻松开发和训练 图神经网络(GNN)。它提供了数十种预实现的 GNN 层、用于加载和批处理图数据的工具,以及对大规模、异构或动态图的支持。
为何重要 – 图结构数据广泛存在于多个领域(社交网络、引用网络、分子、3D 网格、推荐系统等)。PyG 仅需几行代码即可让研究人员和工程师应用最先进的 GNN 模型解决这些问题,同时仍保留完全的灵活性以创建自定义层。
主要特性(README 中所述)
- 统一且类 PyTorch 的 API – 与您已熟悉的 PyTorch 的张量中心工作流一致;一个最小示例仅需约 20 行代码。
- 丰富的模型库 – 已实现超过 40 种已发表的 GNN 层(GCN、GAT、GraphSAGE、GIN、RGCN 等)以及更高层级的模型。
- 可扩展的数据处理 – 支持迷你批次加载器、采样策略和多 GPU 支持,适用于包含数百万个节点的图。
- 可扩展性 – 通过继承
MessagePassing基类可构建自定义层;README 中展示了完整的EdgeConv示例。 - 与现代 PyTorch 的集成 – 支持
torch.compile、TorchScript 以及pyg-libCUDA 内核,实现快速稀疏运算。 - 丰富的生态系统 – 包含基准数据集、网格/点云转换工具,以及教程、Colab 笔记本和外部资源链接。
典型工作流程(快速导览摘录)
- 加载数据集,例如通过
Planetoid加载 Cora 引用图。 - 通过堆叠提供的层(如
GCNConv)定义模型。 - 使用标准 PyTorch 优化器循环进行训练。
- 在节点分类或其他图任务上进行评估。
谁应该使用它 – 正在实验新 GNN 思路的机器学习研究人员、需要生产级 GNN 工具箱的数据科学家,以及已经使用 PyTorch 并希望添加图功能的任何人。
README 中的链接
- 文档:https://pytorch-geometric.readthedocs.io
- 论文:PyG 1.0 (arXiv:1903.02428) 和 PyG 2.0 (arXiv:2507.16991)
- Colab 笔记本、Slack 社区、基准示例(OGB 等)
以上所有信息均直接取自仓库的 README;未推断任何额外功能。
相关
- 项目
- 项目
- 项目
- 项目
- Dispatch