AsLinkPredDataset
- class dgl.data.AsLinkPredDataset(dataset, split_ratio=None, neg_ratio=3, **kwargs)[source]
基类:
DGLDataset
将数据集重新用于链接预测任务。
创建的数据集将包含链接预测所需的数据。目前,它只支持同构图。它将只保留提供的数据集中的第一个图,并根据给定的分割比例生成训练/验证/测试边,并根据 neg_ratio 生成相应的负样本边。生成的边将缓存到磁盘以加快重新加载速度。如果提供的分割比例与缓存的不同,它将重新正确处理数据集。
- 参数:
dataset (DGLDataset) – 要转换的数据集。
split_ratio ((float, float, float), 可选) – 训练集、验证集和测试集的分割比例。总和必须为一。
neg_ratio (int, 可选) – 指示要采样的负样本数量。负样本的数量将等于或小于 neg_ratio * 正样本边数。
- val_edges
验证集边,编码格式为 ((positive_edge_src, positive_edge_dst), (negative_edge_src, negative_edge_dst))
- 类型:
Tuple[Tuple[Tensor, Tensor], Tuple[Tensor, Tensor]]
- test_edges
测试集边,编码格式为 ((positive_edge_src, positive_edge_dst), (negative_edge_src, negative_edge_dst))
- 类型:
Tuple[Tuple[Tensor, Tensor], Tuple[Tensor, Tensor]]
示例
>>> ds = dgl.data.CoraGraphDataset() >>> print(ds) Dataset("cora_v2", num_graphs=1, save_path=...) >>> new_ds = dgl.data.AsLinkPredDataset(ds, [0.8, 0.1, 0.1]) >>> print(new_ds) Dataset("cora_v2-as-linkpred", num_graphs=1, save_path=/home/ubuntu/.dgl/cora_v2-as-linkpred) >>> print(hasattr(new_ds, "test_edges")) True