- This is forked from seqam-lab/bfvae
- These original changes can also be found on the branch original
- The main paper is here and the supplement is here
This is the project page for Bayes-Factor-VAE: Hierarchical Bayesian Deep Auto-Encoder Models forFactor Disentanglement.
The work was accepted by ICCV 2019 Oral.
[Paper Link].
Further instructions added by Sachin Salim
If you don't have the GPU drivers installed:
- Install correct driver for the GPU, see here
- After this file is installed, if you have a GPU be sure to install
conda forge cudnn
After installing the drivers:
- Install dependencies:
conda env create -f reqs.yaml - Activate conda env:
conda activate bfvae_env
- Download/synthesize dataset by
python src/setup_dataset.py --dataset <dataset> --save_dir <save_dir> - Currently supported datasets to be automatically downloaded/synthesized are:
- dsprites (Downloaded by script from here)
- latent2_0 (Synthesized)
- latent2_1 (Synthesized)
- If in Greatlakes HPC, load cuda module:
module load cuda cudnn - Navigate to the model folder:
cd src/bfvae<id>/ - Read
cmdlines.txtfor specific instructions on running various scripts - Eg: To train the model on dsprites, execute
python main.py --dataset dsprites --dset_dir <dset_dir>
- After the training, The training loss is saved in
records/ - Navigate to
cd src/and Executepython analyse_training.py --model bfvae<id> --train_filename <train_filename> - Pass the respective file inside
records/folder as thetrain_filename