🆕 dgl.graphbolt

dgl.graphbolt 是一个用于 GNN 的数据加载框架,为数据 pipeline 的每个阶段提供清晰定义的 API 和多种标准实现。

数据集

数据集是图结构数据、特征数据和任务的集合。

数据集

一个抽象数据集,为访问训练所需的数据提供抽象。

OnDiskDataset

一个磁盘数据集,从磁盘读取图拓扑、特征数据以及训练/验证/测试集。

BuiltinDataset

一个实用类,用于从 AWS S3 下载内置数据集并将其加载为 OnDiskDataset

LegacyDataset

一个 Graphbolt 数据集,用于兼容旧版 DGLDataset。

任务

一个抽象任务,包含元信息和训练/验证/测试集。

图是节点和边的集合。它可以是同构图或异构图。

SamplingGraph

用于图采样的类。

FusedCSCSamplingGraph

CSC 格式的采样图。

特征和特征存储

特征是数据(张量、数组)的集合。特征存储是特征的集合。

特征

用于访问特征数据的封装器。

特征存储

一个用于管理多个特征以便访问的存储。

BasicFeatureStore

一个基本的特征存储,用于管理多个特征以便访问。

TorchBasedFeature

基于 PyTorch 特征的封装器。

TorchBasedFeatureStore

一个用于管理多个基于 PyTorch 特征以便访问的存储。

DiskBasedFeature

基于磁盘特征的封装器。

CPUCachedFeature

CPU 缓存特征,封装一个备用特征。

GPUCachedFeature

GPU 缓存特征,封装一个备用特征。

DataLoader

DataLoader 用于迭代数据集并生成 mini-batch。

DataLoader

多进程 DataLoader。

项目集

项目集是项目的可迭代集合。

项目集

张量或张量元组的封装器。

HeteroItemSet

项目集的集合,每个集合与一个唯一的类型相关联。

项目采样器

项目采样器用于从项目集中采样项目。

项目采样器

一个采样器,用于迭代输入项目并创建 mini-batch。

DistributedItemSampler

一个采样器,用于迭代输入项目并分布式创建子集。

MiniBatch

Mini-batch 是采样子图及其对应特征的集合。它是训练 GNN 模型的基本单位。

MiniBatch

Graphbolt 中数据结构的复合数据类。

MiniBatchTransformer

用于操作 mini-batch 的 mini-batch 转换器。

负采样器

负采样器用于从 mini-batch 中采样负样本项目。

负采样器

一个负采样器,用于生成负样本并返回正负样本的混合。

UniformNegativeSampler

基于均匀分布,为每个源节点采样负目标节点。

子图采样器

子图采样器用于从图中采样子图。

子图采样器

一个子图采样器,用于从给定的一组节点中,从更大的图中采样一个子图。

SampledSubgraph

采样子图的抽象类。

NeighborSampler

从图中采样邻居边并返回一个子图。

LayerNeighborSampler

从图中采样层邻居边并返回一个子图。

TemporalNeighborSampler

按时间从图中采样邻居边并返回采样的子图。

TemporalLayerNeighborSampler

按时间从图中采样邻居边并返回采样的子图。

SampledSubgraphImpl

CSCSamplingGraph 的采样子图。

InSubgraphSampler

采样由给定节点的入边诱导的子图。

特征获取器

特征获取器用于从特征存储中获取特征。

特征获取器

一个特征获取器,用于在 graphbolt 中获取节点/边的特征。

CopyTo

此 DataPipe 用于将数据复制到设备。

CopyTo

将上一个 DataPipe 生成的每个元素转移到给定设备上的 DataPipe。

实用工具

cpu_cached_feature

CPU 缓存特征,封装一个备用特征。

gpu_cached_feature

GPU 缓存特征,封装一个备用特征。

fused_csc_sampling_graph

从 CSC 表示创建 FusedCSCSamplingGraph 对象。

load_from_shared_memory

从共享内存加载 FusedCSCSamplingGraph 对象。

from_dglgraph

将 DGLGraph 转换为 FusedCSCSamplingGraph。

etype_str_to_tuple

将规范 etype 从字符串转换为元组。

etype_tuple_to_str

将规范 etype 从元组转换为字符串。

isin

测试 elements 中的每个元素是否都在 test_elements 中。

seed

设置 Graphbolt 的随机种子。

index_select

返回一个新的张量,该张量使用 index 中的条目沿维度 dim 对输入张量进行索引。

expand_indptr

将给定的 indptr 偏移张量转换为 COO 格式张量。

indptr_edge_ids

将给定的 indptr 偏移张量转换为边 ID 的 COO 格式张量。

add_reverse_edges

此函数查找给定 edges 的反向边并返回它们的组合。

exclude_seed_edges

从 mini-batch 中的采样子图中排除种子边(包含或不包含其反向边)。

compact_csc_format

将 csc 格式中的行(源)ID 重新标记为从 0 开始的连续范围,并按类型返回原始行节点 ID。

unique_and_compact

压缩节点张量列表。

unique_and_compact_csc_formats

压缩 csc 格式并返回唯一节点(按类型)。

numpy_save_aligned

numpy.save() 的封装器,确保数组以 4KiB 对齐方式存储。