theislab / dca

Deep count autoencoder for denoising scRNA-seq data
Apache License 2.0
247 stars 71 forks source link

Deep count autoencoder for denoising scRNA-seq data

A deep count autoencoder network to denoise scRNA-seq data and remove the dropout effect by taking the count structure, overdispersed nature and sparsity of the data into account using a deep autoencoder with zero-inflated negative binomial (ZINB) loss function.

See our manuscript and tutorial for more details.

Installation

pip

For a traditional Python installation of the count autoencoder and the required packages, use

$ pip install dca

conda

Another approach for installing count autoencoder and the required packages is to use Conda (most easily obtained via the Miniconda Python distribution). Afterwards run the following commands.

$ conda install -c bioconda dca

Usage

You can run the autoencoder from the command line:

dca matrix.csv results

where matrix.csv is a CSV/TSV-formatted raw count matrix with genes in rows and cells in columns. Cell and gene labels are mandatory.

Results

Output folder contains the main output file (representing the mean parameter of ZINB distribution) as well as some additional matrices in TSV format:

Use -h option to see all available parameters and defaults.

Hyperparameter optimization

You can run the autoencoder with --hyper option to perform hyperparameter search.