Decoding Single-Cell Omics of Perturbation Responses Using DeSCOPE
DeSCOPE is a single-cell perturbation prediction framework designed for scRNA-seq, scATAC-seq, and general single-cell–level perturbation modeling. It is built on a conditional Variational Autoencoder (cVAE) architecture, in which perturbed genes are represented by embeddings derived from the ESM2 protein language model and used as conditioning information to model cellular responses to genetic perturbations. Through this design, DeSCOPE delivers strong predictive performance in challenging scenarios, including unseen genes and unseen cell types.
Installation
Environment Setup
Step 1: Set up a python environment
We recommend creating a virtual Python environment with Anaconda:
- Required version:
python >= 3.10
conda create -n descope python=3.10
conda activate descope
Step 2: Install pytorch
Install PyTorch based on your system configuration. Refer to PyTorch installation instructions.
For the exact command, for example:
- You may choose any version to install, but make sure the PyTorch version is not too old.
- We recommend
torch ≥ 2.6.
# Installation Example: torch v2.7.1
# CUDA 11.8
pip install torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu118
# CUDA 12.6
pip install torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu126
# CUDA 12.8
pip install torch==2.7.1 torchvision==0.22.1 torchaudio==2.7.1 --index-url https://download.pytorch.org/whl/cu128
Step 3: Install deepspeed (optional)
Install DeepSpeed based on your system configuration. Refer to DeepSpeed installation instructions.
For the exact command, for example:
pip install deepspeed
Step 4: Install descope and dependencies
To install descope, run:
pip install descopex
Or install from github:
git clone https://github.com/Peg-Wu/DeSCOPE.git
cd DeSCOPE
pip install [-e] .
Check if installation was successful:
import descope
descope.welcome()
Datasets Zoo
scRNA-seq
| Paper | Dataset | Download Link |
|---|---|---|
| Replogle et al., 2022 | K562_GWPS (61.3GB) | download |
| Replogle et al., 2022 | K562_ESSENTIAL (9.9GB) | download |
| Replogle et al., 2022 | RPE1 (8.1GB) | download |
| Nadig et al., 2025 | HEPG2 (5.2GB) | download |
| Nadig et al., 2025 | JURKAT (8.7GB) | download |
| Norman et al., 2019 | Norman_K562 | download |
- The H1 dataset was obtained from the Virtual Cell Challenge 2025. (download)
- NOTE: ESM2 gene embeddings can also be obtained from here.
scATAC-seq
- Cell-by-cCRE / Cell-by-peak: Human-scATAC-Corpus
Acknowledgements
We sincerely thank the authors of following open-source projects:
Click to expand
Star History
Metadata
Release files for descopex 0.0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| descopex-0.0.7.tar.gz | 13.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| descopex-0.0.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.7 MB
Release files / descopex-0.0.7.tar.gz
| Download URL | descopex-0.0.7.tar.gz |
|---|---|
| Size | 13.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
205856496c994d22e4c54412f2c1eac3926faae6957824c8e1a0f200d41648bc
|
|
BLAKE2b-256 checksum How to use checksums |
59faf599a5023a6b9baeda524c9fcb0910775e703577b07a5ef49f84b10bc545
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.8
|
Release files / descopex-0.0.7-py3-none-any.whl
| Download URL | descopex-0.0.7-py3-none-any.whl |
|---|---|
| Size | 40.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a68e6d4cccaf92d9f310aa64c9c10d9095403bd8f66fd950ab6fc835c135ce81
|
|
BLAKE2b-256 checksum How to use checksums |
2f9d733518a2c6a72420dd9f6c4d280f447995266f67b62ac219e8fb789d7322
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.8
|