Awesome
<!-- README.md is generated from README.Rmd. Please edit that file -->deepdirect
<!-- badges: start --> <!-- badges: end -->Deepdirect is an in silico approach to generate mutations for protein complexes towards a specified direction (increase/decrease) in binding affinity.
System requirements and dependencies
Hardware Requirements
deepdirect
model is able to be trained and perform its operations on a
standard computer.
OS Requirements
The deepdirect
model should be compatible with Windows, Mac, and Linux
operating systems. The package has been tested on the following systems:
- Linux 3.10.0
- Windows 10
Dependencies
deepdirect
framework is built and trained on the Tensorflow 2.4.0
and Keras 2.4.0
.
Framework construction
The python file including all required deepdirect framework built
function is able to be downloaded from GitHub:
deepdirect_framework/model_function.py
Data structure
data
folder contains the original datasets used for building the training datasets.deepdirect_framework
folder contains the trained model weights and the model constructing functions.deepdirect_paper
folder contains codes for building and training models, and performing analysis in the deepdirect manuscript. The fileab_bind_data_extract.py
andskempi_data_extract.py
contains code for constructing training datasets for Deepdirect framework.train_step_1.py
contains code for training step 1 for the mutation mutator.final_model.py
contains code for training step 2 (final) for the mutation mutator.model_function.py
contains code for constructing the Deepdirect framework.model_evaluation_application.py
contains code for model evaluation, and teh application on Novavax-vaccine.evolution_analysis.py
contains code for performing evolution analysis.example
folder contains the Jupyter notebook example and the demo data.
File source
For files that are required as input in the code but not generated from other codes, please refer to the data availability section in the original paper.
Installation
Clone repository:
git clone https://github.com/tianlt/deepdirect.git
Create virtual environment:
conda create --name deepdirect python=3.6.8
Activate virtual environment:
conda activate deepdirect
Install dependencies:
pip install tensorflow==2.4.0
pip install keras==2.4.0
Running deepdirect
data processing
Data to be input to deepdirect include sequence to be mutated pre
, RBD
site rbd
, ligand-receptor index same
, protein tertiary structure
information x
, y
and z
, and random noise input_noi
. All input
has to be tf.float32
type.
Build deepdirect mutator with trained weights
aa_mutator = build_aa_mutator()
aa_mutator.load_weights(
'deepdirect_framework/model_i_weights.h5')
Binding affinity-guided mutation
aa_mutator.predict([pre, rbd, same, x, y, z, input_noi])
Additional information
Expected outputs: mutated amino acid sequence
Expected runtime for mutation: ~1 mintue
Issues and bug reports
Please use https://github.com/tianlt/deepdirect/issues to submit issues, bug reports, and comments.
License
deepdirect is distributed under the GNU General Public License version 2 (GPLv2).
Citation
If deepdirect has assisted you with your work, please kindly cite our paper:
Lan, T., Su, S., Ping, P. et al. Generating mutants of monotone affinity towards stronger protein complexes through adversarial learning. Nature Machine Intelligence 6, 315–325 (2024). https://doi.org/10.1038/s42256-024-00803-z