PerSourceUniform
- class dgl.dataloading.negative_sampler.PerSourceUniform(k)[source]
Bases:
_BaseNegativeSamplerNegative sampler that randomly chooses negative destination nodes for each source node according to a uniform distribution.
For each edge
(u, v)of type(srctype, etype, dsttype), DGL generateskpairs of negative edges(u, v'), wherev'is chosen uniformly from all the nodes of typedsttype. The resulting edges will also have type(srctype, etype, dsttype).- Parameters:
k (int) – The number of negative samples per edge.
Examples
>>> g = dgl.graph(([0, 1, 2], [1, 2, 3])) >>> neg_sampler = dgl.dataloading.negative_sampler.PerSourceUniform(2) >>> neg_sampler(g, torch.tensor([0, 1])) (tensor([0, 0, 1, 1]), tensor([1, 0, 2, 3]))