Git Product home page Git Product logo

prodconn's Introduction

ProDCoNN

Designing protein sequences that fold to a given three-dimensional (3D) structure has long been a challenging problem in computational structural biology with significant theoretical and practical implications. In this study, we first formulated this problem as predicting the residue type given the 3D structural environment around the CĪ± atom of a residue, which is repeated for each residue of a protein. We designed a nine-layer 3D deep convolutional neural network (CNN) that takes as input a gridded box with the atomic coordinates and types around a residue. Several CNN layers were designed to capture structure information at different scales, such as bond lengths, bond angles, torsion angles, and secondary structures. Trained on a huge number of protein structures, the method, called ProDCoNN (protein design with CNN), achieved state-of-the-art performance when tested on large numbers of test proteins and benchmark datasets.

This package provides an implementation of the inference pipeline of ProDCoNN:

(1) 4 pre-trained models using different setups and databases. We recommend using BBO90 and BBS90. Please refer to the ProDCoNN paper (https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8204568/) for a detailed description of the method.

(2) Script for running the inference pipeline

(3) requirements.txt contains the env information

To run the pipeline: (1) setup the environment based on requirements.txt

(2) BBO30: python prediction.py pdb_file_path start_index, end_index BBO 30 output_file

(3) BBO90: python prediction.py pdb_file_path start_index, end_index BBO 90 output_file

(4) BBS30: python prediction.py pdb_file_path start_index, end_index BBS 30 output_file

(5) BBS90: python prediction.py pdb_file_path start_index, end_index BBS 90 output_file

pdb_file_path: the path to the input pdb file

start_index: the start index of the prediction along the sequence, count from 1

end_index: the end index of the prediction along the sequence. If all the residues need to be predicted, the start_index should be 1, and the end_index should be -1.

output_file: the name for the output file

Example:

python prediction.py 1ete.pdb A 1,-1 BBO 90 result_bbo90.txt

prodconn's People

Contributors

lunarrecluse avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    šŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. šŸ“ŠšŸ“ˆšŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ā¤ļø Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.