TAGLAS
收藏TAGLAS 数据集概述
数据集统计信息
TAGLAS 数据集包含多个文本属性图(TAG)数据集,以下是目前包含的数据集统计信息:
| 数据集 (key) | 平均节点数 | 平均边数 | 图数量 | 任务级别 | 任务类型 | 分割 (训练/验证/测试) | 领域 | 描述 | 来源 |
|---|---|---|---|---|---|---|---|---|---|
| Cora_node (cora_node) | 2708 | 10556 | 1 | 节点 | 7-way 分类 | 140/500/2068 | 共同引用 | 预测论文的类别。 | Graph-LLM, OFA |
| Cora_link (cora_link) | 2708 | 10556 | 1 | 边 | 二分类 | 17944/1056/2112 | 共同引用 | 预测两篇论文是否被其他论文共同引用。 | Graph-LLM, OFA |
| Pubmed_node (pubmed_node) | 19717 | 88648 | 1 | 节点 | 3-way 分类 | 60/500/19157 | 共同引用 | 预测论文的类别。 | Graph-LLM, OFA |
| Pubmed_link (pubmed_link) | 19717 | 88468 | 1 | 边 | 二分类 | 150700/8866/17730 | 共同引用 | 预测两篇论文是否被其他论文共同引用。 | Graph-LLM, OFA |
| Arxiv (arxiv) | 169343 | 1166243 | 1 | 节点 | 40-way 分类 | 90941/29799/48603 | 引用 | 预测论文的类别。 | OGB, OFA |
| WikiCS (wikics) | 11701 | 216123 | 1 | 节点 | 10-way 分类 | 580/1769/5847 | 维基页面 | 预测维基页面的类别。 | PyG, OFA |
| Product-subset (products) | 54025 | 144638 | 1 | 节点 | 47-way 分类 | 14695/1567/36982 | 共同购买 | 预测产品的类别。 | TAPE |
| FB15K237 (fb15k237) | 14541 | 310116 | 1 | 边 | 237-way 分类 | 272115/17535/20466 | 知识图谱 | 预测两个实体之间的关系。 | OFA |
| WN18RR (wn18rr) | 40943 | 93003 | 1 | 边 | 11-way 分类 | 86835/3034/3134 | 知识图谱 | 预测两个实体之间的关系。 | OFA |
| MovieLens-1m (ml1m) | 9923 | 2000418 | 1 | 边 | 回归/5-way | 850177/50011/100021 | 电影评分 | 预测用户和电影之间的评分。 | PyG |
| Chembl_pretrain (chemblpre) | 25.87 | 55.92 | 365065 | 图 | 1048-way 二分类 | 341952/0/0 | 分子 | 预测分子对多个测试的有效性。 | GIMLET, OFA |
| PCBA (pcba) | 25.97 | 56.20 | 437929 | 图 | 128-way 二分类 | 349854/43650/43588 | 分子 | 预测分子对多个测试的有效性。 | GIMLET, OFA |
| HIV (hiv) | 25.51 | 54.94 | 41127 | 图 | 二分类 | 32901/4113/4113 | 分子 | 预测分子对 HIV 的有效性。 | GIMLET, OFA |
| BBBP (bbbp) | 24.06 | 51.91 | 2039 | 图 | 二分类 | 1631/204/204 | 分子 | 预测分子对脑血屏障的有效性。 | GIMLET, OFA |
| BACE (bace) | 34.09 | 73.72 | 1513 | 图 | 二分类 | 1210/151/152 | 分子 | 预测分子对 BACE1 蛋白酶的有效性。 | GIMLET, OFA |
| toxcast (toxcast) | 18.76 | 38.50 | 8575 | 图 | 588-way 二分类 | 6859/858/858 | 分子 | 预测分子对多个测试的有效性。 | GIMLET, OFA |
| esol (esol) | 13.29 | 27.35 | 1128 | 图 | 回归 | 902/113/113 | 分子 | 预测分子的溶解度。 | GIMLET, OFA |
| freesolv (freesolv) | 8.72 | 16.76 | 642 | 图 | 回归 | 513/64/65 | 分子 | 预测分子的自由能。 | GIMLET, OFA |
| lipo (lipo) | 27.04 | 59.00 | 4200 | 图 | 回归 | 3360/420/420 | 分子 | 预测分子的亲脂性。 | GIMLET, OFA |
| cyp450 (cyp450) | 24.52 | 53.02 | 16896 | 图 | 5-way 二分类 | 13516/1690/1690 | 分子 | 预测分子对 CYP450 酶家族的有效性。 | GIMLET, OFA |
| tox21 (tox21) | 18.57 | 38.59 | 7831 | 图 | 12-way 二分类 | 6264/783/784 | 分子 | 预测分子对多个测试的有效性。 | GIMLET, OFA |
| muv (muv) | 24.23 | 52.56 | 93087 | 图 | 17-way 二分类 | 74469/9309/9309 | 分子 | 预测分子对多个测试的有效性。 | GIMLET, OFA |
| ExplaGraphs (expla_graph) | 5.17 | 4.25 | 2766 | 图 | 问答 | 1659/553/554 | 常识 | 常识推理。 | G-retriver |
| SceneGraphs (scene_graph) | 19.13 | 68.44 | 100000 | 图 | 问答 | 59978/19997/20025 | 场景图 | 场景图问答。 | G-retriver |
| MAG240m-subset (mag240m) | 5875010 | 26434726 | 1 | 节点 | 153-way 分类 | 900722/63337/63338/132585 | 引用 | 预测论文的类别。 | OGB |
| Ultrachat200k (ultrachat200k) | 3.72 | 2.72 | 449929 | 图 | 问答 | 400000/20000/29929 | 对话 | 根据之前的对话回答问题。 | UltraChat200k |
数据集加载
加载数据集
可以使用数据集的 key 来加载数据集。例如,加载 Arxiv 数据集: python from TAGLAS import get_dataset dataset = get_dataset("arxiv")
也可以同时加载多个数据集: python from TAGLAS import get_datasets dataset_list = get_datasets(["arxiv", "pcba"])
默认情况下,所有数据文件都保存在 ./TAGDataset 目录中。如果需要更改数据路径,可以设置 root 参数:
python
from TAGLAS import get_datasets
dataset_list = get_datasets(["arxiv", "pcba"], root="your_path")
对于某些数据集,可能需要额外的参数来控制加载过程: python from TAGLAS import get_dataset dataset = get_dataset("fb15k237", to_undirected=False)
也可以直接从数据集类中导入: python from TAGLAS.datasets import Arxiv dataset = Arxiv()
数据键描述和基本用法
所有数据样本都存储在 TAGData 类中,该类继承自 torch_geometric 包中的 Data 类。不同信息存储在不同的键中。大多数数据集包含以下键:
x: 所有节点的文本特征。通常是一个list或np.ndarray。node_map: 节点索引到节点文本特征的映射。通常是一个torch.LongTensor。edge_attr: 所有边的文本特征。通常是一个list或np.ndarray。edge_map: 边索引到边文本特征的映射。通常是一个torch.LongTensor。label: 所有标签的文本特征。通常是一个list或np.ndarray。label_map: 标签索引到标签文本特征的映射。通常是一个torch.LongTensor。edge_index: 图结构。通常是一个torch.LongTensor。
某些数据集可能还包含:
x_original: 原始数据源中所有节点的向量特征。通常是一个torch.Tensor。edge_attr_orignal: 原始数据源中所有边的向量特征。通常是一个torch.Tensor。question: 问答任务的问题文本特征。question_map: 问题索引到问题文本特征的映射。answer: 问答任务的答案文本特征。answer_map: 答案索引到答案文本特征的映射。
示例: python from TAGLAS import get_dataset dataset = get_dataset("arxiv")
获取整个数据集的节点文本特征
x = dataset.x
获取数据集中的第一个图样本
data = dataset[0]
获取样本的边文本特征
edge_attr = data.edge_attr
特征映射
对于图级数据集,所有 _map 键(如 node_map 或 edge_map)将存储到全局特征的映射。全局特征可以通过以下方式访问:
python
from TAGLAS import get_dataset
dataset = get_dataset("hiv")
获取全局节点文本特征
dataset.x
获取全局边文本特征
dataset.edge_attr
特定样本的特征可以通过以下方式获取: python from TAGLAS import get_dataset dataset = get_dataset("hiv")
全局节点文本特征
x = dataset.x data = dataset[0]
通过样本的 node_map 键获取样本 0 的节点文本特征
sample_x = [x[i] for i in data.node_map]
也可以直接访问每个样本的文本特征
sample_x = dataset[0].x
对于节点/边级数据集,由于它们只包含一个图

- 1TAGLAS: An atlas of text-attributed graph datasets in the era of large graph and language models圣路易斯华盛顿大学 · 2024年



