Генеративные модели на основе диффузии

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

Общая информация

Курс предназначен для студентов 4 курса ФКН ПМИ, но приглашаются все желающие, уверенно знающие математику младших курсов (в особенности теорию вероятностей), базово ориентирующиеся в глубинном обучении и программировании на PyTorch.

Занятия проходят по субботам в 13:00-16:00, аудитория R208 (переносы будут сообщаться в чате).

Лектор/семинарист: Денис Ракитин

Чат курса

Программа и описание курса

Старый туториал по ODE/SDE моделям, близкий к программе курса

Оценки

Таблица с оценками

Формула итоговой оценки: Оитог = 0.5 * Одз + 0.2 * Опроект + 0.3 * Оэкз. Округление арифметическое.

Экзамен

Программа

Экзамен устный, состоит из билета и двух дополнительных вопросов. Один из дополнительных вопросов — задача, второй — вопрос на усмотрение принимающего (может быть задачей или вопросом по другим билетам). Разбалловка: 4 балла за билет и по 3 балла за доп. вопрос.

Проект

Состоит в реализации и проведении экспериментов с одной из рассмотренных на курсе моделей. Проект командный. Команда может включать не более 4 человек, для 3-4 человек в проекте будет дополнительное задание. Сдача проекта включает в себя github-репозиторий с имплементацией и написанный в pdf отчет. Оценка будет ставиться по трем критериям. Объем работы оценивается из 4 баллов, качество отчета и полученных результатов в 3 балла.

Подробное описание находится здесь (нужно будет скачать, чтобы работали ссылки).

Сдается в классрум (ссылка ниже).

Домашние задания

Сдаются в классрум. Код курса mzafi45.

В курсе будут 4 теоретических и 2 практических домашних задания. Вес у всех задач одинаковый, задачи оцениваются из 1 балла. Если в задачах есть пункты, то будет подписано количество баллов за каждый пункт, иначе баллы между пунктами делятся поровну.

Теория

ДЗ-1, TeX исходник, дедлайн 6 октября 23:59.

ДЗ-2, ТеХ исходник, дедлайн 3 ноября 23:59.

ДЗ-3, ТеХ исходник, дедлайн 25 ноября 23:59.

ДЗ-4, ТеХ исходник, дедлайн 11 декабря 23:59.

Практика

ДЗ-1, дедлайн 13 ноября 23:59.

ДЗ-2, дедлайн 11 декабря 23.59.

Бонусы

Бонус-1, ТеХ исходник, дедлайн в конце курса.


Лекции и семинары

Конспект лекций в процессе

Записи лекций и семинаров

Семинарские задачи

Лекция / Семинар 1. Генеративное моделирование. Семейства генеративных моделей: вариационные автокодировщики (VAEs), генеративно-состязательные сети (GANs), диффузионные модели. Генеративная трилемма: генеративная модель должна обладать высоким качеством генерации, высоким разнообразием и скоростью генерирования. Повтор теории вероятностей: совместная и условная плотность, формула Байеса, подсчет матожиданий через плотности. Условное матожидание (УМО): определение через интеграл условной плотности. Свойства: линейность, формула полного матожидания, вынос функции от условия за УМО, УМО от независимой величины равна безусловному матожиданию. Условное матожидание как наилучшее предсказание в среднеквадратичном.

Гауссовские векторы/многомерное нормальное распределение. Три эквивалентных определения, формула плотности. Аффинная замена гауссовских векторов, эквивалентность независимости и некоррелированности их компонент, ортогональное разложение, условное распределение компоненты относительно другой компоненты.

Лекция / Семинар 2. Процессы зашумления с дискретным временем: процесс с сохраняющейся (variance preserving, VP) и взрывающейся (variance exploding, VE) дисперсией. Определение марковской цепи. Префиксные суммы независимых величин образуют марковскую цепь. Процессы зашумления являются марковскими цепями. Работа с марковскими цепями: обуславливание марковской цепи на начальное состояние эквивалентно построению марковской цепи, стартующей из этого состояния. Переходные плотности VP и VE процессов. Эвристичная схема обращения процесса зашумления по времени (статья DDPM). Обучение нейросети-денойзера для предсказания чистой картинки по шумной.

