Курс "Нейронные сети и глубокое обучение" Самарского Университета
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Artem Nikonorov 9fcb94b879
Add files via upload
2 years ago
1147 Update lab_3.ipynb 2 years ago
Exams_2021 Add files via upload 4 years ago
Lectures Add files via upload 2 years ago
lab_1-2 add lab_4 4 years ago
lab_3 add lab_3 4 years ago
lab_4 update assignment4 4 years ago
lections Add files via upload 4 years ago
LICENSE Initial commit 4 years ago
README.md Update README.md 2 years ago
lab_schedule_1143.md Update lab_schedule_1143.md 2 years ago
lab_schedule_6231_6233.md update readme 2 years ago

README.md

Курс "Нейронные сети и глубокое обучение" Самарского университета

Лектор Артем Владимирович Никоноров, д.т.н., artniko@gmail.com
Ассистенты: Виктория Витальевна Евдокимова, Никита Александрович Фирсов

Телеграмм группа курса: https://t.me/DL_SamU_2022

Курс основывается на предыдущих более обзорных лекциях и туториалах по глубокому обучению и его приложениях, в частности, вот небольшая обзорная лекция в Кавказском Математическом Центре. Также во многом этот курс является адаптацией известнейшего курса http://cs231n.stanford.edu/

Материалы курса за 2020-21 годы расположены здесь.

Курс 2022 года состоит из трех частей:
Введение в глубокое обучение: краткий обзор всех достижений машинного обучения до сверточных нейронных сетей, две лекции.
Основы глубокого обучения: собственно основной материал курса, порядка 8 лекций.
Дополнительные главы глубокого обучения: новинки и SOTA решения, трансформеры, метаобучение, zero shot learning и другое.

График проведения курса 2022-2023

Видеозаписи лекций 2020-21 годов можно найти по ссылке.

Лекции раз в неделю по четвергам. Начало в 19-00 по Самаре. Продолжительность лекции два астрономических часа.

Первая лекция: 10.09.22 в 10:00 в Zoom.

Следующая лекция: 13.10.22 в 19:00 по Самаре в Zoom.

Подключиться к конференции Zoom
https://us02web.zoom.us/j/8366671872?pwd=NS9ZaXNWWG55Y0pESUZIZHlRa0U5dz09

Идентификатор конференции: 836 667 1872
Код доступа: 810019

Лекционный план 2022-2023

Часть первая. Введение в глубокое обучение.

Лекции 1,2. Классификация, основанная на данных

Введение в курс.
Задача классификации изображений.
Подходы основанные на данных.
Основные идеи - От MLP до CNN.

Видеозапись первой части
Видеозапись второй части
Презентация - TBD.

Часть вторая. Основы глубокого обучения.

Лекция 3. Функции потерь и оптимизация.

Мультиклассовый SVM и его функция потерь.
Софтмакс и мультимодальная логистическая регрессия.
Оптимизация функции потерь.
Стохастический градиентный спуск (SGD).
Разбор задач к самостоятельной: функции потерь для SVM и софтмакса.

Видеозапись третьей лекции
Презентация к лекции 3
Python-ноутбук к лекции 3

Лекция 4. Нейронные сети и обратное распространение ошибки.

Классификация с точки зрения нейронной сети.
Многослойный перцептрон.
Представление сети в виде вычислительного графа. Алгоритм обратного распространения ошибки на вычислительном графе.
Разбор задач к самостоятельной: прямое и обратное распротранение по вычислительному графу.

Видеозапись четвертой лекции, первая часть
Видеозапись четвертой лекции, вторая часть

Презентация к лекции 4

Лекция 5. Сверточные сети (СНС).
История.
Основные операции СНС.
Применение СНС вне задач машинного зрения.
Разбор задач к самостоятельной: расчет выхода сверточной сети.

Презентация к лекции 5

Лекция 6. Инструментарий глубокого обучения.
CPU vs GPU vs TPU.
Пакеты глубокого обучения, Tensorflow, Keras и другие.
Вычислительные графы СНС.

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

Презентация к лекции 6

Самостоятельня работа.

Три задачи из лекций 2-5.
Внимание: участие в самостоятельной, как и сдача лабораторных, необходимое условие для допуска к экзамену.

Лекция 7. Обучение СНС, часть 1.

Активационные функции, обработка данных сетью.
Пакетная нормализация и другие трюки.
Transfer learning.

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

Презентация к лекции 7

Лекция 8. Обучение СНС, часть 2.

Политики обновления гиперпараметров.
Тюнинг процесса обучения. Аугментация данных.

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

Презентация к лекции 8

Лекция 9. Архитектуры СНС

Базовые архитектуры - AlexNet, VGG, GoogleNet, ResNet, UNET и другие.

Часть третья. Дополнительные главы

Лекция 10. Генеративные и рекуррентные модели

  1. RNN/LSTM.
    Механизм attention. Обработка естественного языка.

  2. GAN сети.

  3. Детектирование и сегментация.

Лекция 11. SOTA модели
Трансформеры
Zero shot подходы
Метаобучение
Федеративное обучение

План лабораторных работ

Списки групп и статус выполнения лабораторных работ можно найти в гугл-таблице .

Литература и дополнительные источники

  1. Отличная книга на русском по глубокому обучению -
    С. И. Николенко, А. Кадурин, Е. В. Архангельская, Глубокое обучение. Погружение в мир нейронных сетей. 2018

  2. Отличная книга по техническим аспектам реализации на Python -
    Шолле Франсуа, Глубокое обучение на Python

  3. Хорошая современная книга на английском: Advanced Deep Learning with Python. By Ivan Vasilev

  4. Лекционный курс К.В. Воронцова по машинному обучению.

  5. Видеолекция академика Ю.И. Журавлева об истоках машинного обучения в СССР и о сочетании эвристики и науки в распознавании образов.

  6. Видеолекции С.И. Николенко по GAN сетям 1, 2. Хорошая проверка ваших знаний, на выходе из настоящего курса вы должны полностью понимать то, что говорится в этих лекциях по GAN.

  7. Хорошая вводная книга по питону и базовым библиотекам, таким как numpy, pandas, jupyter. Python и анализ данных. Второе издание [2020] Уэс Маккинни
    Альтернативная ссылка
    Важное замечание: первое издание книги содержит в себе короткое введение в python, изъятое из второго издания. Первое издание с руководством по питону можно найти например здесь.

  8. Еще советская книга по методам оптимизации в технических задачах. Для тех кто не знает как рашифровывается BFGS))) -
    Реклейтис Г., Рейвиндран А., Рэгсдел К. Оптимизация в технике. Том 1 М.: Мир, 1986. 348 с.

Хороший телеграмм канал с подборкой технических книг