Искусственные нейронные сети

ОБЪЯВЛЕНИЯ


Описание курса

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

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

Знание на базовом уровне математического анализа и линейной алгебры. Желательно владеть языком программирования python.

Технические требования

Python, а также библиотеки numpy, tensorflow, matplotlib.
Если ваша видеокарта поддерживает обучение нейронной сети на графическом процессоре, необходимо скачать CUDA от Nvidia (видеокарты AMD не подходят).

https://developer.nvidia.com/cuda-gpus - список поддерживаемых видеокарт.

https://developer.nvidia.com/cuda-toolkit-archive - CUDA, иногда просто хватает обновления драйверов.

https://www.tensorflow.org/install - установка tensorflow.

Для установки numpy и matplotlib необходимо ввести в консоли python:

pip install numpy

pip install matplotlib


Если возникнут какие-то проблемы, обращаться к руководителю курса.


План занятий

Занятие №1: Организационные вопросы. Постановка задачи. Вводная часть про машинное обучение. Обучение с учителем.


Занятие №2: Линейная регрессия, переобучение и методы борьбы с ним.


Занятие №3: Градиентный спуск, активации на слоях.


Занятие №4: Логистическая регрессия, теорема о бесплатных завтраках, теорема об универсальном аппроксиматоре.


Занятие №5: Граф вычислений и метод обратного распространения ошибки.


Занятие №6: Введение в Keras, разбор примеров нейросетей, зависимость сложности от размера сети, «бутылочное горлышко».


Занятие №7: Сверточные нейронные сети, разбор примеров.


Занятие №8: Введение в обучение с подкреплением.


Занятие №9: Разбор примеров TD-обучения и алгоритмов динамического программирования.


Занятие №10: Глубокое Q-обучение, метод кросс-энтропии, подведение итогов.


Плейлист лекций.