Skip to main content

A tri-partite modular autoencoder for addressing imbalanced cell type annotation and batch effect reduction

Project description

scMusketeers : A tri-partite modular autoencoder for addressing imbalanced cell type annotation and batch effect reduction

Summary

We developed scMusketeer, a modular deep learning model producing an optimal dimension-reduced representation with a focus on imbalanced cell type annotation and batch effect reduction. The architecture of scMusketeers is made of three modules. The first module is an autoencoder which provides a reduced latent representation, while removing noise, thus resulting in a better data reconstruction. The second module, is a classifier with a focal loss providing higher prediction for smaller populations of cell types. The third module is an adversarial domain adaptation (DANN) module that corrects batch effect.

scMusketeers performance was optimized after conducting a precise ablation study to assess model's hyperparameters. The model was compared to reference tools for single-cell integration and annotation. It was at least on par with state-of-the-art models, often outperforming most of them. It showed increased performance on the identification of rare cell types. Despite the rather simple structure of its deep learning model, it demonstrated equivalent performance to UCE foundation model. Finally, scMusketeers was able to transfer the cell label from single-cell RNA-Seq to spatial transcriptomics.

Our tripartite modular autoencoder demonstrates versatile capabilities while addressing key challenges in single-cell atlas reconstruction. We noticed in particular that the generic modular framework of scMusketeers should be easily generalized to other large-scale biology projects that require deep learning models.

Tutorial

Access to the tutorial on Google collab

We will see in this tutorial two use-cases:

  • Transfer cell annotation to unlabeled cells
  • Transfer cell annotation and reduce batch from a query atlas to a reference atlas

Install

You can install sc_musketeers with Pypi:

$ pip install sc-musketeers

with conda

$ conda -c bioconda sc-musketeers

with docker

Examples

sc-musketeers can be used for different task in integration and annotation of single-cell atlas.

Here are 2 different examples:

  • Transfer cell annotation to unlabeled cells
$ sc-musketeers transfer my_atlas --class_key celltype --batch_key donor --unlabeled_category=Unknown
  • Transfer cell annotation and reduce batch from a query atlas to a reference atlas
$ sc-musketeers transfer ref_dataset --query_path query_dataset --class_key=celltype --batch_key donor --unlabeled_category=Unknown

Read the CONTRIBUTING.md file.

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

sc_musketeers-0.2.0.tar.gz (85.5 kB view details)

Uploaded Source

Built Distribution

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

sc_musketeers-0.2.0-py3-none-any.whl (96.7 kB view details)

Uploaded Python 3

File details

Details for the file sc_musketeers-0.2.0.tar.gz.

File metadata

  • Download URL: sc_musketeers-0.2.0.tar.gz
  • Upload date:
  • Size: 85.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for sc_musketeers-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7259ca5d59880271a2a8914de5e53c44e387e142b808bcc9eac8af13920c4f3b
MD5 5434669707433be6441f184dea716fd4
BLAKE2b-256 f9c4f51ec6444071a809b580eb90c1fe7345ffe4fba929f54932a45c1a264a95

See more details on using hashes here.

File details

Details for the file sc_musketeers-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: sc_musketeers-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 96.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for sc_musketeers-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 13c6eccf0617198f9b57dd2eb0b8e1af29bd448ee8b92e9391c16c1008d7d932
MD5 a1795d4142cf2aeb123381ede36d1418
BLAKE2b-256 69fde9a0b6545f7d9dd80020bb49ebc66b15f1f8c6a4d2f3827a294624adce45

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