Skip to main content

Predict kinase-substrate interactions.

Project description

KolossuS: Kinase Signaling Prediction Tool

Deconvolving the substrates of hundreds of kinases linked to phosphorylation networks driving cellular behavior is a fundamental, unresolved biological challenge, largely due to the poorly understood interplay of kinase selectivity and substrate proximity. We introduce KolossuS, a deep learning framework leveraging protein language models to decode kinase-substrate specificity. KolossuS achieves superior prediction accuracy and sensitivity across mammalian kinomes, enabling proteome-wide predictions and evolutionary insights. By integrating KolossuS with CRISPR-based proximity proteomics in vivo, we capture kinase-substrate recognition and spatial context, obviating prior limitations. We show this combined framework identifies kinase substrates associated with physiological states such as sleep, revealing both known and novel Sik3 substrates during sleep deprivation. This novel integrated computational-experimental approach promises to transform systematic investigations of kinase signaling in health and disease.

Preprint

Jha K., Shonai D., Parekh A., Uezu A., Fujiyama T., Yamamoto H., Parameswaran P., Yanagisawa M., Singh R., Soderling S. (2025). Deep Learning-coupled Proximity Proteomics to Deconvolve Kinase Signaling In Vivo. bioRxiv, 2025-04. bioRxiv preprint

Installation

pip install kolossus

Usage

Run KolossuS on the command line using kolossus-cli:

usage: kolossus-cli [-h] -p PAIRS [-s SEQS] [-e EMBEDDINGS] [--dtype DTYPE] [-r PROJECTIONS] [-d DEVICE]
                    [--batch_size BATCH_SIZE] -o OUTPUT [--model-small]

optional arguments:
  -h, --help            show this help message and exit
  -p PAIRS, --pairs PAIRS
                        format: <kinase_id> <substrate_id> <substrate_phosphorylation_site>
  -s SEQS, --seqs SEQS  fasta formatted file of sequences, either seqs or embeddings must be provided
  -e EMBEDDINGS, --embeddings EMBEDDINGS
                        h5 file of sequence embeddings, either seqs or embeddings must be provided
  --dtype DTYPE         data type of sequence embeddings (usually float32)
  -r PROJECTIONS, --projections PROJECTIONS
                        name of .h5 files for kolossus projections
  -d DEVICE, --device DEVICE
                        default device on which to run model
  --batch_size BATCH_SIZE
                        Number of pairs at a time on which to run model
  -o OUTPUT, --output OUTPUT
                        desired file path for output
  --model-small         flag to use the KolossuS model that uses ESM2-650M parameters

Note that the fasta file should contain all of the sequences (including the full substrate sequences). We'll get the appropriate windows from the pairs file.

To get the ESM-2 embeddings for your protein sequences, you can use the kolossus-extract command.

usage: kolossus-extract [-h] -i I [--model MODEL] [--device DEVICE] -o O

optional arguments:
  -h, --help       show this help message and exit
  -i I             name of input fasta file
  --model MODEL    name of the ESM-2 model for which you want embeddings: esm2_t48_15B_UR50D or esm2_t33_650M_UR50D
  --device DEVICE  cpu or gpu device to use
  -o O             name of output .h5 file

The pairs file should be formatted like so:

kinase_1  substrate_1  substrate_1_phosphorylation_site_1
kinase_1  substrate_1  substrate_1_phosphorylation_site_2
kinase_2  substrate_2  substrate_2_phosphorylation_site_1
...

Here, <substrate_x_phosphorylation_site_y> is the offset of the phosphorylated residue. So for example, if the substrate has sequence 'GGRGSDD', and the serine (5th amino acid) is the phosphorylated residue, then substrate_phosphorylation_site=5.

There is also a python interface for using KolossuS within kolossus scripts. Main function for usage is kolossus. Function works as follows:

Input:
  - fasta file of all sequences (or .h5 file of embeddings)
  - pair file of format '<kinase_id>\t<substrate_id>\t<substrate_phosphorylation_site>'
  - device
  - model: "large" (6B parameter ESM2 base) or "small" (650M parameter ESM2 base)

Output:
  - pairs (kinase_id, substrate_id, substrate_phosphorylation_site, predicted_probability)

Usage:

## on the command line
kinase_file="kinases.fasta"
substrate_file="substrates.fasta"

cat $kinase_file $substrate_file > seqs.fasta

## in python
from kolossus import kolossus

# define inputs to function
seqs_file = 'seqs.fasta' 
pairs_file = 'pairs_with_phosphorylation_sites.txt'

# returns a dictionary (kinase, substrate, site): probability
pairs_and_probs = kolossus(pairs_file, fseqs=seqs_file, device='cpu')

# to get kolossus embeddings: use the return_projections parameter
pairs_and_probs, projections = kolossus(pairs_file, fseqs=seqs_file, device='cpu', return_projections=True)

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

kolossus-1.0.6.tar.gz (21.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kolossus-1.0.6-py3-none-any.whl (27.6 kB view details)

Uploaded Python 3

File details

Details for the file kolossus-1.0.6.tar.gz.

File metadata

  • Download URL: kolossus-1.0.6.tar.gz
  • Upload date:
  • Size: 21.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.0

File hashes

Hashes for kolossus-1.0.6.tar.gz
Algorithm Hash digest
SHA256 7cd87fbe7eb1fc4620fc4e3677ef08891a777c038a7fe2a7a42a9b891e30a014
MD5 c0928ca9d4903c4e066ed45469b5ca79
BLAKE2b-256 3a0a7bcdd627e60d29db4efcd2a6f746057007b0ab8f8fcd360945f569e6e409

See more details on using hashes here.

File details

Details for the file kolossus-1.0.6-py3-none-any.whl.

File metadata

  • Download URL: kolossus-1.0.6-py3-none-any.whl
  • Upload date:
  • Size: 27.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.0

File hashes

Hashes for kolossus-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 819fad7ce8e2feba0f0f8f55efa87261d3745d601898b57b49930abd1dc21c31
MD5 e914401bb5e92913d880c98fac6de3e8
BLAKE2b-256 aefce464b37381b33466cbf91c937cefc97b9b52c5885b5850c45960d6ea65e4

See more details on using hashes here.

Supported by

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