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

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

(Различия между версиями)
Перейти к: навигация, поиск
(Новая: 250px В отличие от классического машинного обучения, в обучении с подкреплени...)
(Материалы)
 
(18 промежуточных версий не показаны.)
Строка 9: Строка 9:
'''Расписание:''' по вторникам в 12-15, ауд. 507
'''Расписание:''' по вторникам в 12-15, ауд. 507
-
'''Канал в Telegram группе:''' [https://t.me/joinchat/VkEFFxdonGFlMzAy]
+
'''Канал в Telegram:''' [https://t.me/joinchat/VkEFFxdonGFlMzAy ссылка]
 +
 
 +
'''Экзамен по курсу состоится очно, 14 января, в 11:00.'''
==Критерии оценки==
==Критерии оценки==
Строка 21: Строка 23:
!Итог !! Необходимые условия
!Итог !! Необходимые условия
|-
|-
-
| 5 || сдано не менее 5 заданий, оценка за экзамен >= 6
+
| 5 || сдано не менее 4 заданий, оценка за экзамен >= 6
|-
|-
-
| 4 || сдано не менее 4 заданий, оценка за экзамен >= 4
+
| 4 || сдано не менее 3 заданий, оценка за экзамен >= 4
|-
|-
-
| 3 || сдано не менее 3 заданий, оценка за экзамен >= 4
+
| 3 || сдано не менее 2 заданий, оценка за экзамен >= 4
|-
|-
|}
|}
Строка 31: Строка 33:
== Домашние задания ==
== Домашние задания ==
-
Сдавать лабораторные можно в течение недели после мягкого дедлайна. За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания. Максимальный балл за лабораторные - 100 баллов; итоговая оценка за лабораторные получается делением на десять.
+
Сдавать лабораторные можно в течение недели после мягкого дедлайна. За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания. Максимальный балл за лабораторные - 80 баллов; итоговая оценка за лабораторные получается делением на восемь.
Лабораторные, сданные позже недели после мягкого дедлайна, не приносят баллов, но учитываются в '''необходимых условиях''' для конкретной оценки (см. выше).
Лабораторные, сданные позже недели после мягкого дедлайна, не приносят баллов, но учитываются в '''необходимых условиях''' для конкретной оценки (см. выше).
Строка 38: Строка 40:
!Лабораторная !! Ориентировочная дата выдачи<br>(может быть изменена!) !! Срок !! Баллы !! Штраф<br> за день опоздания
!Лабораторная !! Ориентировочная дата выдачи<br>(может быть изменена!) !! Срок !! Баллы !! Штраф<br> за день опоздания
|-
|-
-
| CEM || 14 сентября || 1 неделя || 10 || -0.5
+
| CEM || 14 сентября || 1 неделя || 10 || -0.3
|-
|-
-
| Dyn. prog. || 28 сентября || 1 неделя || 10 || -0.5
+
| Dyn. prog. || 21 сентября || 1 неделя || 10 || -0.3
|-
|-
-
| DQN || 12 октября || 2 недели || 20 || -1
+
| DQN || 5 октября || 2 недели || 20 || -0.6
|-
|-
-
| A2C || 2 ноября || 2 недели || 20 || -1
+
| A2C || 26 октября || 2 недели || 20 || -0.6
|-
|-
-
| PPO || 23 ноября || 2 недели || 20 || -1
+
| PPO || 9 ноября || 2 недели || 20 || -0.6
-
|-
+
-
| MCTS || 14 декабря || 2 недели || 20 || -1
+
|}
|}
== Экзамен ==
== Экзамен ==
-
На экзамене все студенты берут случайный билет. В течение часа студент самостоятельно пишет ответ на экзаменационный вопрос. При этом можно пользоваться любыми материалами. Далее студент устно отвечает билет экзаменатору.
+
Экзамен состоится очно, '''14 января''', в 11:00. На экзамене все студенты берут случайный билет. В течение часа студент самостоятельно пишет ответ на экзаменационный вопрос, при этом можно пользоваться любыми материалами. Далее студент устно отвечает билет экзаменатору и обсуждаются различные вопросы по курсу уже без использования материалов. Для положительной оценки за экзамен необходимо также справиться с вопросами из теоретического минимума.
-
'''Список вопросов к экзамену''': TBA
+
[[Media:rl_exam_questions_2021.pdf|Список вопросов к экзамену]]
== Расписание занятий ==
== Расписание занятий ==
Строка 88: Строка 88:
| Лекция<br>
| Лекция<br>
''21 сентября''
''21 сентября''
-
| TD-обучение. Deep Q-Network (DQN).
+
| Табличные методы.
|
|
-
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.6
+
* [[Media:TD_learning_2021.pdf|Слайды занятия]]
-
* [https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf DQN]
+
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.5-6
|
|
* [https://distill.pub/2019/paths-perspective-on-value-learning/ Визуализация TD-обучения (distill)]
* [https://distill.pub/2019/paths-perspective-on-value-learning/ Визуализация TD-обучения (distill)]
 +
|-
 +
| Семинар<br>
 +
''28 сентября''
 +
| Q-обучение.
 +
|
 +
|
 +
|-
 +
| Лекция<br>
 +
''5 октября''
 +
| Deep Q-Network (DQN) и его модификации.
 +
|
 +
* [[Media:Deep_Q_learning_2021.pdf|Слайды занятия]]
 +
* [https://www.cs.toronto.edu/~vmnih/docs/dqn.pdf DQN]
* [https://arxiv.org/pdf/1509.06461.pdf Double DQN]
* [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://arxiv.org/abs/1706.10295 Noisy Networks]
 +
* [https://arxiv.org/abs/1511.06581 Dueling DQN]
 +
|
* [https://openreview.net/pdf?id=r1lyTjAqYX R2D2]
* [https://openreview.net/pdf?id=r1lyTjAqYX R2D2]
* [https://arxiv.org/abs/2003.13350 Agent57]
* [https://arxiv.org/abs/2003.13350 Agent57]
 +
|-
 +
| Лекция<br>
 +
''12 октября''
 +
| Distributional RL. Categorical DQN (c51), Quantile Regression DQN (QR-DQN).
 +
|
 +
* [https://www.youtube.com/watch?v=aNE2UWaOfpQ Видеолекция]
 +
* [https://arxiv.org/pdf/1707.06887.pdf Categorical DQN]
 +
* [https://arxiv.org/pdf/1710.10044.pdf QR-DQN]
 +
|
 +
* [https://arxiv.org/pdf/1806.06923.pdf Implicit Quantile Networks (IQN)]
 +
* [https://arxiv.org/pdf/1710.02298.pdf Rainbow DQN]
 +
|-
 +
| Лекция<br>
 +
''19 октября''
 +
| Внутренняя мотивация для исследования среды.
 +
|
 +
* [[Media:Exploration-vs-exploitation.pdf|Слайды занятия]]
 +
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.2
 +
* [https://arxiv.org/abs/1810.12894 Random Network Distillation (RND)]
 +
* [https://arxiv.org/abs/1705.05363 Intrinsic Curiosity Module (ICM)]
 +
|
 +
* [https://lilianweng.github.io/lil-log/2020/06/07/exploration-strategies-in-deep-reinforcement-learning.html Обзор модулей внутренней мотивации]
 +
* [https://arxiv.org/abs/1605.09674 Variational Information Maximizing Exploration (VIME)]
 +
* [https://arxiv.org/abs/2002.06038 Never Give Up (NGU)]
 +
|-
 +
| Лекция<br>
 +
''26 октября''
 +
| Policy gradient подход. Advantage Actor-Critic (A2C).
 +
|
 +
* [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.13
 +
* [https://arxiv.org/pdf/1602.01783.pdf A2C]
 +
|
 +
* [https://lilianweng.github.io/lil-log/2018/04/08/policy-gradient-algorithms.html#what-is-policy-gradient Обзор Policy Gradient алгоритмов]
 +
* [https://hackernoon.com/intuitive-rl-intro-to-advantage-actor-critic-a2c-4ff545978752 Комикс про A2C]
 +
|-
 +
| Семинар<br>
 +
''26 октября''
 +
| REINFORCE.
 +
|
 +
|
 +
|-
 +
| Лекция<br>
 +
''2 ноября''
 +
| Trust-Region Policy Optimization (TRPO).
 +
|
 +
* [https://arxiv.org/pdf/1502.05477.pdf TRPO]
 +
|
 +
|-
 +
| Лекция<br>
 +
''9 ноября''
 +
| Generalized Advantage Estimation (GAE). Proximal Policy Optimization (PPO).
 +
|
 +
* [[Media:MSU_2021_PPO.pdf|Слайды занятия]]
 +
* [https://arxiv.org/pdf/1506.02438.pdf GAE]
 +
* [https://arxiv.org/pdf/1707.06347.pdf PPO]
 +
|
 +
* [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
 +
|-
 +
| Лекция<br>
 +
''16 ноября''
 +
| Непрерывное управление.
 +
|
 +
* [https://arxiv.org/pdf/1509.02971.pdf Deep Deterministic Policy Gradient (DDPG)]
 +
* [https://arxiv.org/pdf/1802.09477.pdf Twin-Delayed DDPG (TD3)]
 +
* [https://arxiv.org/pdf/1801.01290.pdf Soft Actor-Critic (SAC)]
 +
|
 +
* [https://arxiv.org/abs/2005.04269 Truncated Quantile Critics (TQC)]
 +
|-
 +
| Лекция<br>
 +
''23 ноября''
 +
| Имитационное обучение. Обратное обучение с подкреплением.
 +
|
 +
* [https://arxiv.org/pdf/1603.00448.pdf Guided Cost Learning]
 +
* [https://arxiv.org/pdf/1606.03476.pdf Generative Adversarial Imitation Learning (GAIL)]
 +
|
 +
* [https://arxiv.org/pdf/1805.00909.pdf RL as probabilistic inference]
 +
|-
 +
| Лекция<br>
 +
''30 ноября''
 +
| Monte Carlo Tree Search. AlphaZero, MuZero.
 +
|
 +
* [https://discovery.ucl.ac.uk/id/eprint/10045895/1/agz_unformatted_nature.pdf AlphaZero]
 +
* [https://arxiv.org/pdf/1911.08265.pdf MuZero]
 +
|
 +
* [https://miro.medium.com/max/2000/1*0pn33bETjYOimWjlqDLLNw.png AlphaZero in one picture]
 +
|-
 +
| Лекция<br>
 +
''7 декабря''
 +
| Linear Quadratic Regulator (LQR). Model-based RL.
 +
|
 +
* [http://rail.eecs.berkeley.edu/deeprlcourse/static/slides/lec-10.pdf Презентация по MCTS и LQR]
 +
* [http://rail.eecs.berkeley.edu/deeprlcourse/static/slides/lec-11.pdf Презентация по Model-based RL]
 +
|
 +
* [https://worldmodels.github.io/ World Models]
 +
* [https://arxiv.org/abs/2010.02193 Dreamer v.2]
|-
|-
|}
|}
Строка 106: Строка 218:
== Материалы ==
== Материалы ==
-
* [https://github.com/FortsAndMills/RL-Theory-book/blob/main/RL_Theory_Book.pdf Полунеофициальный конспект] (возможны ошибки! Просьба всем собирать баги и опечатки!)
+
* [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, ауд. 507

Канал в Telegram: ссылка

Экзамен по курсу состоится очно, 14 января, в 11:00.

Содержание

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

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

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

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

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

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

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

Лабораторные, сданные позже недели после мягкого дедлайна, не приносят баллов, но учитываются в необходимых условиях для конкретной оценки (см. выше).

Лабораторная Ориентировочная дата выдачи
(может быть изменена!)
Срок Баллы Штраф
за день опоздания
CEM 14 сентября 1 неделя 10 -0.3
Dyn. prog. 21 сентября 1 неделя 10 -0.3
DQN 5 октября 2 недели 20 -0.6
A2C 26 октября 2 недели 20 -0.6
PPO 9 ноября 2 недели 20 -0.6

Экзамен

Экзамен состоится очно, 14 января, в 11:00. На экзамене все студенты берут случайный билет. В течение часа студент самостоятельно пишет ответ на экзаменационный вопрос, при этом можно пользоваться любыми материалами. Далее студент устно отвечает билет экзаменатору и обсуждаются различные вопросы по курсу уже без использования материалов. Для положительной оценки за экзамен необходимо также справиться с вопросами из теоретического минимума.

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

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

Занятие Материалы Дополнительные материалы
Лекция

7 сентября

Введение в курс. Кросс-энтропийный метод (CEM).
Лекция

14 сентября

Динамическое программирование. Value Iteration, Policy Iteration.
Семинар

14 сентября

Библиотека OpenAI gym. Реализация табличного кросс-энтропийного метода.
Лекция

21 сентября

Табличные методы.
Семинар

28 сентября

Q-обучение.
Лекция

5 октября

Deep Q-Network (DQN) и его модификации.
Лекция

12 октября

Distributional RL. Categorical DQN (c51), Quantile Regression DQN (QR-DQN).
Лекция

19 октября

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

26 октября

Policy gradient подход. Advantage Actor-Critic (A2C).
Семинар

26 октября

REINFORCE.
Лекция

2 ноября

Trust-Region Policy Optimization (TRPO).
Лекция

9 ноября

Generalized Advantage Estimation (GAE). Proximal Policy Optimization (PPO).
Лекция

16 ноября

Непрерывное управление.
Лекция

23 ноября

Имитационное обучение. Обратное обучение с подкреплением.
Лекция

30 ноября

Monte Carlo Tree Search. AlphaZero, MuZero.
Лекция

7 декабря

Linear Quadratic Regulator (LQR). Model-based RL.

Страницы курса прошлых лет

2020й год

Материалы