Обращенная по времени марковская цепь является марковской цепью. Обыкновенные дифференциальные уравнения (ОДУ), схема Эйлера. Построение непрерывного аналога процесса удаления картинки, заданного через ОДУ. Определение Винеровского процесса. (Псевдо)-определение стохастических дифференциальных уравнений (СДУ) через схему Эйлера. Построение непрерывных по времени аналогов VP и VE процессов: СДУ с сохраняющейся (VP-SDE) и взрывающейся (VE-SDE) дисперсией. Подсчет переходных распределений VE-SDE и VP-SDE с помощью решения линейных ОДУ.

Лекция / Семинар 3. Эволюция плотности частицы, движущейся под действием ОДУ/СДУ: уравнение непрерывности и уравнение Фоккера-Планка. Неформальное утверждение о единственности решения уравнения Фоккера-Планка с начальным условием при выполнении условий регулярности. Вывод общего вида законов сохранения (взято из курса УрЧП). Интерпретация уравнения непрерывности, теплопроводности и Фоккера-Планка через законы сохранения. Решение транспортного уравнения с константным сносом. Дорешивание семинара 2: VP-SDE получается шкалированием VE-SDE.

Лекция / Семинар 4. Диффузионные модели с непрерывным временем. Переход от СДУ к ОДУ и обратно. Обращение ОДУ по времени. Обращение СДУ по времени (оригинальная статья) с помощью схемы СДУ -> ОДУ -> обратное ОДУ -> обратное СДУ. Score функция, ее представление через условное матожидание условной score функции, интерпретация и обучение методом Denoising Score Matching. Эквивалентность Denoising Score Matching обучению модели, предсказывающей чистое изображение/шум в изображении.

Семплирование из диффузионных моделей с непрерывным временем: дискретизация обратного СДУ по схеме Эйлера. Связь с дискретной схемой обращения процесса по времени из лекции 2. Выражение score функции VP-SDE через score функцию VE-SDE. Применение: имея обученную модель-денойзер, можно семплировать из VP-SDE и VE-SDE без переобучения модели. Предельное распределение однородного СДУ, связь со стационарным распределением, сведение к однородному уравнению Фоккера-Планка (d/dt p_t(x) = 0). Динамика Ланжевена: снос в СДУ, сходящейся к распределению p(x), с точностью до константы совпадает со score функцией. Применение к генерации семплов из распределения p(x) и связь с градиентным подъемом.

Лекция / Семинар 5. Имплементация диффузионных моделей на практике: ноутбук. Denoising Score Matching для обучения обусловленных диффузионных моделей.

Лекция / Семинар 6. Обуславливание безусловных диффузионных моделей с помощью шумного классификатора: Classifier Guidance, контролирование баланса между правдоподобием и разнообразием семплов. Перенос той же техники на предобученные условные модели: Classifier-free Guidance. Дистилляция диффузионных моделей. Первое семейство моделей: обучение генератора на повтор траектории ОДУ диффузионной модели: Progressive Distillation, Consistency Models, BOOT. Использование диффузионной модели в качестве обучающего сигнала для произвольного вида генератора: метод Distribution Matching Distillation (его прототип Diff-Instruct, конкурентная работа SwiftBrush и улучшенная версия Improved DMD).

Лекция / Семинар 7. Диффузионные модели как процессы интерполяции между шумом и данными. Модель Flow Matching (аналоги Conditional Flow Matching и Stochastic Interpolants): построение ОДУ, порождающего безусловную динамику при известном ОДУ, порождающем условную динамику. Применение к задаче безусловной генерации. Применение к парным задачам переноса стиля: Flow Matching снижает транспортную цену. Представление диффузионных моделей в качестве частного случая модели Flow Matching. Статьи про решение парных задач на основе ОДУ и на основе СДУ.

Лекция / Семинар 8. Задача оптимального транспорта (ОТ): задача Монжа и Канторовича, их эквивалентность при наличии плотностей у обоих распределений. Применимость модели Flow Matching для непарных задач: снижение транспортной цены не гарантирует хорошего отображения. Алгоритм Rectified Flow (теоретическое дополнение): повторное обучение Flow Matching (процедуры Rectify) для последовательного снижения транспортной цены отображения. Неподвижные точки Rectify: 4 эквивалентных свойства. Следствие: решение задачи ОТ может быть представлено в виде ОДУ с прямыми траекториями. Задача динамического ОТ, формула Бенаму-Бренье. Интерпретация метода Rectified Flow как чередования проецирования на множество процессов с прямыми траекториями и множество процессов, заданных ОДУ.

