Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/albarji/toy-diffusion
A toy implementation of a diffusion model for low-dimensional data
https://github.com/albarji/toy-diffusion
Last synced: about 1 month ago
JSON representation
A toy implementation of a diffusion model for low-dimensional data
- Host: GitHub
- URL: https://github.com/albarji/toy-diffusion
- Owner: albarji
- License: mit
- Created: 2023-05-02T14:51:32.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-06T09:48:09.000Z (about 1 year ago)
- Last Synced: 2023-12-06T11:10:42.488Z (about 1 year ago)
- Language: Jupyter Notebook
- Homepage:
- Size: 5.49 MB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Toy diffusion
This is an implementation of a toy diffusion process, able the generate samples from a learned 2-dimensional distribution. It is an alternative implementation of the experiment presented in Sohl-Dickstein et al paper on using diffusion models and deep networks to generate new samples for a given dataset.
A simple pytorch network learns to predict the noise component in a data sample. This is then used in a DDPM sampler to generate new samples from the distribution.
Here is an example of generation of samples for a 2D swiss roll distribution:
![alt text](swissroll_generation.gif "Swiss Roll generation")
## References
* [Sohl-Dickstein et al - Deep Unsupervised Learning using Nonequilibrium Thermodynamics](https://arxiv.org/pdf/1503.03585.pdf)
* [Ho et al - Denoising Diffusion Probabilistic Models](https://arxiv.org/pdf/2006.11239.pdf)
* [Nichol and Dhariwal – Improving Denoising Diffusion Probabilistic Models](https://arxiv.org/pdf/2102.09672.pdf)