Роман Исаченко
Генеративные модели
О курсе
Курс посвящен современным генеративным моделям в приложении к компьютерному зрению. В процессе обучения мы рассмотрим 4 основных класса генеративных моделей: авторегрессионные модели, модели скрытых переменных, модели нормализационных потоков, состязательные модели. Особое внимание будет уделено свойствам различных классов генеративных моделей, их взаимосвязям, теоретическим предпосылкам и методам оценивания качества. Целью курса является знакомство слушателя с широко применяемыми продвинутыми методами глубокого обучения.
Курс сопровождается практическими заданиями, позволяющими на конкретных примерах понять принципы устройства рассматриваемых моделей.
53%
студентов выбрали этот курс
5/5
качество курса по мнению студентов
5/5
сложность курса по мнению студентов
Команда курса
Роман Исаченко
Лектор
Владимир Кондратенко
Семинарист
Программа курса
Лекция 1
Логистика. Мотивация. Авторегрессионные модели (MADE, WaveNet, PixelCNN, PixelSnail).

Лекция 2
Модели скрытых переменных. Байесовский метод главных компонент. Вариационная нижняя оценка. EM-алгоритм.

Лекция 3
Вариационный автокодировщик (VAE). Апроксимация среднего поля. EM-алгоритм для апроксимации среднего поля и его связь с VAE.
Лекция 4
Модели нормализующих потоков (Planar flows, NICE, RealNVP, RevNet, Glow).
Лекция 5
Генеративные модели без оценки правдоподобия. Модель генеративных состязательных сетей (GAN). Техники обучения GAN. Проблемы GAN (vanishing gradients, mode collapse). Сравнение VAE и GAN. DCGAN. Топологические особенности обучения GAN моделей.
Лекция 6
Расстояние Вассерштейна. Wasserstein GAN. Липшицевость и дуальность Кантторовича-Рубинштейна. Gradient penalty. Spectral Normalization. Вариационная минимизация f-дивергенций.
Лекция 7
Оценивания качества likelihood-free моделей. Разбор конкретных GAN моделей (Self-attention GAN, BigGAN, Progressive Growing GAN, StyleGAN).
Лекция 8
Вариационная деквантизация для дискретных данных (Flow++). Потоки в VAE. Авторегрессионные потоки (IAF, MAF). FlowGAN.
Лекция 9
Связь авторегрессионных потоков с RealNVP. Parallel WaveNet. ELBO surgery. Выбор априорного распределения в VAE (VampPrior).
Лекция 10
Коллапс апостериорного распределения в VAE. Авторегрессионный декодер (PixelVAE, VLAE). Техники ослабления декодера (free-bits, KL annealing, limited receptive field). Importance Sampling VAE. Adversarial autoencoders.
Лекция 11
Задача распутывания представлений (disentanglement learning). InfoGAN, beta-VAE, DIP-VAE, FactorVAE.
Лекция 12
Модель потоков непрерывной динамики (NeuralODE, Ffjord). Квантизованные представления (VQVAE, VQVAE2, FQGAN).
Лекция 13
Обучение представлений. Contrastive learning (CPC v1/2, MoCo v1/2, SimCLR v1/2).
Формирование итоговой оценки
В ходе курса запланировано 6 домашних заданий: 4 практических (написание кода) и 2 теоретических (решение упражнений). За каждое из них можно получить 12 баллов. Также в конце курса будут организованы доклады студентов на выбранные темы (список тем будет предоставлен позже). Максимальное количество баллов за доклад - 30. Таким образом, в сумме за курс можно набрать 72 балла за домашние задания и 30 за доклады.
Правила сдачи домашних заданий
Выполненные домашние задания нужно отправлять в телеграм-бот @ozonm_bot. На каждое отводится ровно 2 недели с момента публикации задания. После этого срока в следующие 2 недели за отправленное задание можно набрать только 50% баллов. Если задание отправлено позже, чем через 4 недели после публикации, то оценка не выставляется.
Связь с преподавателями
Любые вопросы по курсу можно (и нужно) задавать в telegram-канал курса. Доступ к каналу можно получить по ссылке


Материалы лекций