Skip to content

Latest commit

 

History

History
99 lines (72 loc) · 3.11 KB

File metadata and controls

99 lines (72 loc) · 3.11 KB

SnapCCESS

SnapCCESS is an unsupervised ensemble deep learning framework for clustering multimodal single-cell omics data. It creates snapshots of multimodal variational autoencoder embeddings, which can then be used with downstream clustering methods to generate consensus cell clusters.

The repository contains both:

  • snapccess-py/: the Python implementation distributed through PyPI.
  • snapccess-r/SnapCCESS/: an R wrapper that calls the Python package through reticulate.

SnapCCESS workflow

Publication

SnapCCESS accompanies:

Yu, L., Liu, C., Yang, J. Y. H. & Yang, P. Ensemble deep learning of embeddings for clustering multimodal single-cell omics data. Bioinformatics 39(6), btad382 (2023). https://doi.org/10.1093/bioinformatics/btad382

Installation

Python

pip install snapccess --index-url https://pypi.org/simple

The Python package depends on PyTorch. GPU acceleration is optional and depends on the local PyTorch/CUDA or PyTorch/ROCm installation.

R Wrapper

remotes::install_github(
  repo = "PYangLab/SnapCCESS",
  branch = "main",
  subdir = "snapccess-r/SnapCCESS"
)

After installing the R wrapper, install the Python package into a reticulate environment:

SnapCCESS::install_SnapCCESS(envname = "SnapCCESS", method = "conda")

If Python dependencies are already managed through Conda, virtualenv, or a cluster module, configure reticulate to use that environment before loading the R wrapper.

Input Data

SnapCCESS expects a list of modalities measured across the same cells, for example RNA and ADT matrices from CITE-seq. Each modality should be arranged as features by cells before preprocessing in the R wrapper. The Python API expects the combined PyTorch data loader used by the training routine.

The tutorial data in tutorials/in/ includes small CITE-seq RNA, ADT, and cell type files that can be used to run the examples.

Tutorials

The tutorials demonstrate package usage. The best hyperparameters can vary by dataset; for the datasets used in the publication, refer to the paper.

Citation

If you use SnapCCESS, please cite:

@article{Yu2023SnapCCESS,
  title = {Ensemble deep learning of embeddings for clustering multimodal single-cell omics data},
  author = {Yu, Lijia and Liu, Chunlei and Yang, Jean Yee Hwa and Yang, Pengyi},
  journal = {Bioinformatics},
  year = {2023},
  volume = {39},
  number = {6},
  pages = {btad382},
  doi = {10.1093/bioinformatics/btad382},
  url = {https://doi.org/10.1093/bioinformatics/btad382}
}

License

SnapCCESS is distributed under the GPL-3 license.