Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Roadmap #1

Open
rusty1s opened this issue Nov 5, 2021 · 0 comments
Open

Roadmap #1

rusty1s opened this issue Nov 5, 2021 · 0 comments
Assignees

Comments

@rusty1s
Copy link
Member

rusty1s commented Nov 5, 2021

The overall goal is to fit SMORE into the PyG interface, and to re-use as much of PyG's functionality as possible. This involves:

  • Providing datasets as part of a InMemoryDataset
  • Integrate SparseEmbedding functionality with asychronous access directly in PyG (can be later used for integration with GNNAutoScale as well)
  • Clean-up models to make use of MessagePassing whenever possible
  • Out-source evaluation metrics to torch_geometric.utils or torch_geometric.metrics
  • Potentially integrate with GraphGym once multi-GPU support for GraphGym lands

In general, I'm in favor of storing KGs as pure PyTorch tensors, and utilize the torch.extension package for C++/CUDA integration (similar to how torch-scatter and torch-sparse works). This should also allow us to have @torch.jit.script support for C++ extensions.

We can store KGs in CSR representation based on head type. Relations can be sorted based on relation id inside each head id and can be then effectively queried via binary search.

@rusty1s rusty1s self-assigned this Nov 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant