Обучение с подкреплением (курс лекций) / 2020

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

(Различия между версиями)
Перейти к: навигация, поиск
(Экзамен)
 
(13 промежуточных версий не показаны.)
Строка 10: Строка 10:
'''Ссылка на Zoom:''' [https://us02web.zoom.us/j/88022710514?pwd=UC92ZzM2Vnh1bC8wT0FFdnZBMStVUT09 ссылка], идентификатор: 880 2271 0514, пароль: 638344
'''Ссылка на Zoom:''' [https://us02web.zoom.us/j/88022710514?pwd=UC92ZzM2Vnh1bC8wT0FFdnZBMStVUT09 ссылка], идентификатор: 880 2271 0514, пароль: 638344
 +
 +
'''Видеозаписи занятий:''' [https://www.youtube.com/playlist?list=PLVF5PzSHILHTcO89xQvyomRZIiCA2XLgN ссылка]
'''Инвайт в AnyTask:''' HTA74nV
'''Инвайт в AnyTask:''' HTA74nV
Строка 17: Строка 19:
==Критерии оценки==
==Критерии оценки==
-
В курсе предусмотрено шесть лабораторных работ в формате ноутбуков и устный экзамен. Итоговая оценка по курсу в 10-балльной шкале рассчитывается по формуле:
+
В курсе предусмотрено пять лабораторных работ в формате ноутбуков и устный экзамен. Итоговая оценка по курсу в 10-балльной шкале рассчитывается по формуле:
'''Итоговая оценка = Округл.вверх (0.3 * Экз + 0.7 * Лаб)'''
'''Итоговая оценка = Округл.вверх (0.3 * Экз + 0.7 * Лаб)'''
Строка 25: Строка 27:
!Итог !! Необходимые условия
!Итог !! Необходимые условия
|-
|-
-
| 5 || сдано не менее 5 заданий, оценка за экзамен >= 6
+
| 5 || сдано не менее 4 заданий, оценка за экзамен >= 6
|-
|-
-
| 4 || сдано не менее 4 заданий, оценка за экзамен >= 4
+
| 4 || сдано не менее 3 заданий, оценка за экзамен >= 4
|-
|-
-
| 3 || сдано не менее 3 заданий, оценка за экзамен >= 4
+
| 3 || сдано не менее 2 заданий, оценка за экзамен >= 4
|-
|-
|}
|}
Строка 35: Строка 37:
== Домашние задания ==
== Домашние задания ==
-
Сдавать лабораторные можно в течение недели после мягкого дедлайна. За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания. Максимальный балл за лабораторные - 100 баллов; итоговая оценка за лабораторные получается делением на десять.
+
Сдавать лабораторные можно в течение недели после мягкого дедлайна. За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания. Максимальный балл за лабораторные - 80 баллов; итоговая оценка за лабораторные получается делением на восемь.
{| class="standard" | style="text-align:center;"
{| class="standard" | style="text-align:center;"
Строка 48: Строка 50:
| A2C || 27 октября || 2 недели || 20 || -1
| A2C || 27 октября || 2 недели || 20 || -1
|-
|-
-
| PPO || 10 ноября || 2 недели || 20 || -1
+
| PPO || 17 ноября || 2 недели || 20 || -1
-
|-
+
-
| MCTS || 1 декабря || 2 недели || 20 || -1
+
|-
|-
|}
|}
== Экзамен ==
== Экзамен ==
 +
На экзамене все студенты заранее [https://docs.google.com/spreadsheets/d/1PINnR9SgSNp7S7H9VrpQNemgRXIbH0zDc4NpEpoCPP4/edit?usp=sharing распределяются] по времени сдачи. За час до указанного времени студент по почте получает номер экзаменационного вопроса, а также зум-ссылку для подключения. В течение часа студент самостоятельно пишет ответ на экзаменационный вопрос. При этом можно пользоваться любыми материалами. Далее в указанное время студент подключается к зум-конференции для общения с экзаменатором. Для успешного проведения экзамена студент со своей стороны должен обеспечить возможность оперативного написания формул в ответ на вопросы экзаменатора. Для этого можно использовать графический планшет или установить свой телефон в качестве веб-камеры над столом и далее писать ручкой на бумаге.
-
На экзамене при подготовке билета можно пользоваться любыми материалами; при ответе ничем пользоваться нельзя.
+
[[Media:rl_exam_questions_2020.pdf|Список вопросов к экзамену]]
== Расписание занятий ==
== Расписание занятий ==
Строка 88: Строка 89:
| TD-обучение. Deep Q-Network (DQN).
| TD-обучение. Deep Q-Network (DQN).
|
|
 +
* [[Media:TD_learning.pdf|Слайды занятия (TD-learning)]]
 +
* [[Media:Deep_Q_learning.pdf|Слайды занятия (DQN)]]‎
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.6
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.6
* [https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf DQN]
* [https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf DQN]
-
* [https://arxiv.org/pdf/1509.06461.pdf Double DQN]
 
|
|
* [https://distill.pub/2019/paths-perspective-on-value-learning/ Визуализация TD-обучения (distill)]
* [https://distill.pub/2019/paths-perspective-on-value-learning/ Визуализация TD-обучения (distill)]
 +
* [https://arxiv.org/pdf/1509.06461.pdf Double DQN]
* [https://arxiv.org/pdf/1511.05952.pdf Prioritized Experience Replay]
* [https://arxiv.org/pdf/1511.05952.pdf Prioritized Experience Replay]
* [https://openreview.net/pdf?id=r1lyTjAqYX R2D2]
* [https://openreview.net/pdf?id=r1lyTjAqYX R2D2]
 +
* [https://arxiv.org/abs/2003.13350 Agent57]
|-
|-
| Семинар
| Семинар
Строка 114: Строка 118:
| Policy gradient theorem. Advantage Actor-Critic (A2C).
| Policy gradient theorem. Advantage Actor-Critic (A2C).
|
|
 +
* [[Media:PolicyGradientWhiteboard.svg|Доска занятия]]
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.13
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.13
* [https://arxiv.org/pdf/1602.01783.pdf A2C]
* [https://arxiv.org/pdf/1602.01783.pdf A2C]
Строка 134: Строка 139:
| Generalized Advantage Estimation (GAE). Proximal Policy Optimization (PPO).
| Generalized Advantage Estimation (GAE). Proximal Policy Optimization (PPO).
|
|
 +
* [[Media:PPO.pdf|Слайды занятия]]
* [https://arxiv.org/pdf/1506.02438.pdf GAE]
* [https://arxiv.org/pdf/1506.02438.pdf GAE]
* [https://arxiv.org/pdf/1707.06347.pdf PPO]
* [https://arxiv.org/pdf/1707.06347.pdf PPO]
-
* [https://arxiv.org/pdf/2005.12729.pdf Implementation matters in RL]
 
|
|
 +
* [https://arxiv.org/pdf/2005.12729.pdf Implementation matters in RL]
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.12
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.12
|-
|-
Строка 143: Строка 149:
| Deep Deterministic Policy Gradient (DDPG). Soft Actor-Critic (SAC).
| Deep Deterministic Policy Gradient (DDPG). Soft Actor-Critic (SAC).
|
|
 +
* [[Media:ContinuousControl.svg|Доска занятия]]
* [https://arxiv.org/pdf/1509.02971.pdf DDPG]
* [https://arxiv.org/pdf/1509.02971.pdf DDPG]
* [https://arxiv.org/pdf/1801.01290.pdf SAC]
* [https://arxiv.org/pdf/1801.01290.pdf SAC]
Строка 176: Строка 183:
== Материалы ==
== Материалы ==
 +
* [https://github.com/FortsAndMills/RL-Theory-book/blob/main/RL_Theory_Book.pdf Полунеофициальный конспект] (возможны ошибки! Просьба всем собирать баги и опечатки!)
* [https://github.com/yandexdataschool/Practical_RL Курс Practical RL (ШАД)]
* [https://github.com/yandexdataschool/Practical_RL Курс Practical RL (ШАД)]
* [https://www.youtube.com/playlist?list=PLkFD6_40KJIxJMR-j5A1mkxK26gh_qg37 Курс Deep Reinforcement Learning (CS 285), UC Berkeley]
* [https://www.youtube.com/playlist?list=PLkFD6_40KJIxJMR-j5A1mkxK26gh_qg37 Курс Deep Reinforcement Learning (CS 285), UC Berkeley]

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

В отличие от классического машинного обучения, в обучении с подкреплением алгоритму на вход не поступает обучающая выборка. Вместо этого, обучение проводится "методом проб и ошибок": агент должен сам собрать данные в ходе взаимодействия с окружающим миром (средой) и на основе собранного опыта научиться максимизировать получаемый отклик - подкрепление, или награду. Курс направлен на изучение алгоритмов последних лет, показывающих state-of-the-art результаты во многих задачах дискретного и непрерывного управления за счёт совмещения классической теории с парадигмой глубинного обучения.

Читается в 3-м семестре для магистров каф. ММП.

Преподаватели: Кропотов Дмитрий, Бобров Евгений, Иванов Сергей, Темирчев Павел

Расписание: по вторникам в 12-15

Ссылка на Zoom: ссылка, идентификатор: 880 2271 0514, пароль: 638344

Видеозаписи занятий: ссылка

Инвайт в AnyTask: HTA74nV

Канал в Telegram группе: ссылка

Содержание

Критерии оценки

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

Итоговая оценка = Округл.вверх (0.3 * Экз + 0.7 * Лаб)

Оценке 5 в пятибалльной шкале соответствует оценка 8 и выше, оценке 4 - оценка [6, 8), оценке 3 - промежуток [4, 6). Помимо баллов необходимо также выполнить следующие условия:

Итог Необходимые условия
5 сдано не менее 4 заданий, оценка за экзамен >= 6
4 сдано не менее 3 заданий, оценка за экзамен >= 4
3 сдано не менее 2 заданий, оценка за экзамен >= 4

Домашние задания

Сдавать лабораторные можно в течение недели после мягкого дедлайна. За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания. Максимальный балл за лабораторные - 80 баллов; итоговая оценка за лабораторные получается делением на восемь.

Лабораторная Ориентировочная дата выдачи
(может быть изменена!)
Срок Баллы Штраф
за день опоздания
CEM 8 сентября 1 неделя 10 -0.5
Dyn. prog. 22 сентября 1 неделя 10 -0.5
DQN 6 октября 2 недели 20 -1
A2C 27 октября 2 недели 20 -1
PPO 17 ноября 2 недели 20 -1

Экзамен

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

Список вопросов к экзамену

Расписание занятий

Занятие Материалы Дополнительные материалы
Лекция Введение в курс. Кросс-энтропийный метод (CEM).
Семинар Библиотека OpenAI gym. Реализация табличного кросс-энтропийного метода.
Лекция Динамическое программирование. Value Iteration, Policy Iteration.
Лекция TD-обучение. Deep Q-Network (DQN).
Семинар Q-обучение.
Лекция Distributional RL. Categorical DQN (c51), Quantile Regression DQN (QR-DQN).
Лекция Policy gradient theorem. Advantage Actor-Critic (A2C).
Семинар REINFORCE.
Лекция Trust-Region Policy Optimization (TRPO).
Лекция Generalized Advantage Estimation (GAE). Proximal Policy Optimization (PPO).
Лекция Deep Deterministic Policy Gradient (DDPG). Soft Actor-Critic (SAC).
Лекция Имитационное обучение. Обратное обучение с подкреплением.
Лекция Monte-Carlo Tree Search. AlphaZero, MuZero.
Лекция Linear Quadratic Regulator (LQR). Model-based RL.

Материалы