Лекция / Семинар 9. Повтор 4 задач оптимального транспорта: Канторовича, Монжа, Монжа (отображение параметризовано ОДУ) и динамическая задача ОТ (формула Бенаму-Бренье). ОДУ с прямыми траекториями решает задачу ОТ тогда и только тогда, когда векторное поле задается градиентом скалярного. InstaFlow: применение метода Rectified Flow для спрямления траекторий и ускорения диффузионных моделей. Ноутбук.

Одношаговые методы решения задачи оптимального транспорта. Два требования к обучаемому отображению: низкая транспортная цена + попадание в распределение. Попадание в распределенеи с помощью ГАНов: оригинальная модель, вывод лог-лосса, интерпретация через минимизацию дивергенции Йенсена-Шеннона. Семейство интегральные метрик на пространстве распределений. Пример: расстояние Васерштейна и Wasserstein GAN. Решение (условной) задачи ОТ с помощью множителей Лагранжа и соответствующей (безусловной) минимаксной задачи. Метод Neural Optimal Transport.

Лекция / Семинар 10. Обзор методов переноса стиля на основе диффузии: ILVR, SDEdit, EGSDE, DDIB, Cycle Diffusion (Cycle Diffusion не было, добавлено для полноты картины). Напоминание DMD, связь обучения фейковой диффузии с обучением дискриминатора. Метод Regularized DMD / RDMD: соединение distribution matching функционала с транспортной ценой для непарного переноса стиля (совместная работа с Иваном Щекотовым и Дмитрием Петровичем Ветровым). Презентация.

Метод Bridge Matching: обобщение Flow Matching на стохастический случай для решения парных задач перевода между доменами. Вывод оптимального векторного поля и коэффициента диффузии, порождающих безусловную динамику по условной. h-преобразование Дуба: обуславливание СДУ на конечную точку для получения СДУ, интерполирующего между двумя точками. Пример: обуславливание VE-SDE. Пример: если g(t) = const, обуславливание VE-SDE порождает Броуновский мост. Хорошо описан в статьях Aligned Diffusion Schrödinger Bridges и Diffusion Schrödinger Bridge Matching. Применение к обратным задачам: статья I2SB: Image-to-Image Schrödinger Bridge.

Лекция / Семинар 11. Регуляризация для задач оптимального транспорта. Задача ОТ с регуляризацией в виде условной дисперсии. Задача ОТ с энтропийной регуляризацией: формулировка, сложность решения. Задача Моста Шрёдингера: общая формулировка через минимизацию КЛ-дивергенции с референсным процессом. Chain rule для КЛ дивергенции. Следствие: если референсный процесс Винеровский, то условное распределение Моста Шрёдингера совпадает с Броуновским мостом. Статическая задача моста Шрёдингера, эквивалентность с энтропийной задачей ОТ в случае Винеровского референсного процесса. КЛ-дивергенция между двумя СДУ: теорема Гирсанова. Следствие: задача Моста Шрёдингера через стохастическое оптимальное управление.

Лекция / Семинар 12. Следствие из теоремы Гирсанова: Score Matching эквивалентен минимизации КЛ-дивергенции между настоящим и обучаемым обратными процессами. Решение задачи МШ через стохастическое оптимальное управление и множители Лагранжа: метод Entropic Neural Optimal Transport (ENOT).

Мост Шрёдингера как единственный процесс, который переводит p_0 в p_1, задается некоторым СДУ и имеет Броуновский мост в качестве условного распределения. Метод Diffusion Schrödinger Bridge Matching: последовательное обучение Bridge Matching на парах из предыдущего Bridge Matching. Смысл: последовательное проецирование процесса на множество R (Reciprocal) процессов с Броуновским мостом в качестве условного и множество M (Марковских) процессов, задаваемых СДУ. Каждый шаг алгоритма является проекцией с точки зрения КЛ-дивергенции, справедлива теорема Пифагора. Следствие: КЛ между соседними распределениями стремится к нулю, КЛ между текущим процессом и МШ не увеличивается, МШ является неподвижной точкой процедуры.

Материалы прошлых лет

Вики-страница

Видеозаписи лекций