Autoencoder-based sequence embedding
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 265
- Forks
- 50
- Avg merge
- 9d 9h
- Merged PRs (30d)
- 4
Description
Description of feature
IMO autoencoder-based sequence embedding has a huge potential for finding similar immune receptors, potentially improving both the speed and the accuracy compared to alignment-based metrics. In particular, finding similar sequences is important in two scirpy functions:
- defining clonotypes
- querying immune receptor databases.
For the database query, an online-update algorithm similar to scArches for gene expression would be nice: The autoencoder could be trained on the database (which might have millions of unique receptors) once. A new dataset (which might only have 10k-100k unique receptors), could be projected into the same latent space as the database, significantly improving query time.
An extension to this idea is to embed gene expression and TCR/BCR data into the same latent space.
Existing tools
- Trex by @ncborcherding. Based on
keras. - mvTCR by @b-schubert's lab. Combines receptor/Gex data. Based on
pytorch. - TESSA. Combines receptor/Gex data. Not even sure it's an autoencoder, need yet to check in detail, but it seems to use some clever sequence embeddings.
- There are likely more...
@drEast mentioned he is working on something like that a few months ago. Are you willing to share a few details and if you would be interested in integrating it with scirpy?
@adamgayoso, any chance there's AirrVI soon? 😜
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by examining scirpy's existing clonotype-definition and immune-receptor database-query functions, then review the cited Trex, mvTCR, TESSA, and scArches projects. A complete contribution would need a defined embedding approach, integration points, and measurable speed or accuracy criteria, none of which this proposal specifies.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- keras, python, pytorch
- Domain
- bioinformatics, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100