Hello,
As the subject suggests, I was wondering if it’s possible to make the adjacency matrix of a block come out as symmetric (of dimension |dstnode| x |dstnode|). Currently, when I use it, the shape will be |srcsnodes| x |srcnodes|.
To reproduce this issue :
import numpy as np
import networkx as nx
import matplotlib.pyplot as plt
import torch
import dgl
src_ids = [2,5,2,2,6,9,1,9,2,2,1,2,2, 3,5,]
dst_ids = [3,9,0,8,8,8,10,1,4,7,7,6,10, 8, 8]
g = dgl.to_bidirected(dgl.graph((src, dst)))
sampler = dgl.dataloading.NeighborSampler([2,2])
sampler = dgl.dataloading.as_edge_prediction_sampler(
sampler,
negative_sampler=dgl.dataloading.negative_sampler.Uniform(5))
train_dataloader = dgl.dataloading.DataLoader(
g, torch.arange(g.num_edges()), sampler,
device='cpu', batch_size=2, shuffle=True,
drop_last=False, num_workers=0, use_uva=False)
_, _, _ , blocks = next(iter(train_dataloader))
blocks[-1].adj().shape
>> torch.Size([12, 9])