SPACEL (SPatial Architecture Characterization by dEep Learning) is a Python package of deep-learning-based methods for ST data analysis. SPACEL consists of three modules:
- Spoint embedded a multiple-layer perceptron with a probabilistic model to deconvolute cell type composition for each spot on single ST slice.
- Splane employs a graph convolutional network approach and an adversarial learning algorithm to identify uniform spatial domains that are transcriptomically and spatially coherent across multiple ST slices.
- Scube automatically transforms the spatial coordinate systems of consecutive slices and stacks them together to construct a three-dimensional (3D) alignment of the tissue.
- Requirements
- Installation
- Tutorials
- Spoint tutorial: Deconvolution of cell types compostion on human brain Visium dataset
- Splane tutorial: Identify uniform spatial domain on human breast cancer Visium dataset
- Splane&Scube tutorial (1/2): Identify uniform spatial domain on human brain MERFISH dataset
- Splane&Scube tutorial (1/2): Alignment of consecutive ST slices on human brain MERFISH dataset
- Scube tutorial: Alignment of consecutive ST slices on mouse embryo Stereo-seq dataset
- Scube tutorial: 3D expression modeling with gaussian process regression
- SPACEL workflow (1/3): Deconvolution by Spoint on mouse brain ST dataset
- SPACEL workflow (2/3): Identification of spatial domain by Splane on mouse brain ST dataset
- SPACEL workflow (3/3): Alignment 3D tissue by Scube on mouse brain ST dataset
Read the documentation for more information.
- Fixed the conflict between optax version and phthon 3.8.
- Fixed a variable reference error in function
identify_spatial_domain. Thanks to @tobias-zehnde for the contribution.
- Fixed a bug regarding the similarity loss weight hyperparameter
simi_l, which in the previous version did not affect the loss value.
Note: The current version of SPACEL only supports Linux and MacOS, not Windows platform.
To install SPACEL, you need to install PyTorch with GPU support first. If you don't need GPU acceleration, you can just skip the installation for cudnn and cudatoolkit.
- Create conda environment for
SPACEL:
conda env create -f environment.yml
or
conda create -n SPACEL -c conda-forge -c default cudatoolkit=10.2 python=3.8 rpy2 r-base r-fitdistrplus
You must choose correct PyTorch, cudnn and cudatoolkit version dependent on your graphic driver version.
Note: If you want to run 3D expression GPR model in Scube, you need to install the Open3D python library first.
- Install
SPACEL:
pip install SPACEL
- Test if PyTorch for GPU available:
python
>>> import torch
>>> torch.cuda.is_available()
If these command line have not return True, please check your gpu driver version and cudatoolkit version. For more detail, look at CUDA Toolkit Major Component Versions.