Session 2 · Images · Diffusion, embodied
Human Diffusion Canvas
You are the denoiser. The words arrive, noise sits on the canvas, and step by step you commit what you're sure of — biggest shapes first, details last, a veil of noise thinning between rounds. When you finish, export the GIF and compare your trajectory with the machine's.
1 · The words (the prompt)
The model hears its words at every step. Keep yours in view the whole time.
2 · The step schedule
3 · Brush — it shrinks every step
Coarse steps get fat brushes and fine steps get thin ones. That is this activity's constraint, echoing a common denoising pattern rather than a rule every model follows.
4 · Round timer (optional)
No timer — the facilitator calls time.
5 · Commit
Undo works inside the current activity step. Locked rounds preserve your trajectory; unlike this activity, later model updates can still revise structure in the current representation.
6 · Export
Everything is built on this device — nothing uploads. Share only what you consent to share.
The canvas · 512 × 512 — the square many diffusion models denoise
Keyboard: focus the canvas, use arrow keys to move the cursor, hold Shift while moving to draw, press Space or Enter for a dot, and press Home to recenter.
How a round works
- Type the words. The facilitator says them; they're your conditioning.
- Draw what you're sure of. Fat brush, biggest shapes. Find them in the noise.
- Commit. A veil of noise falls over everything — thinner each time.
- Repeat, finer each round. After the last step there's no veil left. Export.
Setup — facilitator
The link carries the words, step count, and noise setting — paste it in chat and everyone starts from the same setup. Changing setup restarts the canvas.
What just happened — the map to real diffusion
| You, drawing | A diffusion model | |
|---|---|---|
| Starts from | A field of random noise | A field of random noise (in latent space) |
| The words | Said aloud, held in your head every round | The prompt, encoded once and applied at every step |
| One step | Commit marks so this activity preserves a trajectory | Predict an update to the current noisy representation |
| Between steps | A veil — the noise not yet resolved | Residual noise, on a fixed schedule |
| Order of work | A forced coarse-to-fine drawing sequence | Coarse structure often stabilizes before fine detail |
| Knows what it's making | Yes — you have the idea | No — it has statistics about images-with-these-words |
Where the analogy breaks — say this part out loud
You add. It removes.
You put marks onto the canvas. A diffusion model updates many values in its current image representation in parallel — often latent values rather than final pixels.
You mean. It matches.
You know what a cat is and want to draw one. The model has no idea and no wanting — only learned statistics about which pixel patterns co-occur with the words "a cat".
Your steps cost a minute. Its steps cost milliseconds.
You'll take 3–5 steps of a minute each. A model usually follows a longer automated noise schedule; the exact step count and speed vary by model and sampler.
Classroom run of show
- Set up once, share the link. Pick the step count, type the words, press Copy setup link, paste it in chat.
- Say the words. Everyone types them. Same words for the whole run — that's the conditioning.
- Step 1, about 60 seconds. Fat brush. Biggest shapes only. "Find them in the noise."
- Commit together. The veil falls. Point at the noise-remaining meter — it just dropped, on schedule.
- Repeat, finer each round. Brushes shrink automatically. The last step gets no veil.
- Export GIFs and regroup. Paste them into the Evidence Wall, watch a wall of human denoising trajectories — then open the Diffusion Step-Through Viewer and watch the machine run the same shape of process.
Field note