Deepdirect is an in silico approach to generate mutations for protein complexes towards a specified direction (increase/decrease) in binding affinity.
deepdirect
model is able to be trained and perform its operations on a
standard computer.
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
deepdirect
framework is built and trained on the Tensorflow 2.4.0
and Keras 2.4.0
.
The python file including all required deepdirect framework built
function is able to be downloaded from GitHub:
deepdirect_framework/model_function.py
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.
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.
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
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.
aa_mutator = build_aa_mutator()
aa_mutator.load_weights(
'deepdirect_framework/model_i_weights.h5')
aa_mutator.predict([pre, rbd, same, x, y, z, input_noi])
Expected outputs: mutated amino acid sequence
Expected runtime for mutation: ~1 mintue
Please use https://github.com/tianlt/deepdirect/issues to submit issues, bug reports, and comments.
deepdirect is distributed under the GNU General Public License version 2 (GPLv2).
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