Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Luckick/EAGCN
Multi-View Spectral Graph Convolution with Consistent Edge Attention for Molecular Modeling
https://github.com/Luckick/EAGCN
Last synced: 17 days ago
JSON representation
Multi-View Spectral Graph Convolution with Consistent Edge Attention for Molecular Modeling
- Host: GitHub
- URL: https://github.com/Luckick/EAGCN
- Owner: Luckick
- Created: 2018-02-10T21:40:33.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2021-10-01T02:38:08.000Z (about 3 years ago)
- Last Synced: 2024-08-01T17:25:39.715Z (4 months ago)
- Language: Python
- Homepage:
- Size: 2.26 MB
- Stars: 203
- Watchers: 8
- Forks: 44
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-graph-classification - [Python Reference
- awesome-gcn - Luckick/EAGCN - relational Graph Convolutional Networks, (Implement:)
README
# EAGCN
This is a PyTorch implementation of paper "[Multi-View Spectral Graph Convolution with Consistent Edge Attention for Molecular Modeling](https://www.sciencedirect.com/science/article/abs/pii/S092523122100271X)" published at Neurocomputing.
## Installation
Install pytorch and torchvision.
## Train EAGCN model
### Dataset
Four benchmark datasets ([Tox21, HIV, Freesolv and Lipophilicity](http://moleculenet.ai/datasets-1)) are utilized in this study to evaluate the predictive performance of built graph convolutional networks. They are all downloaded from the [MoleculeNet](http://moleculenet.ai/) that hold various benchmark datasets for molecular machine learning.
Datasets are also provided in folder "Data".
### Train the model
Open the folder "eagcn_pytorch".When you train the model, you can use:
python train.py
support files:
EAGCN_dataset.py: pre-processing data
neural_fp.py: from smiles to graph
layers.py: define layers
models.py: define models
utils.py: other tools### Visualization Tools
check_model.py: check parameters (edge attention for each layer).
mol_to_vec.py: visualize the molecule in 2D space, compare with other molecules which have similiar SMILEs.
plot.py: show model training process.
tsnes.py: tsne visualization about atom subtype, also provide umap option.
kmeans_atomrep.py: kmeans clustering for atom subtype.
plot_molecule.py: plot single molecule.## Citation
If you use this repository, e.g., the code and the datasets, in your research, please cite the following paper:
```
@article{shang2021multi,
title={Multi-view spectral graph convolution with consistent edge attention for molecular modeling},
author={Shang, Chao and Liu, Qinqing and Tong, Qianqian and Sun, Jiangwen and Song, Minghu and Bi, Jinbo},
journal={Neurocomputing},
volume={445},
pages={12--25},
year={2021},
publisher={Elsevier}
}
```## Acknowledgments
Code is inspired by [GCN](https://github.com/tkipf/gcn) and [conv_qsar_fast](https://github.com/connorcoley/conv_qsar_fast)