Представляем вашему вниманию очередную порцию лекций Техносферы. На курсе изучается использование нейросетевых алгоритмов в различных отраслях, а также отрабатываются все изученные методы на практических задачах. Вы познакомитесь как с классическими, так и с недавно предложенными, но уже зарекомендовавшими себя нейросетевыми алгоритмами. Так как курс ориентирован на практику, вы получите опыт реализации классификаторов изображений, системы переноса стиля и генерации изображений при помощи GAN. Вы научитесь реализовать нейронные сети как с нуля, так и на основе библиотеке PyTorch. Узнаете, как сделать своего чат-бота, как обучать нейросеть играть в компьютерную игру и генерировать человеческие лица. Вы также получите опыт чтения научных статей и самостоятельного проведения научного исследования.


Список лекций:


  1. Основы нейронных сетей.
  2. Подробности обучения нейронных сетей.
  3. Библиотеки для глубинного обучения.
  4. Свёрточные нейронные сети.
  5. Улучшение сходимости нейросетей.
  6. Архитектуры глубинных сетей.
  7. Методы оптимизации.
  8. Нейронные сети для снижения размерностей.
  9. Рекуррентные сети.
  10. Обработка естественного языка.
  11. Соперничающие сети (GAN).
  12. Вариационные кодировщики и Artistic Style.
  13. Обучение с подкреплением 1.
  14. Обучение с подкреплением 2.

Лекция 1. Основы нейронных сетей



Нейронные сети. Базовые блоки полносвязных нейронных сетей. Алгоритм обратного распространения ошибки.


Лекция 2. Подробности обучения нейронных сетей



Алгоритм обратного распространения ошибки для ветвящихся структур. Проблемы обучения нейронных сетей. Предобработка данных, аугментация, регуляризация. Стохастический градиентный спуск. Подготовка данных при помощи PyTorch.


Лекция 3. Библиотеки для глубинного обучения



Графы вычислений в PyTorch. Операции с тензорами. Автоматическое дифференцирование. Полносвязные сети. Ветвящиеся архитектуры. Поведение сети при обучении и предсказании: флаги volatile и requires_grad. Сохранение и загрузка модели.


Лекция 4. Свёрточные нейронные сети



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


Лекция 5. Улучшение сходимости нейросетей



Инициализация весов: He, Xavier. Регуляризация: Dropout, DropConnect. Нормализация: batch normalization.


Лекция 6. Архитектуры глубинных сетей



Современные архитектуры сверточных сетей. Сети Inception и ResNet. Transfer learning. Применение нейронных сетей для задач сегментации и локализации.


Лекция 7. Методы оптимизации



Задача оптимизации. SGD, Momentum, NAG, Adagrad, Adadelta, Adam.


Лекция 8. Нейронные сети для снижения размерностей



Задача снижения размерности. MDS, Isomap. Метод главных компонент (PCA). Вывод главных компонент и доказательство метода множетелей Лагранжа. Автокодировщики. Denoising и разреженные автокодировщики.


Лекция 9. Рекуррентные сети



Рекуррентные сети. Обратное распространение ошибки сквозь время. LSTM-сети. GRU-сети. Многослойные рекуррентные архитектуры. Модификация dropout и батч-нормализации для рекуррентных сетей.


Лекция 10. Обработка естественного языка



Примеры задач. Обучение представлений: Word2Vec. Ускорение пары linear+softmax: hierarchical softmax, differentiated softmax. Генерация предложений. Модель Seq2Seq. Beam search для поиска лучшего ответа. Приемы для повышения разнообразности ответов.


Лекция 11. Соперничающие сети (GAN)



Генеративные и дискриминативные модели. Равновесие Нэша. Генеративные конкурирующие сети (GAN). Генеративные автокодировщики (AAE). Техника domain adaptation. Domain adaptation для перевода изображений между доменами. Wasserstein GAN.


Лекция 12. Вариационные кодировщики и Artistic Style



Модель вариационного автокодировщика (VAE). Интерпретация обученных моделей: Deep Dream. Перенос стиля: Artistic style. Ускорение стилизации.


Лекция 13. Обучение с подкреплением 1



Основные понятия обучения с подкреплением: агент, среда, стратегия, награда. Value function и Q-function. Уравнения Беллмана. Алгоритм Policy iteration.


Лекция 14. Обучение с подкреплением 2



Алгоритм Q-learning. Модельные подходы. Алгоритм DQN. Alpha Go.


Плейлист всех лекций находится по ссылке. Напомним, что актуальные лекции и мастер-классы о программировании от наших IT-специалистов в проектах Технопарк, Техносфера и Технотрек по-прежнему публикуются на канале Технострим.


Другие курсы Техносферы на Хабре:



Информацию обо всех наших образовательных проектах вы можете найти в недавней статье.

Комментарии (6)


  1. yorko
    18.12.2017 16:46

    Это прям новогодний подарок! Спасибо, будет чем праздники занять :)


    1. Olga_ol Автор
      19.12.2017 13:17

      Продуктивных праздников :)


  1. little-brother
    18.12.2017 19:18

    Достаточно бегло просмотрел первую лекцию. При такой подаче материала хочется кинуть в преподавателя чем-нибудь и убежать в закат. Для обзорной лекции — куча ненужной математики и фактов. Сомнительный способ заинтересовать слушателей. Разве что, это продолжение курса и они никуда не денутся.

    Подозреваю, что термины «нейронные сети» и «нейрон» сейчас используется по исторической причине. Достаточно ознакомиться вот с этим материалом, чтобы понять, что искусственная нейронная сеть похожа на реальную, как диснеевский Гуфи на собаку. И именно этот факт надо говорить, а не демонстрировать картинку нейрона.


  1. uncle_dima
    18.12.2017 23:33

    Обрадовался, но рано. Может в аудитории студенты вовлечены в процесс и всё не так ужасно выглядит, но запись смотреть невозможно. Такое ощущение, что лектор совсем не привык подавать материал без «а… э… окей» и матан сам недавно сдавал, так что ещё не всё забыл.
    Это не значит, что он не знает материал, но подача отвратительна. В разы лучше и понятнее лекции от МФТИ+Яндекса.


    1. Olga_ol Автор
      19.12.2017 13:17

      Эти лекции записаны на живых занятиях, поэтому обсуждения/ДЗ остаются за кадром. Под видео-формат записываем сейчас курс по машинному обучению на Coursera


  1. Akon32
    20.12.2017 15:56

    Большое спасибо!
    Очень радует, что достаточно глубоко описаны современные применяемые технологии, а не лишь "перцептроны Розенблата" с "методом обратного распространения ошибки" из 19ХХ-х, как в десятках других "Введениях в нейросети на Python в 25 строк".