Skip to main content

MHC Binding Predictor

Project description

Build Status Open In Colab

mhcflurry

MHC I ligand prediction package with competitive accuracy and a fast and documented implementation.

MHCflurry implements class I peptide/MHC binding affinity prediction. The current version provides pan-MHC I predictors supporting any MHC allele of known sequence. MHCflurry runs on Python 3.4+ using the tensorflow neural network library. It exposes command-line and Python library interfaces.

MHCflurry also includes two expermental predictors, an "antigen processing" predictor that attempts to model MHC allele-independent effects such as proteosomal cleavage and a "presentation" predictor that integrates processing predictions with binding affinity predictions to give a composite "presentation score." Both models are trained on mass spec-identified MHC ligands.

If you find MHCflurry useful in your research please cite:

T. O'Donnell, A. Rubinsteyn, U. Laserson. "MHCflurry 2.0: Improved pan-allele prediction of MHC I-presented peptides by incorporating antigen processing," Cell Systems, 2020. https://doi.org/10.1016/j.cels.2020.06.010

T. O’Donnell, A. Rubinsteyn, M. Bonsack, A. B. Riemer, U. Laserson, and J. Hammerbacher, "MHCflurry: Open-Source Class I MHC Binding Affinity Prediction," Cell Systems, 2018. https://doi.org/10.1016/j.cels.2018.05.014

Please file an issue if you have questions or encounter problems.

Have a bugfix or other contribution? We would love your help. See our contributing guidelines.

Try it now

You can generate MHCflurry predictions without any setup by running our Google colaboratory notebook.

Installation (pip)

Install the package:

$ pip install mhcflurry

Download our datasets and trained models:

$ mhcflurry-downloads fetch

You can now generate predictions:

$ mhcflurry-predict \
       --alleles HLA-A0201 HLA-A0301 \
       --peptides SIINFEKL SIINFEKD SIINFEKQ \
       --out /tmp/predictions.csv
       
Wrote: /tmp/predictions.csv

Or scan protein sequences for potential epitopes:

$ mhcflurry-predict-scan \
        --sequences MFVFLVLLPLVSSQCVNLTTRTQLPPAYTNSFTRGVYYPDKVFRSSVLHS \
        --alleles HLA-A*02:01 \
        --out /tmp/predictions.csv
        
Wrote: /tmp/predictions.csv  

See the documentation for more details.

Docker

You can also try the latest (GitHub master) version of MHCflurry using the Docker image hosted on Dockerhub by running:

$ docker run -p 9999:9999 --rm openvax/mhcflurry:latest

This will start a jupyter notebook server in an environment that has MHCflurry installed. Go to http://localhost:9999 in a browser to use it.

To build the Docker image yourself, from a checkout run:

$ docker build -t mhcflurry:latest .
$ docker run -p 9999:9999 --rm mhcflurry:latest

Predicted sequence motifs

Sequence logos for the binding motifs learned by MHCflurry BA are available here.

Common issues and fixes

Problems downloading data and models

Some users have reported HTTP connection issues when using mhcflurry-downloads fetch. As a workaround, you can download the data manually (e.g. using wget) and then use mhcflurry-downloads just to copy the data to the right place.

To do this, first get the URL(s) of the downloads you need using mhcflurry-downloads url:

$ mhcflurry-downloads url models_class1_presentation
https://github.com/openvax/mhcflurry/releases/download/1.6.0/models_class1_presentation.20200205.tar.bz2```

Then make a directory and download the needed files to this directory:

$ mkdir downloads
$ wget  --directory-prefix downloads https://github.com/openvax/mhcflurry/releases/download/1.6.0/models_class1_presentation.20200205.tar.bz2```

HTTP request sent, awaiting response... 200 OK
Length: 72616448 (69M) [application/octet-stream]
Saving to: 'downloads/models_class1_presentation.20200205.tar.bz2'

Now call mhcflurry-downloads fetch with the --already-downloaded-dir option to indicate that the downloads should be retrived from the specified directory:

$ mhcflurry-downloads fetch models_class1_presentation --already-downloaded-dir downloads

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mhcflurry-2.1.0.tar.gz (135.7 kB view details)

Uploaded Source

Built Distribution

mhcflurry-2.1.0-py3-none-any.whl (140.5 kB view details)

Uploaded Python 3

File details

Details for the file mhcflurry-2.1.0.tar.gz.

File metadata

  • Download URL: mhcflurry-2.1.0.tar.gz
  • Upload date:
  • Size: 135.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for mhcflurry-2.1.0.tar.gz
Algorithm Hash digest
SHA256 a4129922db5b662e248e066e73e12be74c3d08c7c0a9f1de4776b7e5aafa42bb
MD5 42bdf1a6828b4231e0f7e0a938762146
BLAKE2b-256 5ccffb97cd7f6ee90460080b60f212313a49061d64c887655e36e4bc570b8090

See more details on using hashes here.

File details

Details for the file mhcflurry-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: mhcflurry-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 140.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for mhcflurry-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 79ba86cf8f076da54f72afdda20988effe7fb1a0700f1f8a5ce620a70775f734
MD5 adc77f79e2d88429488cf13e61f10019
BLAKE2b-256 0bf800f620a4b7d7b2d175522b282b19797165f2a434609b1bfe1ebf111ceed6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page