Download README.md from n4ze3m/yatm-quickdraw-diffusion: direct link, hf CLI and curl.
- Browser
- Download file 3.15 kB
-
https://huggingface.co/n4ze3m/yatm-quickdraw-diffusion/resolve/main/README.md
- Command line
-
hf download hf://n4ze3m/yatm-quickdraw-diffusion/README.md
-
curl -L -o README.md https://huggingface.co/n4ze3m/yatm-quickdraw-diffusion/resolve/main/README.md
license: cc-by-4.0
tags:
- diffusion
- ddpm
- ddim
- onnx
- quickdraw
- image-generation
library_name: onnx
pipeline_tag: unconditional-image-generation
datasets:
- quickdraw
You Are the Model - Quick, Draw! diffusion
A tiny class-conditional diffusion model that draws 32x32 doodles, small enough to run a full 25-step DDIM sample in the browser.
It powers You Are the Model, a daily drawing puzzle where the player takes over the denoising loop: at each round you pick which noise prediction to apply, your choice is fed back into the real sampler, and a bad pick genuinely derails the drawing.
Model
| Architecture | class-conditional U-Net, epsilon prediction |
| Parameters | 1,929,313 (7.7 MB fp32) |
| Resolution | 32x32 grayscale, values in [-1, 1] |
| Classes | 24 (+1 null class for classifier-free guidance) |
| Noise schedule | cosine, 1000 train timesteps |
| Sampler | DDIM, 25 steps, guidance 3.0 |
| Trained | 60,000 steps, batch 256, AdamW, EMA 0.9995, bf16 |
| Hardware | NVIDIA GeForce RTX 3090, 1.23 h, about $0.167 |
Classes
fish, flower, house, sailboat, smiley face, star, umbrella, envelope, t-shirt, ice cream, apple, banana, ladder, lightning, mountain, pants, wine glass, eyeglasses, snowman, car, hand, crown, donut, camera
Files
| File | Purpose |
|---|---|
yatm_v2.onnx |
the browser asset - opset 17, dynamic batch |
yatm_v2.meta.json |
class list, sampler settings, parity numbers |
yatm_v2.abar.json |
cosine alpha-bar table, so the JS sampler matches exactly |
ema.pt |
EMA weights (PyTorch) |
samples.png |
fixed-seed sample sheet, one row per class |
eval.json |
classifier gate and guidance sweep |
metrics.jsonl |
training and validation curves |
config.resolved.json |
the exact resolved config and environment |
Inputs and outputs
x: float32 [batch, 1, 32, 32] noisy latent
t: int64 [batch] timestep, 0..999
y: int64 [batch] class index, or 24 for unconditional
-> eps: float32 [batch, 1, 32, 32]
Classifier-free guidance: run the batch twice (class and null) and combine with
eps = eps_null + w * (eps_class - eps_null).
Evaluation
A held-out CNN classifier (95.9% accurate on real test drawings) labels 100.0% of fixed-seed samples as the class they were conditioned on, at the best guidance scale of 3.0. Weakest class: fish at 100.0%.
Python and ONNX Runtime agree to 8.3e-02 maximum absolute difference over
a full 25-step sample, so the browser and the training code produce the
same picture from the same seed.
Dataset and attribution
Trained on the Google Quick, Draw!
dataset (numpy_bitmap 28x28 drawings, padded to 32x32), which is released under
CC BY 4.0 by Google Creative Lab.
12,000 drawings per class were downloaded, filtered for empty and
over-inked drawings and exact duplicates, then split deterministically.
This model is released under the same CC BY 4.0 licence.