FraudYelpDataset
- class dgl.data.FraudYelpDataset(raw_dir=None, random_seed=717, train_size=0.7, val_size=0.1, force_reload=False, verbose=True, transform=None)[source]
基类:
FraudDataset
Fraud Yelp 数据集
Yelp 数据集包括 Yelp 过滤(垃圾评论)和推荐(正常评论)的酒店和餐厅评论。可以进行垃圾评论检测任务,这是一个二分类任务。从 http://dx.doi.org/10.1145/2783258.2783370 中提取了 32 个手工特征作为原始节点特征。评论是图中的节点,存在三种关系:
R-U-R: 连接由同一用户发布的评论
R-S-R: 连接同一产品下具有相同星级(1-5 星)的评论
R-T-R: 连接同一产品下同一月份发布的两个评论。
统计信息
节点数: 45,954
边数
R-U-R: 98,630
R-T-R: 1,147,232
R-S-R: 6,805,486
类别
正例 (垃圾评论): 6,677
负例 (正常评论): 39,277
正负例比例: 1 : 5.9
节点特征维度: 32
- 参数:
raw_dir (str) – 指定存储下载数据或已有的输入数据的目录。默认为: ~/.dgl/
random_seed (int) – 指定分割数据集时使用的随机种子。默认为: 717
train_size (float) – 数据集的训练集大小。默认为: 0.7
val_size (float) – 数据集的验证集大小,测试集大小为 (1 - train_size - val_size)。默认为: 0.1
force_reload (bool) – 是否重新加载数据集。默认为: False
verbose (bool) – 是否打印进度信息。默认为: True。
transform (可调用对象, 可选) – 一个转换函数,它接收一个
DGLGraph
对象并返回一个转换后的版本。DGLGraph
对象在每次访问前都会被转换。
示例
>>> dataset = FraudYelpDataset() >>> graph = dataset[0] >>> num_classes = dataset.num_classes >>> feat = graph.ndata['feature'] >>> label = graph.ndata['label']
- __getitem__(idx)
获取图对象
- 参数:
idx (int) – 项目索引
- 返回值:
图结构、节点特征、节点标签和掩码
ndata['feature']
: 节点特征ndata['label']
: 节点标签ndata['train_mask']
: 训练集掩码ndata['val_mask']
: 验证集掩码ndata['test_mask']
: 测试集掩码
- 返回类型:
- __len__()
数据示例的数量