Hi, I am referring to the following implementation of pinSAGE : https://github.com/dmlc/dgl/tree/master/examples/pytorch/pinsage
I had a few questions regarding it -
- Is it using the user features? If yes, where? I can see item features being used, but can’t understand where the user features are used.
- the readme in repo says that it learns embeddings for each node, instead of getting it as a function of node features. but i can’t understand how its being done, and how do we export the node embeddings.
Wouldn’t something simple like :
with torch.no_grad():
item_batches = torch.arange(g.number_of_nodes(item_ntype)).split(args.batch_size)
h_item_batches = []
for blocks in dataloader_test:
for i in range(len(blocks)):
blocks[i] = blocks[i].to(device)
h_item_batches.append(model.get_repr(blocks))
h_item = torch.cat(h_item_batches, 0)
torch.save(h_item,"embeddings.pth")
work to save the embeddings even if the graph g is different from what we trained on?
Please let me know if i couldn’t explain some parts of the questions, or if more details are needed