dgl.rand_bipartite
- dgl.rand_bipartite(utype, etype, vtype, num_src_nodes, num_dst_nodes, num_edges, idtype=torch.int64, device=device(type='cpu'))[源代码]
生成一个随机的单向二分图并返回。
它从所有可能的节点对中均匀选择
num_edges
条边来构成图。这种随机选择是不放回的,这意味着生成的图中不会有多重边。要控制随机性,可以通过
dgl.seed()
设置随机种子。- 参数:
utype (str, 可选) – 源节点类型的名称。
etype (str, 可选) – 边类型的名称。
vtype (str, 可选) – 目标节点类型的名称。
num_src_nodes (int) – 源节点的数量。
num_dst_nodes (int) – 目标节点的数量。
num_edges (int) – 边的数量
idtype (int32, int64, 可选) – 用于存储与图结构相关的信息(如节点和边 ID)的数据类型。它应该是一个框架特定的数据类型对象(例如,torch.int32)。默认情况下,DGL 使用 int64。
device (设备上下文, 可选) – 生成的图所在的设备。它应该是一个框架特定的设备对象(例如,torch.device)。默认情况下,DGL 将图存储在 CPU 上。
- 返回:
生成的随机二分图。
- 返回类型:
另请参阅
示例
>>> import dgl >>> dgl.rand_bipartite('user', 'buys', 'game', 50, 100, 10) Graph(num_nodes={'game': 100, 'user': 50}, num_edges={('user', 'buys', 'game'): 10}, metagraph=[('user', 'game', 'buys')])