Нейросетевые методы обработки изображений (В.В.Китов)

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Материалы лекций)
(Практикум)
 
(113 промежуточных версий не показаны.)
Строка 2: Строка 2:
[[Категория:Учебные курсы]]
[[Категория:Учебные курсы]]
-
Спецкурс проходит на ф-те ВМиК весной 2019 года и посвящен задаче автоматической стилизации изображений, в которой входное изображение необходимо преобразовать так, чтобы сохранить изображенные на нем предметы, но стилистику их отображения взять из другого изображения или группы изображений. Например, это может быть стилизация семейной фотографии под стиль известного художника, либо стилизация дневного фото в ночное, либо изменение зимней панорамы в летнюю. Эта задача может применяться в мультипликации, наложении спецэффектов в фильмах и видеоиграх, симуляторах и средствах дополненной реальности, а также для более точной настройки методов машинного обучения работе с изображениями за счет вариации их стиля и адаптации стиля под целевую предметную область. Помимо отдельных изображений указанный подход применим для видеопоследовательностей и данных из других предметных областей (текст, речь и т.д.). Основные методы стилизации были предложены в последние 5 лет и опираются на глубинные нейронные сети, базовому изучению которых посвящена существенная часть курса.
+
==О курсе==
-
+
Спецкурс посвящён основам глубокого обучения, а также задачам классификации, сегментации и генерации изображений, используя нейросетевой перенос стиля (neural style transfer) и генеративно-состязательные сети (generative adversarial networks).
-
==Лектор==
+
-
[[Участник:Victor Kitov|Виктор Владимирович Китов]], к.ф.-м.н., преподаватель кафедры [[Mmp|математических методов прогнозирования]] [http://cmc.msu.ru ВМК МГУ]. Почта: v.v.kitov(at)yandex.ru.
+
-
==Расписание==
+
Курс самодостаточный, основные понятия и задачи вводятся и подробно разбираются, поэтому спецкурс будет полезен слушателям, не имевшим предварительного знакомства с нейросетями.
-
Занятия проходят по пятницам в 16-20 в ауд. 606. Первое занятие - 22.02.2019.
+
-
==Программа==
+
Спецкурс является практико-ориентированным: помимо теории большое внимание уделяется разбору практической реализации изучаемых архитектур. В этом смысле спецкурс является органичным дополнением обязательного курса “Глубокое машинное обучение”.
-
* Введение в машинное и глубинное обучение
+
 
-
* Алгоритмы настройки нейросетей. Регуляризация.
+
В частности, разбираются основы работы с библиотекой PyTorch, реализации многослойного персептрона, автокодировщика, симаских сетей, RBF-сетей, свёрточных и генеративно-состязательных сетей.
-
* Основные архитектуры сверточных нейросетей.
+
 
-
* Методы стилизации, основанные на сближении распределений.
+
Для прохождения спецкурса необходимо сдать устный экзамен по основным теоретическим темам, а также сдать практикум.
-
* Методы стилизации, основанные на сопоставлении участков изображений.
+
 
-
* Методы стилизации видеопоследовательностей.
+
Пройденный спецкурс вы можете позже перезачесть в учебной части на 4м курсе (по учебному плану вам тогда нужно проходить спецкурс по выбору).
-
* Генеративно-состязательные сети и их применения для стилизации и повышения качества изображений.
+
 
 +
==Лектор==
 +
[[Участник:Victor Kitov|Виктор Владимирович Китов]], к.ф.-м.н., преподаватель кафедры [[Mmp|математических методов прогнозирования]] [http://cmc.msu.ru ВМК МГУ].
 +
Почта: v.v.kitov(at)yandex.ru.
-
=Материалы лекций=
+
==Требования к слушателям==
-
===Введение в машинное обучение.===
+
Необходимы базовые знания по математическому анализу, линейной алгебре и теории вероятностей. Предварительных знаний по нейронным сетям и методам обработки изображений не требуется.
-
[https://yadi.sk/i/IfR0TdxpHAhmRA Презентация].
+
-
===Многослойный персептрон.===
+
==Программа курса==
-
[https://yadi.sk/i/H_Oi0oL1tzqBRw Презентация].
+
-
===Сверточные нейросети.===
+
* Введение в глубокое обучение.
-
[https://yadi.sk/i/jIbSmgR_2akThg Презентация].
+
* Многослойный персептрон. Основные функции активации и функции потерь.
 +
* Автокодировщик.
 +
* Работа в среде Jupyter Lab, Jupyter Notebook. Средства отладки кода.
 +
* Методы оптимизации нейросетей.
 +
* Основы работы с PyTorch, автоматическое дифференцирование, реализация простейших нейросетей.
 +
* Операции свёртки и пулинга. Свёрточные нейросети для обработки текстов и изображений.
 +
* Основные свёрточные архитектуры для классификации изображений.
 +
* Реализация свёрточных сетей и использование предобученных сетей в PyTorch.
 +
* Сегментация изображений.
 +
* Реализация задачи супер-разрешения (super-resolution) и сиамских сетей в PyTorch.
 +
* Задача переноса стиля и её практическая реализация.
 +
* Генеративно-состязательные сети.
 +
* Реализация генеративно-состязательных сетей в PyTorch.
-
===Модели переноса стиля.===
+
==Практикум==
-
[https://yadi.sk/i/NpCyttnBnQknzg Презентация].
+
В рамках практикума необходимо реализовать улучшенния базовых архитектур, разобранных на практических семинарах. От студентов второго курса дополнительно требуется сделать презентацию научной статьи.
-
===Улучшения переноса стиля 1.===
+
==Прохождение спецкурса==
-
[https://yadi.sk/i/uCeb3mYj0q5xbw Презентация].
+
Для успешной сдачи спецкурса необходимо сдать практикум и устный экзамен.
-
===Улучшения переноса стиля 2.===
+
==Регистрация на курс==
-
[https://yadi.sk/i/MakcK8WK2SmxbA Презентация].
+
Регистрация на курс происходит на самом спецкурсе по факту посещения, дополнительные действия не требуются.
-
===Расширение обучающей выборки.===
+
==Время занятий==
-
[https://yadi.sk/i/mgfcDzHfp6t4ww Презентация].
+
-
===Фрагментарный перенос стиля.===
+
По понедельникам 16:50 - 18:20, ауд. 510.
-
[https://yadi.sk/i/Q1i_fZyduk2u0w Презентация].
+
-
===Перенос стиля для видео.===
+
Первое занятие - 17.02.2025.
-
[https://yadi.sk/i/VF5v6AM86U6OKQ Презентация].
+
-
=Рекомендуемые ресурсы=
+
==Рекомендуемые ресурсы==
-
* Примеры переноса стиля для видео: [https://www.youtube.com/watch?v=Khuj4ASldmU пример 1], [https://www.youtube.com/watch?v=vMyMUNvsGfQ пример 2], [https://www.youtube.com/watch?v=BcflKNzO31A пример 3].
+
* [https://deepmachinelearning.ru Авторсий онлайн-учебник по машинному и глубокому обучению]
-
* [https://arxiv.org/pdf/1705.04058.pdf Обзорная статья по переносу стиля для изображений.]
+
* [https://education.yandex.ru/handbook/ml Учебник школы анализа данных Яндекса по машинному и глубокому обучению]
-
* [https://www.youtube.com/playlist?list=PL3FW7Lu3i5JvHM8ljYj-zLfQRF3EO8sYv Лекции курса в Стэнфорде по сверточным нейронным сетям.]
+
* [https://pytorch.org/tutorials/ Образовательные материалы по библиотеке PyTorch]
-
* [http://www.pittnuts.com/2015/07/top-conferences-on-machine-learning-and-computer-vision/ Топовые конференции по машинному обучению и компьютерному зрению] (самые интересные статьи там)
+
* [https://scholar.google.ru/ Поиск google по научным статьям]
-
* [https://scholar.google.ru/ Поиск google по статьям.]
+
-
* [https://pytorch.org/tutorials/ Образовательные материалы по библиотеке глубинного обучения PyTorch.]
+
-
* [http://d2l.ai/index.html Книга по глубинному обучению.]
+

Текущая версия


О курсе

Спецкурс посвящён основам глубокого обучения, а также задачам классификации, сегментации и генерации изображений, используя нейросетевой перенос стиля (neural style transfer) и генеративно-состязательные сети (generative adversarial networks).

Курс самодостаточный, основные понятия и задачи вводятся и подробно разбираются, поэтому спецкурс будет полезен слушателям, не имевшим предварительного знакомства с нейросетями.

Спецкурс является практико-ориентированным: помимо теории большое внимание уделяется разбору практической реализации изучаемых архитектур. В этом смысле спецкурс является органичным дополнением обязательного курса “Глубокое машинное обучение”.

В частности, разбираются основы работы с библиотекой PyTorch, реализации многослойного персептрона, автокодировщика, симаских сетей, RBF-сетей, свёрточных и генеративно-состязательных сетей.

Для прохождения спецкурса необходимо сдать устный экзамен по основным теоретическим темам, а также сдать практикум.

Пройденный спецкурс вы можете позже перезачесть в учебной части на 4м курсе (по учебному плану вам тогда нужно проходить спецкурс по выбору).

Лектор

Виктор Владимирович Китов, к.ф.-м.н., преподаватель кафедры математических методов прогнозирования ВМК МГУ.

Почта: v.v.kitov(at)yandex.ru.

Требования к слушателям

Необходимы базовые знания по математическому анализу, линейной алгебре и теории вероятностей. Предварительных знаний по нейронным сетям и методам обработки изображений не требуется.

Программа курса

  • Введение в глубокое обучение.
  • Многослойный персептрон. Основные функции активации и функции потерь.
  • Автокодировщик.
  • Работа в среде Jupyter Lab, Jupyter Notebook. Средства отладки кода.
  • Методы оптимизации нейросетей.
  • Основы работы с PyTorch, автоматическое дифференцирование, реализация простейших нейросетей.
  • Операции свёртки и пулинга. Свёрточные нейросети для обработки текстов и изображений.
  • Основные свёрточные архитектуры для классификации изображений.
  • Реализация свёрточных сетей и использование предобученных сетей в PyTorch.
  • Сегментация изображений.
  • Реализация задачи супер-разрешения (super-resolution) и сиамских сетей в PyTorch.
  • Задача переноса стиля и её практическая реализация.
  • Генеративно-состязательные сети.
  • Реализация генеративно-состязательных сетей в PyTorch.

Практикум

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

Прохождение спецкурса

Для успешной сдачи спецкурса необходимо сдать практикум и устный экзамен.

Регистрация на курс

Регистрация на курс происходит на самом спецкурсе по факту посещения, дополнительные действия не требуются.

Время занятий

По понедельникам 16:50 - 18:20, ауд. 510.

Первое занятие - 17.02.2025.

Рекомендуемые ресурсы

Личные инструменты