Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/reshalfahsi/molecule-generation-drug-discovery
Small Molecular Graph Generation for Drug Discovery
https://github.com/reshalfahsi/molecule-generation-drug-discovery
cheminformatics drug-discovery gan generative-adversarial-network graph-convolutional-network graph-neural-network molecular-graph pytorch-lightning rgcn
Last synced: about 6 hours ago
JSON representation
Small Molecular Graph Generation for Drug Discovery
- Host: GitHub
- URL: https://github.com/reshalfahsi/molecule-generation-drug-discovery
- Owner: reshalfahsi
- Created: 2023-07-24T17:53:05.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-07-29T04:39:38.000Z (over 1 year ago)
- Last Synced: 2024-01-29T18:58:17.784Z (10 months ago)
- Topics: cheminformatics, drug-discovery, gan, generative-adversarial-network, graph-convolutional-network, graph-neural-network, molecular-graph, pytorch-lightning, rgcn
- Language: Jupyter Notebook
- Homepage:
- Size: 595 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Small Molecular Graph Generation for Drug Discovery
With the advent of deep learning, [drug development](https://en.wikipedia.org/wiki/Drug_development) can be sped up just by learning the patterns within the molecules regarding their chemical properties and composition. The pursuit of good candidates for drugs can be achieved using the generative model which can extrapolate the unseen molecular structure. In this project, one of the most popular generative models, ``Generative Adversarial Network`` or ``GAN``, is utilized. The generator of GAN consists of MLP, and the discriminator of GAN consists of R-GCN + MLP. Nowadays, there are plenty of open-sourced datasets that can be used for this purpose such as the ``QM9 (Quantum Machines 9) dataset``. The GAN model is trained on QM9 dataset and its performances are assessed by means of [molecular metrics](https://github.com/nicola-decao/MolGAN/blob/master/utils/molecular_metrics.py), i.e., quantitative estimate of druglikeness (QED), solubility (defined as the log octanol-water partition coefficient or logP), synthetizability, natural product, drug candidate, valid, unique, novel, and diversity.
## Experiment
All of the experiments are summed up in this [notebook](https://github.com/reshalfahsi/molecule-generation-drug-discovery/blob/master/Small_Molecular_Graph_Generation_for_Drug_Discovery.ipynb).
## Result
## Quantitative Result
The performance of the model through a normally distributed latent vector sample in ``6561`` runs against the ``QM9 dataset`` is presented below.
Metrics | Score |
------------ | ------------- |
QED | 0.406 |
Solubility | 0.317 |
Synthetizability | 0.344 |
Natural Product | 0.758 |
Drug Candidate | 0.478 |
Valid | 0.797 |
Unique | 0.033 |
Novel | 0.790 |
Diversity | 0.567 |## Loss Curve
GAN's generator and discriminator loss curve in the training process.## Qualitative Result
Here are some samples of the qualitative results of the model.
The qualitative results of the generated molecules. The chemical structure, the SMILES representation, and the QED scores are provided.## Credit
- [Quantum Machines 9 Dataset](http://quantum-machine.org/datasets/)
- [Drug Molecule Generation with VAE](https://keras.io/examples/generative/molecule_generation/)
- [WGAN-GP with R-GCN for the generation of small molecular graphs](https://keras.io/examples/generative/wgan-graphs/)
- [Modeling Relational Data with Graph Convolutional Networks](https://arxiv.org/abs/1703.06103)
- [(Paper) MolGAN: An implicit generative model for small molecular graphs](https://arxiv.org/abs/1805.11973)
- [(Code) MolGAN: An implicit generative model for small molecular graphs](https://github.com/nicola-decao/MolGAN)
- [PyTorch-GAN](https://github.com/eriklindernoren/PyTorch-GAN)
- [RDKit](https://github.com/rdkit/rdkit)
- [PyTorch Lightning](https://lightning.ai/docs/pytorch/latest/)