AIFBDataset

class dgl.data.AIFBDataset(print_every=10000, insert_reverse=True, raw_dir=None, force_reload=False, verbose=True, transform=None)[source]

基类:RDFGraphDataset

用于节点分类任务的 AIFB 数据集

AIFB 数据集是一个语义网 (RDF) 数据集,在数据挖掘中用作基准。它记录了卡尔斯鲁厄大学 AIFB 的组织结构。

AIFB 数据集统计信息

  • 节点数:7262

  • 边数:48810 (包括反向边)

  • 目标类别:Personen

  • 类别数:4

  • 标签划分

    • 训练集:140

    • 测试集:36

参数:
  • print_every (int) – 每处理 X 个元组打印一次预处理日志。默认值:10000。

  • insert_reverse (bool) – 如果为 True,则向最终图添加反向边和反向关系。默认值:True。

  • raw_dir (str) – 用于下载/包含输入数据目录的原始文件目录。默认值:~/.dgl/

  • force_reload (bool) – 是否重新加载数据集。默认值:False

  • verbose (bool) – 是否打印进度信息。默认值:True。

  • transform (callable, optional) – 一个转换函数,它接收一个 DGLGraph 对象并返回转换后的版本。每次访问 DGLGraph 对象之前都会对其进行转换。

num_classes

待预测的类别数

类型:

int

predict_category

带有用于预测标签的实体类别 (节点类型)

类型:

str

示例

>>> dataset = dgl.data.rdf.AIFBDataset()
>>> graph = dataset[0]
>>> category = dataset.predict_category
>>> num_classes = dataset.num_classes
>>>
>>> train_mask = g.nodes[category].data['train_mask']
>>> test_mask = g.nodes[category].data['test_mask']
>>> label = g.nodes[category].data['label']
__getitem__(idx)[source]

获取图对象

参数:

idx (int) – 项目索引,AIFBDataset 只有一个图对象

返回:

图包含

  • ndata['train_mask']: 用于训练节点集的掩码

  • ndata['test_mask']: 用于测试节点集的掩码

  • ndata['label']: 节点标签

返回类型:

dgl.DGLGraph

__len__()[source]

数据集中图的数量。

返回类型:

int