ddim_post
Пост 3 — DDIM: детерминированный shortcut
Series 2, @fminxyz | 6 марта 2026, 19:30 MSK
1000 шагов → 50 шагов. 20× ускорение — та же модель, другой алгоритм.
DDPM генерирует картинки за 1000 итераций. Медленно. Но в 2020 году Song et al. поняли: проблема не в модели, а в способе семплирования.
DDPM — стохастический: каждый шаг добавляет случайный шум. Как пьяный, который бредёт домой: теоретически дойдёт, но зигзагами.
DDIM — детерминированный ODE. Та же нейросеть, но шагаем по другому уравнению. Никакого шума — чистая дифференциальная геометрия. Смотрите на анимации: DDPM петляет, DDIM идёт по прямой.
На видео: 5 траекторий из шума (★) к данным (жёлтые точки). Одинаковый старт, одинаковая модель — разные пути.
Математика одной формулы:
DDPM: x_{t-1} = μ(x_t) + σ_t · ε ← добавляем шум
DDIM: x_{t-1} = √α̅_{t-1} · x̂₀ + √(1-α̅_{t-1}) · direction
DDIM вычисляет “куда идти” через предсказанный x̂₀ — оценку чистой картинки из зашумлённой.
Бонус: раз путь детерминированный — он обратимый. Можно взять реальную картинку, закодировать в латентный шум, чуть изменить, декодировать обратно. Это основа image editing в Stable Diffusion.
В этом есть что-то от численных методов ОДУ. Метод Эйлера, Рунге-Кутты… Только вместо уравнений физики — score function обученной сети.
Серия “Диффузия” (6/5):
1 ✅ DDPM — учимся стирать
2 ✅ Score Matching — поле градиентов
→ 3 DDIM — детерминированный shortcut
4 Flow Matching — прямые траектории
5 CFG — управление без классификатора
#ML #диффузия #deeplearning
Длина: ~1650 символов
Файлы: ddim_trajectory_animation.mp4 (25с, 155KB)