Skip to main content

A pipeline for protein embedding generation and visualization

Project description

Bio Embeddings

The project includes:

  • A pipeline that allows to embed a FASTA file choosing from various embedders (see below), and then project and visualize the embeddings on 3D plots.
  • A web server that takes in sequences, embeds them and returns the embeddings OR visualizes the embedding spaces on interactive plots online.
  • General purpose library to embed protein sequences in any python app.

We presented the bio_embeddings pipeline as a talk at ISMB 2020. You can find it on YouTube, and a copy of the poster will soon be available on F1000.

Important information

  • The albert model weights are not publicly available yet. You can request early access by opening an issue.
  • Please help us out by opening issues and submitting PRs as you see fit, this repository is actively being developed.

Install guides

You can install the package via pip like so:

pip install bio-embeddings

Or directly from the source (e.g. to have the latest features):

pip install -U git+https://github.com/sacdallago/bio_embeddings.git

Examples

We highly recommend you to check out the examples folder for pipeline examples, and the notebooks folder for post-processing pipeline runs and general purpose use of the embedders.

After having installed the package, you can:

  1. Use the pipeline like:

    bio_embeddings config.yml
    

    A blueprint of the configuration file, and an example setup can be found in the examples directory of this repository.

  2. Use the general purpose embedder objects via python, e.g.:

    from bio_embeddings import SeqVecEmbedder
    
    embedder = SeqVecEmbedder()
    
    embedding = embedder.embed("SEQVENCE")
    

    More examples can be found in the notebooks folder of this repository.

Development status

  1. Pipeline stages

  2. Web server (unpublished):

    • SeqVec
    • Albert (unpublished)
  3. General purpose objects:

    • SeqVec
    • Fastext
    • Glove
    • Word2Vec
    • UniRep
    • Albert (unpublished)

Building a Distribution

Building the packages best happens using invoke. If you manganage your dependecies with poetry this should be already installed. Simply use poetry run invoke clean build to update your requirements according to your current status and to generate the dist files

Additional dependencies and steps to run the webserver

If you want to run the webserver locally, you need to have some python backend deployment experience. You'll need a couple of dependencies if you want to run the webserver locally: pip install dash celery pymongo flask-restx pyyaml.

Additionally, you will need to have two instances of the app run (the backend and at least one celery worker), and both instances must be granted access to a MongoDB and a RabbitMQ or Redis store for celery.

Contributors

  • Christian Dallago (lead)
  • Konstantin Schütze
  • Tobias Olenyi
  • Michael Heinzinger

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

bio_embeddings-0.1.3.tar.gz (58.6 kB view details)

Uploaded Source

Built Distribution

bio_embeddings-0.1.3-py3-none-any.whl (74.0 kB view details)

Uploaded Python 3

File details

Details for the file bio_embeddings-0.1.3.tar.gz.

File metadata

  • Download URL: bio_embeddings-0.1.3.tar.gz
  • Upload date:
  • Size: 58.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.9 CPython/3.8.3 Linux/5.7.4-arch1-1

File hashes

Hashes for bio_embeddings-0.1.3.tar.gz
Algorithm Hash digest
SHA256 bca7f534192a03b54493f0eeefabea40cd484b387d7b6ef919278ba8b134bca4
MD5 fd043ae756de0344e2c8a291d3daafc3
BLAKE2b-256 12cecdca5f738f8322632742f823ae740be840cb04f1147c8da80da26de41a4a

See more details on using hashes here.

File details

Details for the file bio_embeddings-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: bio_embeddings-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 74.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.9 CPython/3.8.3 Linux/5.7.4-arch1-1

File hashes

Hashes for bio_embeddings-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e29f5061135e71e1fc5efcbf7652bc7b54dcc05f3f84ee7aa9d7cdfba15e2d2c
MD5 796e40c12df32370d02bfe6690ad46bd
BLAKE2b-256 6753be48865f7d1b9b153bacabc233a2e5956b1dc947cd781ff393255cbd244a

See more details on using hashes here.

Supported by

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