Диффузионная модель¶
Диффузионная модель — это класс вероятностных генеративных моделей машинного обучения, которые постепенно преобразуют случайный шум в структурированные данные (изображения, аудио, видео, текст) путём обращения во времени процесса постепенного добавления шума. Диффузионные модели лежат в основе многих современных систем синтеза изображений по текстовому описанию, таких как Stable Diffusion, DALL-E (разработчик OpenAI) и Midjourney.
¶Принцип работы
Диффузионные модели основаны на двух взаимосвязанных процессах: прямом (процесс диффузии) и обратном (процесс генерации).
¶Прямой процесс (диффузия)
На этапе обучения модель наблюдает за процессом постепенного разрушения данных. На каждом шаге к исходному изображению (или другому типу данных) добавляется небольшое количество гауссовского шума. После достаточно большого количества шагов (обычно от нескольких сотен до нескольких тысяч) исходные данные полностью превращаются в чистый случайный шум, не содержащий никакой информации об исходном образце. Этот процесс является марковским — состояние на каждом следующем шаге зависит только от состояния на предыдущем.
¶Обратный процесс (генерация)
Цель диффузионной модели — научиться обращать процесс диффузии вспять. Модель обучается предсказывать, какой шум был добавлен на каждом шаге, чтобы, начиная с чистого случайного шума, последовательно удалять его, восстанавливая структуру данных. Обратный процесс также является марковским. На практике модель представляет собой нейронную сеть (чаще всего архитектуры U-Net), которая на вход получает зашумлённое изображение и номер шага, а на выходе выдаёт оценку шума, который нужно удалить.
¶История
Идея диффузионных моделей была впервые предложена в 2015 году в работе «Deep Unsupervised Learning using Nonequilibrium Thermodynamics» (Ясмин Сонг и Эрман Эрхан). Однако их практический потенциал был раскрыт в 2020 году, когда группа исследователей из Калифорнийского университета в Беркли (Джонатан Хо, Аджай Джайн, Питер Аббил) опубликовала статью «Denoising Diffusion Probabilistic Models» (DDPM). В этой работе была предложена эффективная архитектура (U-Net) и процедура обучения, позволившие диффузионным моделям достичь качества генерации изображений, сопоставимого с лучшими образцами генеративно-состязательных сетей (GAN).
Дальнейшее развитие связано с работами по ускорению генерации (Denoising Diffusion Implicit Models, DDIM), интеграцией с текстовыми эмбеддингами (CLIP) и разработкой латентных диффузионных моделей (LDM), которые выполняют процесс диффузии не в пространстве пикселей, а в сжатом латентном пространстве, что значительно снижает вычислительные затраты. Ключевой работой в этом направлении стала статья «High-Resolution Image Synthesis with Latent Diffusion Models» (Робин Ромбах и др., 2021), на основе которой создана открытая модель Stable Diffusion.
¶Классификация
Диффузионные модели можно классифицировать по нескольким признакам.
¶По типу пространства
- Пиксельные диффузионные модели — процесс диффузии и обратный процесс выполняются непосредственно в пространстве пикселей (например, DDPM). Требуют больших вычислительных ресурсов для генерации изображений высокого разрешения.
- Латентные диффузионные модели — процесс выполняется в сжатом латентном пространстве, полученном с помощью предварительно обученного автоэнкодера (например, VQ-VAE). Это позволяет генерировать изображения высокого разрешения с меньшими затратами. К этому классу относится Stable Diffusion.
¶По типу шума
- Гауссовские диффузионные модели — используют аддитивный гауссовский шум. Наиболее распространённый и изученный тип.
- Дискретные диффузионные модели — работают с дискретными данными (например, текст, категориальные признаки). Шум добавляется путём случайного изменения категорий (маскирование или замена на случайный токен).
¶По способу управления
- Безусловные модели — генерируют данные без каких-либо условий (например, случайное изображение из обучающего распределения).
- Условные модели — генерация происходит при задании дополнительной информации: текстового описания, класса объекта, изображения-референса или семантической карты. Условие подаётся на вход модели (например, через механизм кросс-внимания).
¶Архитектура
Основной архитектурой для диффузионных моделей изображений является U-Net. Она состоит из энкодера (последовательное понижение разрешения) и декодера (последовательное повышение разрешения) с пропускными соединениями между слоями одинакового разрешения. Это позволяет сети сохранять как глобальный контекст, так и локальные детали.
Для учёта временного шага в сети используются позиционные кодировки (синусоидальные или обучаемые), которые подаются на каждый блок сети. В условных моделях (например, Stable Diffusion) используется механизм кросс-внимания, который позволяет модели «смотреть» на текстовые эмбеддинги, полученные с помощью языковой модели (например, CLIP или T5).
¶Применение
¶Генерация изображений
Наиболее известное применение. Модели позволяют создавать реалистичные или художественные изображения по текстовому описанию, редактировать существующие изображения (inpainting, outpainting), изменять стиль, увеличивать разрешение (super-resolution).
¶Генерация видео
Диффузионные модели применяются для синтеза видео (например, модели Video Diffusion, Stable Video Diffusion). Процесс генерации может быть как безусловным, так и управляемым текстом или начальным кадром.
¶Генерация аудио
Используются для синтеза речи, музыки и звуковых эффектов. Примеры: AudioLDM, MusicGen (разработчик Meta — организация признана экстремистской и запрещена в РФ).
¶Генерация трёхмерных объектов
Модели, такие как DreamFusion и Point-E, позволяют генерировать 3D-модели по текстовому описанию или изображению.
¶Биология и химия
Диффузионные модели применяются для генерации молекулярных структур (например, модели для открытия новых лекарств) и предсказания конформаций белков.
¶Преимущества и недостатки
¶Преимущества
- Высокое качество генерации, часто превосходящее GAN.
- Хорошая способность к моделированию сложных многомодальных распределений.
- Отсутствие режимного коллапса (проблемы, характерной для GAN).
- Возможность точного управления генерацией через условия.
- Относительная стабильность обучения по сравнению с GAN.
¶Недостатки
- Медленная генерация: требуется множество последовательных шагов (от 20 до 1000) для получения одного образца.
- Высокие вычислительные затраты как на обучение, так и на инференс.
- Сложность настройки гиперпараметров (количество шагов, расписание шума).
- Тенденция к генерации излишне гладких или «средних» изображений при недостаточном количестве шагов.
¶Связь с другими моделями
Диффузионные модели тесно связаны с вариационными автоэнкодерами (VAE) — их можно рассматривать как VAE с фиксированным, заранее определённым процессом кодирования (добавление шума). Они также связаны с нормализующими потоками и моделями на основе оценки баллов (score-based models), которые используют градиент логарифмической плотности данных для генерации.
¶Интересные факты
- Термин «диффузия» заимствован из термодинамики, где описывает процесс выравнивания концентрации вещества.
- Первые диффузионные модели требовали для генерации одного изображения до нескольких минут, современные латентные модели (например, Stable Diffusion) способны генерировать изображение за 2-5 секунд на потребительских видеокартах.
- Существуют методы ускорения генерации (например, DDIM, DPM-Solver), позволяющие сократить количество шагов до 10-50 без существенной потери качества.
¶Источники
- Ho J., Jain A., Abbeel P. Denoising Diffusion Probabilistic Models. NeurIPS, 2020.
- Song Y., Sohl-Dickstein J., Kingma D. P. et al. Score-Based Generative Modeling through Stochastic Differential Equations. ICLR, 2021.
- Rombach R., Blattmann A., Lorenz D. et al. High-Resolution Image Synthesis with Latent Diffusion Models. CVPR, 2022.
- Sohl-Dickstein J., Weiss E. A., Maheswaranathan N., Ganguli S. Deep Unsupervised Learning using Nonequilibrium Thermodynamics. ICML, 2015.
- Song J., Meng C., Ermon S. Denoising Diffusion Implicit Models. ICLR, 2021.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


