Repository for the "Gotta Go Fast When Generating Data with Score-Based Models" paper

Overview

Gotta Go Fast When Generating Data with Score-Based Models

This repo contains the official implementation for the paper Gotta Go Fast When Generating Data with Score-Based Models, which shows how to generate data as fast as possible with score-based models using a well-designed SDE solver. See the blog post for more details.


This code is a heavy modification of the Generative Modeling through Stochastic Differential Equations repository.

To run the experiments in the paper

See the requirements. Change the settings and folders in https://github.com/AlexiaJM/score_sde_fast_sampling/blob/main/experiments.sh and run parts of the script to run the CIFAR-10, LSUN-Church, and FFHQ experiments.

The SDE solver can be found here and the loop here.

For general usage

Please refer to the original code.

Pretrained checkpoints

https://drive.google.com/drive/folders/10pQygNzF7hOOLwP3q8GiNxSnFRpArUxQ?usp=sharing

References

If you find the code useful for your research, please consider citing

@article{jolicoeurmartineau2021gotta,
      title={Gotta Go Fast When Generating Data with Score-Based Models}, 
      author={Alexia Jolicoeur-Martineau and Ke Li and R{\'e}mi Pich{\'e}-Taillefer and Tal Kachman and Ioannis Mitliagkas},
      journal={arXiv preprint arXiv:2105.14080},
      year={2021}
}

and

@inproceedings{
  song2021scorebased,
  title={Score-Based Generative Modeling through Stochastic Differential Equations},
  author={Yang Song and Jascha Sohl-Dickstein and Diederik P Kingma and Abhishek Kumar and Stefano Ermon and Ben Poole},
  booktitle={International Conference on Learning Representations},
  year={2021},
  url={https://openreview.net/forum?id=PxTIG12RRHS}
}

Official theme song can be found here: https://soundcloud.com/emyaze/gotta-go-fast.

Samples (see the paper for more samples)

You might also like...
Repository for the COLING 2020 paper "Explainable Automated Fact-Checking: A Survey."

Explainable Fact Checking: A Survey This repository and the accompanying webpage contain resources for the paper "Explainable Fact Checking: A Survey"

Repository relating to the CVPR21 paper TimeLens: Event-based Video Frame Interpolation
Repository relating to the CVPR21 paper TimeLens: Event-based Video Frame Interpolation

TimeLens: Event-based Video Frame Interpolation This repository is about the High Speed Event and RGB (HS-ERGB) dataset, used in the 2021 CVPR paper T

This repository is an open-source implementation of the ICRA 2021 paper: Locus: LiDAR-based Place Recognition using Spatiotemporal Higher-Order Pooling.
This repository is an open-source implementation of the ICRA 2021 paper: Locus: LiDAR-based Place Recognition using Spatiotemporal Higher-Order Pooling.

Locus This repository is an open-source implementation of the ICRA 2021 paper: Locus: LiDAR-based Place Recognition using Spatiotemporal Higher-Order

This repository holds the code for the paper "Deep Conditional Gaussian Mixture Model forConstrained Clustering".

Deep Conditional Gaussian Mixture Model for Constrained Clustering. This repository holds the code for the paper Deep Conditional Gaussian Mixture Mod

CVPR 2021 - Official code repository for the paper: On Self-Contact and Human Pose.
CVPR 2021 - Official code repository for the paper: On Self-Contact and Human Pose.

selfcontact This repo is part of our project: On Self-Contact and Human Pose. [Project Page] [Paper] [MPI Project Page] It includes the main function

CVPR 2021 - Official code repository for the paper: On Self-Contact and Human Pose.
CVPR 2021 - Official code repository for the paper: On Self-Contact and Human Pose.

SMPLify-XMC This repo is part of our project: On Self-Contact and Human Pose. [Project Page] [Paper] [MPI Project Page] License Software Copyright Lic

This repository contains the code for the paper
This repository contains the code for the paper "Hierarchical Motion Understanding via Motion Programs"

Hierarchical Motion Understanding via Motion Programs (CVPR 2021) This repository contains the official implementation of: Hierarchical Motion Underst

Official repository for the paper "Going Beyond Linear Transformers with Recurrent Fast Weight Programmers"

Recurrent Fast Weight Programmers This is the official repository containing the code we used to produce the experimental results reported in the pape

Comments
  • Fast sampling get worse PSNR

    Fast sampling get worse PSNR

    Hi Alexia, Thanks for your constructive work on score-based models.

    I create this issue also because I met several problems when implementing it:

    • When I use your AdaptivePredictor from sde_sampling_torch.py for task like Super Resolution (e.g. SR3), I get a much worse PSNR (from 32dB to 22dB).

      • Is this expected? It seems that skip steps when sampling always introduce large errors which hurt PSNR.

      • This error seems to be bigger when the image size increase? I got unsatisfying images from a pretrained (VE) model for generating Monet paint (256*256), but I guess maybe I have to take care with some hyper-parameters :)

    • This AdaptivePredictor is a improved solver for the reverse SDE, if my understanding is correct. In this case, could we use a corrector to correct the errors from last question? (I tried with 1 step corrector along with each AdaptivePredictor and the PSNR is improved to 25dB) Have you done experiment with a corrector, or you find that the it not worthy since it slow down the sampling significantly?

    opened by yuanzhi-zhu 3
  • pytorch implementation and ODE

    pytorch implementation and ODE

    Hi, thanks for your great works.

    Do you have any plan to implement the codes with Pytorch? And can this method be applied as an ODE solver where the forward and reverse processes are deterministic?

    opened by gwang-kim 2
  • Test on VE settings

    Test on VE settings

    Hi, I really like your work and I wanted to use your method on VE settings.

    I have tried this code on sub-VP settings, but have trouble under VE settings. Do you have any helpful comments on how I should use your code to sample from a pretrained VE model?

    (Specifically, I would like to evaluate this code on the configuration "cifar10_deep_continuous_ve.py".)

    Thanks!

    opened by chen-hao-chao 2
  • Running your code on FFHQ 1024

    Running your code on FFHQ 1024

    Thanks for sharing your code, I am trying to compare the performance of your code to Songs on the FFHQ1024x1024 data. You seem to have a config file ffhq.py that might do that. I am not sure how to test this, I also see the need for ffhq-r10.tfrecords and not sure on the checkpoint and options for the call.

    Can you please provide suggestions? thanks

    opened by yaseryacoob 4
Owner
Alexia Jolicoeur-Martineau
I'm a researcher in statistics and machine learning. I am particularly interested in GANs, denoising score-matching, and statistical divergences/metrics.
Alexia Jolicoeur-Martineau
Home repository for the Regularized Greedy Forest (RGF) library. It includes original implementation from the paper and multithreaded one written in C++, along with various language-specific wrappers.

Regularized Greedy Forest Regularized Greedy Forest (RGF) is a tree ensemble machine learning method described in this paper. RGF can deliver better r

RGF-team 364 Dec 28, 2022
Open source repository for the code accompanying the paper 'Non-Rigid Neural Radiance Fields Reconstruction and Novel View Synthesis of a Deforming Scene from Monocular Video'.

Non-Rigid Neural Radiance Fields This is the official repository for the project "Non-Rigid Neural Radiance Fields: Reconstruction and Novel View Synt

Facebook Research 296 Dec 29, 2022
A code repository associated with the paper A Benchmark for Rough Sketch Cleanup by Chuan Yan, David Vanderhaeghe, and Yotam Gingold from SIGGRAPH Asia 2020.

A Benchmark for Rough Sketch Cleanup This is the code repository associated with the paper A Benchmark for Rough Sketch Cleanup by Chuan Yan, David Va

null 33 Dec 18, 2022
Repository for the paper "PoseAug: A Differentiable Pose Augmentation Framework for 3D Human Pose Estimation", CVPR 2021.

PoseAug: A Differentiable Pose Augmentation Framework for 3D Human Pose Estimation Code repository for the paper: PoseAug: A Differentiable Pose Augme

Pyjcsx 328 Dec 17, 2022
Offcial repository for the IEEE ICRA 2021 paper Auto-Tuned Sim-to-Real Transfer.

Offcial repository for the IEEE ICRA 2021 paper Auto-Tuned Sim-to-Real Transfer.

null 47 Jun 30, 2022
Code repository for paper `Skeleton Merger: an Unsupervised Aligned Keypoint Detector`.

Skeleton Merger Skeleton Merger, an Unsupervised Aligned Keypoint Detector. The paper is available at https://arxiv.org/abs/2103.10814. A map of the r

北海若 48 Nov 14, 2022
Official repository for the ICLR 2021 paper Evaluating the Disentanglement of Deep Generative Models with Manifold Topology

Official repository for the ICLR 2021 paper Evaluating the Disentanglement of Deep Generative Models with Manifold Topology Sharon Zhou, Eric Zelikman

Stanford Machine Learning Group 34 Nov 16, 2022
The repository offers the official implementation of our paper in PyTorch.

Cloth Interactive Transformer (CIT) Cloth Interactive Transformer for Virtual Try-On Bin Ren1, Hao Tang1, Fanyang Meng2, Runwei Ding3, Ling Shao4, Phi

Bingoren 49 Dec 1, 2022
Repository of our paper 'Refer-it-in-RGBD' in CVPR 2021

Refer-it-in-RGBD This is the repository of our paper 'Refer-it-in-RGBD: A Bottom-up Approach for 3D Visual Grounding in RGBD Images' in CVPR 2021 Pape

Haolin Liu 34 Nov 7, 2022
Official code repository of the paper Learning Associative Inference Using Fast Weight Memory by Schlag et al.

Learning Associative Inference Using Fast Weight Memory This repository contains the offical code for the paper Learning Associative Inference Using F

Imanol Schlag 18 Oct 12, 2022