← Open Source
konpatp

diffae

Official implementation of Diffusion Autoencoders.

Model DevelopmentArchitectureJupyter Notebook
Open on GitHub
Momentum
+0stars in 24 hours0.0%
974
Stars
159
Forks
+0
This week
3
Contributors
Created 2022-01-11 · Updated 2026-10-06 · #12294 today
Top developers
konpatpnessessencechenxwh

konpatp/diffae is ranked 12,294 with 974 stars.

Same-category comparison

konpatp/diffae is ranked 12,294 among these 8 peers; salesforce/OmniXAI is ranked 12,296.

Same-category comparison
NameRankMetrics
microsoft/Samba12,268
Language:
Python
Stars:
978
Forks:
52
Description:
[ICLR 2025] Samba: Simple Hybrid State Space Models for Efficient Unlimited Context Language Modeling.
timqian/bambot12,270
Language:
TypeScript
Stars:
978
Forks:
96
Description:
Play with open source, low-cost AI robots with ease 🤖.
jacobgil/keras-dcgan12,273
Language:
Python
Stars:
977
Forks:
402
Description:
Keras implementation of Deep Convolutional Generative Adversarial Networks.
facebookresearch/localrf12,279
Language:
Python
Stars:
976
Forks:
60
Description:
An algorithm for reconstructing the radiance field of a large-scale scene from a single casually captured video.
salesforce/OmniXAI12,296
Language:
Jupyter Notebook
Stars:
974
Forks:
108
Description:
OmniXAI: A Library for eXplainable AI.
PlexPt/chatgpt-corpus12,298
Stars:
973
Forks:
146
ProHiryu/bert-chinese-ner12,301
Language:
Python
Stars:
972
Forks:
274
YehLi/xmodaler12,302
Language:
Python
Stars:
972
Forks:
104
Description:
X-modaler is a versatile and high-performance codebase for cross-modal analytics(e.g., image captioning, video captioning, vision-language pre-training, visual question answering, visual commonsense reasoning, and cross-modal retrieval).
Key parameters and specifications
Key parameters and specifications
ParameterValue
LanguageJupyter Notebook
CategoryModel Development
SubcategoryArchitecture
KeywordsDiffusion
Stars974
Forks159
Contributors3
Created date2022-01-11
Updated date2026-10-06
Stars in 1 day0
Stars in 7 days0
Rank12,294
Previous rank12,222
Rank change-72
7-day stars rank13,352
Previous 7-day stars rank13,364
7-day stars rank change12
Total stars rank11,382
Previous total stars rank11,366
Total stars rank change-16
CountryUSA
README summary

Official implementation of Diffusion Autoencoders A CVPR 2022 (ORAL) paper (paper, site, 5-min video): Usage Note: Since we expect a lot of changes on the codebase, please fork the repo before using. Prerequisites See Quick start A jupyter notebook. For unconditional generation: For manipulation: For interpolation: For autoencoding: Aligning your own images: 1. Result images will be available in directory Original in directory Aligned with Using Checkpoints We provide checkpoints for the following models: 1. DDIM: **FFHQ128** (72M, 130M

), **Bedroom128**, **Horse128** 2. DiffAE (autoencoding only): **FFHQ256**, **FFHQ128** (72M, 130M), **Bedroom128**, **Horse128** 3. DiffAE (with latent DPM, can sample): **FFHQ256**, **FFHQ128**, **Bedroom128**, **Horse128** 4. DiffAE's classifiers (for manipulation): **FFHQ256's latent on CelebAHQ**, **FFHQ128's latent on CelebAHQ** Checkpoints ought to be put into a separate directory . Download the checkpoints and put them into directory. It should look like this: LMDB Datasets We do not own any of the following datasets. We provide the LMDB ready-to-use dataset for the sake

of convenience. FFHQ CelebAHQ **Broken links** Note: I'm trying to recover the following links. CelebA LSUN Bedroom LSUN Horse The directory tree should be: You can also download from the original sources, and use our provided codes to package them as LMDB files. Original sources for each dataset is as follows: FFHQ ( CelebAHQ ( CelebA ( LSUN ( The conversion codes are provided as: Google drive: Training We provide scripts for training & evaluate DDIM and DiffAE (including latent DPM) on the following datasets

: FFHQ128, FFHQ256, Bedroom128, Horse128, Celeba64 (D2C's crop). Usually, the evaluation results (FID's) will be available in directory. Note: Most experiment requires at least 4x V100s during training the DPM models while requiring 1x 2080Ti during training the accompanying latent DPM. **FFHQ128** A classifier (for manipulation) can be trained using: **FFHQ256** We only trained the DiffAE due to high computation cost. After the task is done, you need to train the latent DPM (requiring only 1x 2080Ti) A classifier (for manipulation

) can be trained using: **Bedroom128** **Horse128** **Celeba64** This experiment can be run on 2080Ti's.

