# Математика диффузионных моделей: от стохастических процессов до Stable Diffusion

Источник: https://www.youtube.com/watch?v=vBv7Mf1zsg8
Канал: Stanford Online
Опубликовано: 06.05.2024

---

## Развитие диффузионных моделей: от стохастических процессов к эффективному генеративному дизайну
[[JUMP:0:06]]

Лекция 17 курса Stanford CS236, проведенная Stanford Online, посвящена глубоким генеративным моделям, а именно — интерпретации диффузионных процессов через призму вариационных автокодировщиков (VAE) и стохастических дифференциальных уравнений (SDE). Основная идея заключается в том, что обучение диффузионной модели эквивалентно обучению последовательности денойзеров, которые восстанавливают структуру данных из шума.

### 📉 От дискретных шагов к непрерывному времени
[[JUMP:5:51]]

Традиционное представление DDPM (Denoising Diffusion Probabilistic Models) подразумевает дискретный процесс с фиксированным количеством шагов (обычно 1000). Однако переход к непрерывному времени позволяет рассматривать диффузию как процесс, индексируемый переменной $t \in [0, T]$.

*   **Стохастическое описание:** В этой парадигме процесс добавления шума описывается через SDE, где изменение данных $dx_t$ определяется дрейфом (drift) и бесконечно малым количеством шума.
*   **Обратный процесс:** Реверс времени позволяет идти от чистого шума к данным. Ключевым открытием является то, что обратный процесс также описывается SDE, в котором появляется дополнительный член — «дрейф», соответствующий функции скора (score function) зашумленного распределения данных.
*   **Связь с VAE:** Оптимизация ELBO (Evidence Lower Bound) в VAE-структуре математически эквивалентна обучению последовательности денойзеров (score-matching), что объединяет теорию VAE и диффузионных моделей.

### ⚙️ Эквивалентность SDE и ODE
[[JUMP:26:24]]

Важным теоретическим результатом является возможность преобразования диффузионного процесса в систему с полностью детерминированной динамикой — обыкновенное дифференциальное уравнение (ODE).

1.  **Нормализующие потоки:** Преобразование SDE в ODE превращает модель в бесконечно глубокий «нормализующий поток» (normalizing flow), где траектории частиц не пересекаются, что обеспечивает инвертируемость преобразования.
2.  **Вычислительные преимущества:** Поскольку для решения ODE существует 50-летняя история развития численных методов, использование этих инструментов позволяет значительно ускорить генерацию, используя адаптивный размер шага и минимизируя численные ошибки.
3.  **Вычисление правдоподобия:** В отличие от стандартных диффузионных моделей, ODE-формулировка позволяет точно вычислять правдоподобие данных, отслеживая изменение объема вдоль траектории.

### 🚀 Методы ускорения и генерация
[[JUMP:48:02]]

Для практического применения исследователи используют несколько подходов к ускорению работы моделей:

*   **DDIM:** Метод «грубой» дискретизации времени, позволяющий делать большие «прыжки» в процессе генерации, сокращая количество шагов с 1000 до 30.
*   **Прогрессивная дистилляция:** Обучение «модели-студента», которая за один шаг выполняет работу, требующую нескольких шагов «модели-учителя», что позволяет довести генерацию до 2–8 шагов при сохранении высокого качества.
*   **Параллельные вычисления:** Использование нескольких GPU для вычисления сегментов траектории одновременно, что позволяет сократить wall-clock время генерации.

### 🌍 Latent Diffusion и контекстное управление
[[JUMP:56:22]]

Современные модели, такие как Stable Diffusion от Stability AI, используют архитектуру Latent Diffusion Models (LDM).

*   **Работа в латентном пространстве:** Вместо прямой работы с пикселями, модель сначала кодирует данные в низкоразмерное латентное пространство (используя VAE), а диффузия происходит уже внутри этого пространства. Это критически ускоряет обучение и позволяет применять диффузию к любым модальностям, включая текст.
*   **Управляемая генерация (Guidance):** Если необходимо генерировать изображения по конкретному условию (текст, класс), используется либо классификатор, градиенты которого добавляются к функции скора (на основе правила Байеса), либо метод **Classifier-Free Guidance**.
    *   *Механизм Classifier-Free:* Обучаются две модели — условная и безусловная. В процессе генерации результат смещается в сторону условной модели, что позволяет избежать обучения отдельных классификаторов и повысить качество изображений.