Giter Site home page Giter Site logo

ablooper's Introduction

ABlooper

Antibodies are a key component of the immune system and have been extensively used as biotherapeutics. Accurate knowledge of their structure is central to understanding their antigen binding function. The key area for antigen binding and the main area of structural variation in antibodies is concentrated in the six complementarity determining regions (CDRs), with the most important for binding and most variable being the CDR-H3 loop. The sequence and structural variability of CDR-H3 make it particularly challenging to model. Recently deep learning methods have offered a step change in our ability to predict protein structures. In this work we present ABlooper, an end-to-end equivariant deep-learning based CDR loop structure prediction tool. ABlooper rapidly predicts the structure of CDR loops with high accuracy and provides a confidence estimate for each of its predictions. On the models of the Rosetta Antibody Benchmark, ABlooper makes predictions with an average CDR-H3 RMSD of 2.49ร…, which drops to 2.05ร… when considering only its 76% most confident predictions.

Install

To install via PyPi:

$ pip install ABlooper

To download and install the latest version from github:

$ git clone https://github.com/brennanaba/ABlooper.git
$ pip install ABlooper/

This package requires PyTorch. If you do not already have PyTorch installed, you can do so following these instructions.

Either OpenMM or PyRosetta are required for the optional refinement and side-chain prediction steps. OpenMM and pdbfixer can be installed via conda using:

$ conda install -c conda-forge openmm pdbfixer

If you want to use PyRosetta for refinement and do not have it installed, it can be obtained from here.

Usage

To use ABlooper, you will need an IMGT numbered antibody model. If you do not already have an antibody model, you can generate one using ABodyBuilder.

To remodel the CDRs of an existing antibody model using the command line:

$ ABlooper my_antibody_model.pdb --output ABlooper_model.pdb --heavy_chain H --light_chain L

To remodel the CDRs of an existing model using the python API:

from ABlooper import CDR_Predictor

input_path = "my_antibody_model.pdb"
output_path = "ABlooper_model.pdb"

pred = CDR_Predictor(input_path, chains = ("H", "L"))
pred.write_predictions_in_pdb_format(output_path)

I would recommend using the command line if you just want a quick antibody model. If speed is a priority, it is probably best to just use the trained pytorch model. The python class will work best if you want to incorporate CDR prediction into a pipeline or access other details such as confidence score or RMSD to original model. Both of which can be obtained as follows:

rmsd_from_input = pred.calculate_BB_rmsd_wrt_input()
confidence_score = pred.decoy_diversity 

I have been made aware that ABlooper will occasionally generate abnormal geometries. To fix this, and to generate side-chains you can do (Only works if you have PyRosetta or OpenMM installed):

$ ABlooper my_antibody_model.pdb --output ABlooper_model.pdb --side_chains

As a default this will use OpenMM if it is installed.

Citing this work

The code and data in this package is based on the following paper ABlooper. If you use it, please cite:

@article{10.1093/bioinformatics/btac016,
    author = {Abanades, Brennan and Georges, Guy and Bujotzek, Alexander and Deane, Charlotte M},
    title = {ABlooper: fast accurate antibody CDR loop structure prediction with accuracy estimation},
    journal = {Bioinformatics},
    volume = {38},
    number = {7},
    pages = {1877-1880},
    year = {2022},
    month = {01},
    issn = {1367-4803},
    doi = {10.1093/bioinformatics/btac016},
    url = {https://doi.org/10.1093/bioinformatics/btac016},

ablooper's People

Contributors

brennanaba 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.