pyg-team / pytorch_geometric

Graph Neural Network Library for PyTorch
https://pyg.org
MIT License
21.17k stars 3.64k forks source link

`MoleculeGPT`: Dataset+Model+Unit tests+Example #9698

Open puririshi98 opened 1 week ago

puririshi98 commented 1 week ago

🚀 The feature, motivation and pitch

Paper: https://ai4d3.github.io/papers/34.pdf Part of the community sprint https://github.com/pyg-team/pytorch_geometric/issues/9694 The goal of this project is to reproduce the work done in MoleculeGPT while tying it as closely to the existing GNN+LLM frameworks in PyG. We recommend using as many existing features as possible from PyG. Additional features which you feel will be reusable for other workflows should be added to PyG. One-off functions that are specific to this workflow can be left inside the example. Most of the effort will likely go into building a PyG dataset that matches the one described in the paper. At a high level the dataset is a composition of Q+A pairs for molecular field, with matching molecules as context. These Q+A pairs focus on molecular property prediction.

Alternatives

No response

Additional context

No response

xnuohz commented 1 week ago

Would like to contribute to this paper. Listed what to do, need some discussion for the details^^.

Dataset

Model

akihironitta commented 4 days ago

Is there any existing dataset? Or we need to extract and clean from PubChem from scratch.

Hey @xnuohz sorry for the delay! Just had a quick look at the paper, and it looks like they haven't published the code and dataset that they curated for the paper, but as a general goal, we should aim for reproducing the result from the paper by re-implementing the dataset, preprocessing, and model with an example script.

We can also discuss this in PyG Slack :)

(cc'ing @puririshi98 for when he's back)

zechengz commented 3 days ago

@xnuohz I think they seem to follow the this data preprocessing step https://github.com/chao1224/MoleculeSTM/tree/main/data as described in section 3.2 Also the 1D Graph Branch should be 1D SMILES Branch which uses the encoder designed to encode SMILES string https://github.com/seyonechithrananda/bert-loves-chemistry