Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/chao1224/neuralmd
NeuralMD for protein-ligand binding simulation
https://github.com/chao1224/neuralmd
binding binding-affinity ligand md molecular-dynamics molecular-dynamics-simulation protein protein-ligand-binding
Last synced: 25 days ago
JSON representation
NeuralMD for protein-ligand binding simulation
- Host: GitHub
- URL: https://github.com/chao1224/neuralmd
- Owner: chao1224
- Created: 2024-04-16T13:44:19.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-11-27T15:54:12.000Z (26 days ago)
- Last Synced: 2024-11-27T16:43:29.860Z (26 days ago)
- Topics: binding, binding-affinity, ligand, md, molecular-dynamics, molecular-dynamics-simulation, protein, protein-ligand-binding
- Language: Python
- Homepage: https://chao1224.github.io/NeuralMD
- Size: 1.15 MB
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# **NeuralMD:** A Multi-Grained Symmetric Differential Equation Model for Learning Protein-Ligand Binding Dynamics
Authors: Shengchao Liu*, Weitao Du*, Hannan Xu, Yanjing Li, Zhuoxinran Li, Vignesh Bhethanabotla, Divin Yan, Christian Borgs*, Anima Anandkumar*, Hongyu Guo*, Jennifer Chayes*
[[Project Page](https://chao1224.github.io/NeuralMD)] [[ArXiv](https://arxiv.org/abs/2401.15122)]
[[Datasets on HuggingFace](https://huggingface.co/datasets/chao1224/NeuralMD/tree/main)] [[Checkpoints on HuggingFace](https://huggingface.co/chao1224/NeuralMD/tree/main)]
# 1. Environment
## Conda
Setup the anaconda
```bash
wget https://repo.continuum.io/archive/Anaconda3-2019.10-Linux-x86_64.sh
bash Anaconda3-2019.10-Linux-x86_64.sh -b
export PATH=$PWD/anaconda3/bin:$PATH
```## Packages
Start with some basic packages.
```bash
conda create -n Geom3D python=3.9
conda activate Geom3D
conda install -y numpy networkx scikit-learn
conda install -y -c conda-forge rdkit
conda install -y pytorch==2.2 pytorch-cuda=12.1 -c pytorch -c nvidia
conda install -y -c pyg -c conda-forge pyg=2.5
conda install -y -c pyg pytorch-scatter
conda install -y -c pyg pytorch-sparse
conda install -y -c pyg pytorch-clusterpip install ogb==1.2.1
pip install sympy
pip install ase
pip install lie_learn # for TFN and SE3-Trans
pip install packaging # for SEGNN
pip3 install e3nn # for SEGNNpip install transformers # for smiles
pip install selfies # for selfiespip install atom3d # for Atom3D
pip install cffi # for Atom3D
pip install biopython # for Atom3Dpip install cython # for pyximport
conda install -y -c conda-forge py-xgboost-cpu # for XGB
pip install pymatgen # for CIF loading
pip install h5pypip install torch-ema
git clone [email protected]:chao1224/torchdiffeq.git
cd torchdiffeqpip install MDAnalysis
pip install -e .
```# 2. Datasets Preparation
We provide two ways to generate the datasets for MISATO.
1. We provide the script under `data/MISATO` to generate two sub-datasets, and you can check the `data/README.md` for more details.
2. You can download the datasets from zenodo and HuggingFace directly.
2.1. You can download the MISATO `MD.hdf5` data from [zenodo link](https://zenodo.org/records/7711953), or use the following CMD:
```
wget -O data/MD/h5_files/MD.hdf5 https://zenodo.org/record/7711953/files/MD.hdf5
```
2.2. Then you can download the dataset from [HuggingFace link](https://huggingface.co/datasets/chao1224/NeuralMD/tree/main) provided by us.The data folder structure looks like the following:
```
.
`-- MISATO_1000
| `-- raw
| | `-- train_MD.txt
| | `-- test_MD.txt
| | `-- MD.hdf5
| | `-- val_MD.txt
`-- MISATO
| `-- raw
| | `-- train_MD.txt
| | `-- test_MD.txt
| | `-- MD.hdf5
| | `-- val_MD.txt
`-- README.md
`-- MISATO_100
| `-- raw
| | `-- train_MD.txt
| | `-- test_MD.txt
| | `-- MD.hdf5
| | `-- val_MD.txt
```# 3. Scripts
Please check `examples` for semi-flexible binding experiments.
We have two types of tasks
- `multi_traj`
- `single_traj`
and four ML methods
- `VerletMD`
- `GNNMD`
- `DenoisinLD`
- `NeuralMD`
- `--NeuralMD_binding_model=NeuralMD_Binding01` for NeuralMD ODE
- `--NeuralMD_binding_model=NeuralMD_Binding02` or `--NeuralMD_binding_model=NeuralMD_Binding04` for NeuralMD SDE# 4. Checkpoints
We provide the optimal checkpoints and corresponding hyperparameters at [this HuggingFace link](https://huggingface.co/chao1224/NeuralMD/tree/main).
# Cite Us
Feel free to cite this work if you find it useful to you!
```
@inproceedings{
@article{liu2024NeuralMD,
title={A Multi-Grained Symmetric Differential Equation Model for Learning Protein-Ligand Binding Dynamics},
author={Liu, Shengchao* and Du, Weitao* and Xu, Hannan and Li, Yanjing and Li, Zhuoxinran and Bhethanabotla, Vignesh and Liang, Yan and Borgs, Christian* and Anandkumar, Anima* and Guo, Hongyu* and Chayes, Jennifer*},
journal={arXiv preprint arXiv:2401.15122},
year={2024}
}
```