torchdrug icon indicating copy to clipboard operation
torchdrug copied to clipboard

Contributing

Open farhad-abdi opened this issue 2 years ago • 5 comments

Hi, I would like to contribute to torchdrug but the papers and features implemented seems through, is there any issue that needs to be resolved or paper to be implemented? Also to be aware of the other contributors contribution!

farhad-abdi avatar Mar 15 '22 03:03 farhad-abdi

Hi! Glad to know your interests in contributing to TorchDrug. If you are a first-time contributor, I would suggest either documentation or implementing some models following the style of the library. e.g. write a note on how to customize dataset for #27, or implement some recent molecule representation learning models (e.g. GemNet). You may also come up with other new models you know, as long as they have a reasonable popularity.

KiddoZhu avatar Mar 15 '22 15:03 KiddoZhu

My pleasure, #27 seems to be specific for every datasets, user should use pandas and scikit-learn at her/his liberty, I'll try to add a note. GemNet seems a good starting point, I will integrate it in TorchDrug (expectation two week, if it's fine). Also have you considered integrating non graph models, generative models(VAE,GAN, ... )?

farhad-abdi avatar Mar 15 '22 21:03 farhad-abdi

Thanks! I think we can just narrow down the goal to a single model first. We don't have any time requirement for your implementation, but we would like to ensure the quality, such as the interface of the model, the compatibility with existing modules in the library, basic documentation and code readability, etc. Zuobai should be familiar with GemNet and relevant models. @Oxer11 Could you discuss with Farhad to see how we shall design the interface and components in TorchDrug?

As for non-graph models, we would integrate them if they directly serve one of the drug discovery tasks. For example, we may not implement a plain VAE, but models like HierVAE for molecule generation would be considered.

KiddoZhu avatar Mar 15 '22 22:03 KiddoZhu

Hi, Farhad! Thanks for your interest in contributions.

I think it is a good idea to implement some equivariant graph neural networks in our library. GemNet is one of the SOTA methods in this category. However, it relies on complicated message passing functions, which I think is a little bit hard as a starting point. How about beginning with DimeNet? We can first try to reproduce the results of DimeNet on QM9 and also add some other related datasets. Then, we can move to some more complicated models.

What do you think?

Oxer11 avatar Mar 15 '22 23:03 Oxer11

Hi Zoubai! Thank you for clarifying. Very well I suppose it's a better choice. I will have a look at papers and online implementations if there was anything else that I should know please inform me. It's been already a learning opportunity for me!

farhad-abdi avatar Mar 16 '22 00:03 farhad-abdi