Курс посвящен основам глубокого обучения и методам применения нейронных сетей в различных задачах.
Обучение на курсе позволит слушателям понять теоретические основы работы нейронных сетей и приобрести прикладные навыки работы с современными моделями. Практическая часть курса включает в себя работу с текстами, изображениями, вопросно-ответными системами и генеративными моделями.
Для успешного освоения материалов курса необходимо обладать следующими знаниями:
- Программирование на Python (рекомендуем МФК “Основы программирования и анализа данных на Python”).
- Линейная алгебра, оптимизация, статистика (рекомендуем факультатив "Математика для анализа данных")
- Основы машинного обучения (рекомендуем МФК “Машинное обучение для решения прикладных задач”).
Видеотрансляции занятий доступны всем желающим. Студенты, записавшиеся на курс, смогут выполнять домашние задания с автоматической проверкой и получать обратную связь от преподавателей.
Данный курс является составляющей частью серии курсов по искусственному интеллекту в Московском государственном университете. Цель этой серии курсов — предоставление студентам актуальных и современных знаний в области искусственного интеллекта и в различных областях науки о данных.
Telegram-канал, в котором будут публиковаться объявления по данному курсу: https://t.me/+vqAue2s5PFUwNWVi
Общий Telegram-канал МФК по ИИ: https://t.me/msumfk
Список всех тем лекций
Лекция 1. Введение в нейронные сети.
Организационная часть
План занятия
История развития нейронных сетей
Базовые понятия при работе с нейронными сетями
Интерактивный пример работы нейронной сети
Построение нейронной сети для (почти) реальной задачи и ее проверка на реальных данных
Функции активации
Заключение
Лекция 2. Метод обратного распространения ошибки, функции активации.
План занятия
Базовые понятия при работе с нейронными сетями
Введение в PyTorch
Метод обратного распространения ошибки (backpropagation)
Обзор различных функций активации
Реальная задача и высокоуровневое Apl PyTorch
Выводы
Лекция 3. Методы регуляризации в DL.
План занятия
Повторение функций активации и их свойств
Нормировка данных
Инициализация весов
Batch normalization
Overfitting (problem)
Dropout
Аугментации (Data augmentation)
Ответы на вопросы
Работа с текстами и последовательностями
Выводы
Лекция 4. Компьютерное зрение. Сверточные нейросети.
План занятия
Почему полносвязные сети плохо подходят для работы с изображениями
Операция свертки
Устройство сверточной нейросети
Построение сверточной сети в РyTorch для решения задачи классификации картинок
Дополнительно
Лекция 5. Компьютерное зрение. Transfer Learning.
План занятия
Imagenet
Практика
Transfer Learning
Практика
Лекция 6. Автоэнкодеры и векторные представления слоев.
План занятия
Повторение основных моментов при работе с текстами
Автоэнкодеры, снижение размерности и построение информативных представлений данных
Обзор word2vec
Работа с предобученными векторными представлениями слов
Выводы
Лекция 7. Языковое моделирование и RNN.
План занятия
Введение в работу с последовательностями
Принципы работы рекуррентных нейронных сетей
Предобработка текстовых данных для задачи языкового моделирования
Построение рекуррентной нейронной сети для задачи языкового моделирования
Лекция 8. Задача машинного перевода (seq2seq). Механизм Attention.
План занятия
Обработка последовательностей с помощью RNN в задаче машинного перевода
Механизм внимания в нейронных сетях (Attention)
BERT в задаче классификации текстов
Лекция 9. Компьютерное зрение. Сегментация и детекция.
План занятия
Введение
Идеи решения задачи сегментации
Transposed convolution, Signet
U-Net
Построение Signet для решения задачи сегментации родинок и меланом
Дополнительно
Лекция 10. Автоэнкодеры (AE) и генеративные состязательные сети (GAN).
План занятия
Устройство автоэнкодера
Генерация изображений с помощью автоэнкодера
Conditional AE
Практика, построение и обучение AE
Устройство GAN
Практика, построение и обучение GAN
Лекция 11. Дополнительные вопросы курса.
План занятия
Мультизадачность
Мультимодальность
Примеры моделей
Ответы на вопросы