Home

Awesome

trVAE_reproducibility

<img align="center" src="./sketch.png?raw=true">

Getting Started

cd scripts/
python DataDownloader.py
python ModelTrainer.py all

Then you can run each notebook and reproduce the results.

All datasets are available in this drive directory.

Running scripts

You can simply train each network with a specific dataset with the following scripts:

Train trVAE with Kang or Haber dataset

python -m scripts.train_trVAE kang[haber] 

Train DCtrVAE with Morpho-MNIST or CelebA dataset

python -m scripts.train_DCtrVAE mnist[celeba] 

Train CVAE with Kang or Haber dataset

python -m scripts.train_cvae kang[haber] 

Train CycleGAN with Kang or Haber dataset

python -m scripts.train_cyclegan kang[haber]

Train MMD-CVAE with Kang or Haber dataset

python -m scripts.train_mdcvae kang[haber]

Train SAUCIE with Kang or Haber dataset

python -m scripts.train_saucie kang[haber]

Train scGen with Kang or Haber dataset

python -m scripts.train_scGen kang[haber]

Train scVI with Kang or Haber dataset

python -m scripts.train_scVI kang[haber]

Table of Notebooks

Data Analysis

Studynotebook path
Haber et. alJupyter Notebooks/Haber.ipynb
Kang et. alJupyter Notebooks/Kang.ipynb
CelebAJupyter Notebooks/CelebA.ipynb

Paper Plots

Figuresnotebook path
Method Comparison - Haber et. alJupyter Notebooks/methodComparison-Haber.ipynb
Method Comparison - Kang et. alJupyter Notebooks/methodComparison-Kang.ipynb
Runtime Comparison - Kang et. alJupyter Notebooks/Time.ipynb
Simulation Response - Kang et. alJupyter Notebooks/BoxPlots_StackedViolins - Kang.ipynb

To run the notebooks and scripts you need following packages :

tensorflow, scanpy, numpy, matplotlib, scipy, wget.