pyg-team / pytorch_geometric

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

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

Closed puririshi98 closed 1 week ago

puririshi98 commented 1 month 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 month ago

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

Dataset

Model

akihironitta commented 1 month 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 1 month 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

agitter commented 1 month ago

Is there any existing dataset?

We have a text-based molecule generation preprint coming out soon. Our version of the PubChem molecule-text pairs dataset is already public. Would that be useful?

One finding in our preprint is that a lot of the text descriptions in PubChem are quite generic and therefore a poor choice for evaluating text-conditioned molecule generation. Maybe they are still okay for the MoleculeGPT instruction-response format. I'm still wary.

xnuohz commented 1 month ago

Hi @agitter Sorry for the late reply. It should be useful and worthing to create another PyG dataset. For this MoleculeGPT paper, we should try to use the original data generation method as much as possible.

puririshi98 commented 1 week ago

this is closed as the PR is merged