Cora,CiteSeer,PubMed应该是GNN学习过程中没有人能逃得过的三大关口,在数据集上的意义可能相当于GCN,GraphSAGE,GAT之于空域GNN的意义。
本文旨在介绍御三家数据集,包括其基本信息和使用方式。
您可以根据您所需数据使用情况来观看本文。譬如若您只想在PyG建模时调用该数据集,可以仅观看第一节;如果您想了解如何将原始数据处理成类似御三家数据集的格式,可以仅观看第三节。
Enjoy!
本文将首先介绍数据集的基本情况,接下来以集成度从高到底的顺序进行撰写数据集的调取和使用方式:
第2节,从PyG的数据集调用接口开始介绍数据集的使用方式,并在这一节介绍三个数据集的基本信息(毕竟集成度高,数据很好用)。
第3节,介绍Planetoid数据(PyG数据来源)的使用和处理方式。
第4节,介绍从原始数据来源下载并处理数据的方式,包括如何将这种类似的原始数据处理成类Planetoid数据的方式。
第5节,最后介绍另一个集成度较高、但是流行度较低的CogDL中的数据集接口及使用方式。
1. 数据集基本情况介绍
Cora,CiteSeer,PubMed是三个文献引用网络数据集。
都是一张无向图,节点代表文件(论文文献),边代表引用关系。
标签在节点上,多分类任务。
节点特征是word vector,每一元素都是0-1二元变量,描述每个单词在paper中是否存在。统计时经过了stemming1和去除停用词,并去掉了小于10篇文档中出现过的单词。
1.1 Cora数据集
2708个节点,5429条边。标签共7个类别。数据集的特征维度是1433维。
Cora数据集的节点是机器学习论文,论文主题(标签)分为以下七类之一:
Case_Based基于案例
Genetic_Algorithms遗传算法
Neural_Networks神经网络
Probabilistic_Methods概率方法
Reinforcement_Learning强化学习
Rule_Learning规则学习
Theory理论
论文的选择方式是,在最终语料库中,每篇论文引用或被至少一篇其他论文引用(即没有孤立点存在)。
1.2 SiteSeer数据集
3312个节点,4723条边。标签共7个类别。数据集的特征维度是3703维。
论文主题(标签)分为以下七类之一:
Agents
AI
DB
IR
ML
HCI
论文的选择方式是,在最终语料库中,每篇论文引用或被至少一篇其他论文引用(即没有孤立点存在)。
1.3 PubMed
略。
2. PyG数据集的Planetoid调用接口
torch_geometric.datasets.Planetoid官方文档
略。
PyG所使用的御三家数据来源就是这篇论文:Revisiting Semi-Supervised Learning with Graph Embeddings. Zhilin Yang, William W. Cohen, Ruslan Salakhutdinov. ICML 2016.。对此的详细介绍见本文第二节。
3. Planetoid官方数据处理方式
kimiyoung/planetoid: Semi-supervised learning with graph embeddings
略。
4. 原始数据处理介绍
数据集来源:Datasets | LINQS
Cora数据集下载地址:https://linqs-data.soe.ucsc.edu/public/lbc/cora.tgz
CiteSeer数据集下载地址:https://linqs-data.soe.ucsc.edu/public/lbc/citeseer.tgz
PubMed数据集下载地址:https://linqs-data.soe.ucsc.edu/public/Pubmed-Diabetes.tgz
Linux可以通过wget下载文件,并用tar解压。
tgz压缩包中都含有README文件,介绍数据情况。
Cora压缩包里的README文件里面说数据集来源是这个网站:www.research.whizbang.com/data,我打不开这个网站就很离谱……
略。
5. CogDL的数据集调用接口
CogDL官网(中文版):CogDL工具包
THUDM/cogdl: CogDL: An Extensive Toolkit for Deep Learning on Graphs
cogdl/gat.py at master · THUDM/cogdl
略。