Frequently asked questions

How many stars and forks are recorded?

konpatp/diffae has 974 stars and 159 forks.

What is the repository rank?

konpatp/diffae is ranked 12,294.

What language and category are recorded?

konpatp/diffae has 974 stars, uses Jupyter Notebook and belongs to Model Development.

Which repository is closest in rank?

konpatp/diffae is compared with salesforce/OmniXAI, ranked 12,296 with 974 stars.

README

Official implementation of Diffusion Autoencoders

A CVPR 2022 (ORAL) paper (paper, site, 5-min video):

@inproceedings{preechakul2021diffusion,
      title={Diffusion Autoencoders: Toward a Meaningful and Decodable Representation}, 
      author={Preechakul, Konpat and Chatthee, Nattanat and Wizadwongsa, Suttisak and Suwajanakorn, Supasorn},
      booktitle={IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}, 
      year={2022},
}

Usage

⚙️ Try a Colab walkthrough:

🤗 Try a web demo:

Note: Since we expect a lot of changes on the codebase, please fork the repo before using.

Prerequisites

See requirements.txt

pip install -r requirements.txt

Quick start

A jupyter notebook.

For unconditional generation: sample.ipynb

For manipulation: manipulate.ipynb

For interpolation: interpolate.ipynb

For autoencoding: autoencoding.ipynb

Aligning your own images:

  1. Put images into the imgs directory
  2. Run align.py (need to pip install dlib requests)
  3. Result images will be available in imgs_align directory

Original in imgs directory

Aligned with align.py

Using manipulate.ipynb

Checkpoints

We provide checkpoints for the following models:

  1. DDIM: FFHQ128 (72M, 130M), Bedroom128, Horse128
  2. DiffAE (autoencoding only): FFHQ256, FFHQ128 (72M, 130M), Bedroom128, Horse128
  3. DiffAE (with latent DPM, can sample): FFHQ256, FFHQ128, Bedroom128, Horse128
  4. DiffAE's classifiers (for manipulation): FFHQ256's latent on CelebAHQ, FFHQ128's latent on CelebAHQ

Checkpoints ought to be put into a separate directory checkpoints. Download the checkpoints and put them into checkpoints directory. It should look like this:

checkpoints/
- bedroom128_autoenc
    - last.ckpt # diffae checkpoint
    - latent.ckpt # predicted z_sem on the dataset
- bedroom128_autoenc_latent
    - last.ckpt # diffae + latent DPM checkpoint
- bedroom128_ddpm
- ...

LMDB Datasets

We do not own any of the following datasets. We provide the LMDB ready-to-use dataset for the sake of convenience.

Broken links

Note: I'm trying to recover the following links.

The directory tree should be:

datasets/
- bedroom256.lmdb
- celebahq256.lmdb
- celeba.lmdb
- ffhq256.lmdb
- horse256.lmdb

You can also download from the original sources, and use our provided codes to package them as LMDB files. Original sources for each dataset is as follows:

The conversion codes are provided as:

data_resize_bedroom.py
data_resize_celebhq.py
data_resize_celeba.py
data_resize_ffhq.py
data_resize_horse.py

Google drive: https://drive.google.com/drive/folders/1abNP4QKGbNnymjn8607BF0cwxX2L23jh?usp=sharing

Training

We provide scripts for training & evaluate DDIM and DiffAE (including latent DPM) on the following datasets: FFHQ128, FFHQ256, Bedroom128, Horse128, Celeba64 (D2C's crop). Usually, the evaluation results (FID's) will be available in eval directory.

Note: Most experiment requires at least 4x V100s during training the DPM models while requiring 1x 2080Ti during training the accompanying latent DPM.

FFHQ128

# diffae
python run_ffhq128.py
# ddim
python run_ffhq128_ddim.py

A classifier (for manipulation) can be trained using:

python run_ffhq128_cls.py

FFHQ256

We only trained the DiffAE due to high computation cost. This requires 8x V100s.

sbatch run_ffhq256.py

After the task is done, you need to train the latent DPM (requiring only 1x 2080Ti)

python run_ffhq256_latent.py

A classifier (for manipulation) can be trained using:

python run_ffhq256_cls.py

Bedroom128

# diffae
python run_bedroom128.py
# ddim
python run_bedroom128_ddim.py

Horse128

# diffae
python run_horse128.py
# ddim
python run_horse128_ddim.py

Celeba64

This experiment can be run on 2080Ti's.

# diffae
python run_celeba64.py
Nearby in the ranking
Similar items