动手学PyG(二)PyG中包含的常用Benchmark数据集

本文介绍了PyG库中包含的多种常用图数据集,如Planetoid系列和图分类数据集,并以ENZYMES数据集为例,详细说明了如何下载和访问数据,以及如何利用列表切片进行数据划分。同时提到了Cora数据集在无监督节点分类任务中的应用及其特殊属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PyG中常用的Benchmark数据集


本文主要参考了 PyG英文文档

PyG中包含了大量常用的benchmark数据集,如所有Planetoid数据集(Cora, Citeseer, Pubmed)。来自http://graphkernels.cs.tu-dortmund.de/的所有图分类数据集,和其简洁版,QM7和QM9数据集等等。

数据集的下载和使用非常简单,下面以ENZYMES数据集(包含600个图,分为6类)为例做介绍。

from torch_geometric.datasets import TUDataset

dataset = TUDataset(root='/tmp/ENZYMES', name='ENZYMES')
>>> ENZYMES(600)

len(dataset)
>>> 600

dataset.num_classes
>>> 6

dataset.num_node_features
>>> 3
<
<think>好的,用户想下载图神经网络相关的数据集,我需要先确定他们需要什么类型的数据。图神经网络常用于社交网络、分子结构、推荐系统等,所以常见的数据集包括社交网络如Cora、Citeseer,化学的如MUTAG,推荐系统的如MovieLens。 首先,我应该列出一些常用的公开数据集,并说明它们的用途,这样用户可以根据自己的需求选择。比如Cora是论文引用网络,适合节点分类任务;OGB是一个大型图数据集合,适合各种任务。同时,要提供每个数据集的下载链接,方便用户直接访问。 接下来,用户可能需要指导如何加载这些数据集,特别是使用PyTorch Geometric或DGL这样的库。比如PyTorch Geometric内置了很多数据集,可以通过几行代码直接下载和加载,这对用户来说非常方便。 然后,考虑到用户可能对数据格式不熟悉,需要说明典型的数据结构,比如节点特征、边列表、标签等。这有助于他们理解数据集的结构,方便后续处理。 另外,用户可能还想知道如何自定义数据集,比如将自己的数据转换成图结构。这时候需要给出一些建议,比如使用NetworkX或CSV文件来构建图,并提供代码示例。 最后,相关的问题部分需要考虑用户可能遇到的后续问题,比如数据预处理方法、处理大规模数据的技巧、常用框架以及评估指标。这些能帮助用户更全面地应用图神经网络。 需要确保回答结构清晰,分点列出,并且每个部分都有具体的例子和引用。同时,检查提供的链接是否有效,代码示例是否正确,避免错误信息。</think># 图神经网络数据集下载指南 ## 一、常用公开数据集 1. **社交网络数据集** - **Cora**:包含2708篇论文的引用网络,节点特征为词向量,适用于节点分类任务 下载地址:[Planetoid (Cora/Citeseer/Pubmed)](https://github.com/kimiyoung/planetoid) - **Reddit**:包含Reddit论坛的帖子交互图,适用于大规模图表示学习 下载地址:[Stanford Large Network Dataset Collection](https://snap.stanford.edu/data/) 2. **化学分子数据集** - **MUTAG**:包含188个硝基化合物的分子图结构,适用于图分类任务 下载地址:[TUDataset](https://chrsmrrs.github.io/datasets/) - **OGB**:开放图基准数据集集合,包含分子属性、蛋白质相互作用等 下载地址:[Open Graph Benchmark](https://ogb.stanford.edu/) 3. **推荐系统数据集** - **MovieLens**:包含用户-电影评分数据,可构建用户-物品分图 下载地址:[MovieLens 25M Dataset](https://grouplens.org/datasets/movielens/) ## 、数据加载方法 ### 1. 使用PyTorch Geometric(推荐) ```python from torch_geometric.datasets import Planetoid, TUDataset # 自动下载Cora数据集 dataset = Planetoid(root='/tmp/Cora', name='Cora') # 下载分子数据集 dataset = TUDataset(root='/tmp/MUTAG', name='MUTAG') ``` ### 2. 使用DGL库 ```python import dgl.data # 加载Citeseer数据集 dataset = dgl.data.CiteseerGraphDataset() ``` ## 三、数据结构说明 典型图数据集包含以下文件: ``` dataset/ ├── edges.csv # 边列表 (源节点, 目标节点) ├── nodes.csv # 节点特征和标签 ├── graph.json # 图结构描述文件 └── README # 数据说明文档 ``` ## 四、自定义数据集构建 1. **使用NetworkX构建图** ```python import networkx as nx G = nx.karate_club_graph() # 经典空手道俱乐部社交网络 ``` 2. **CSV文件转换** ```python import pandas as pd edges_df = pd.read_csv('edges.csv') nodes_df = pd.read_csv('nodes.csv') ``` ## 五、注意事项 1. 部分学术数据集需要邮件申请授权(如某些生物医药数据集) 2. 大规模数据集下载建议使用学术加速通道 3. 推荐优先使用OGB、PyG等标准库中的数据集[^2][^4]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值