Обучение с подкреплением (курс лекций) / 2021
Материал из MachineLearning.
(Новая: 250px В отличие от классического машинного обучения, в обучении с подкреплени...) |
(→Материалы) |
||
(18 промежуточных версий не показаны.) | |||
Строка 9: | Строка 9: | ||
'''Расписание:''' по вторникам в 12-15, ауд. 507 | '''Расписание:''' по вторникам в 12-15, ауд. 507 | ||
- | '''Канал в Telegram | + | '''Канал в Telegram:''' [https://t.me/joinchat/VkEFFxdonGFlMzAy ссылка] |
+ | |||
+ | '''Экзамен по курсу состоится очно, 14 января, в 11:00.''' | ||
==Критерии оценки== | ==Критерии оценки== | ||
Строка 21: | Строка 23: | ||
!Итог !! Необходимые условия | !Итог !! Необходимые условия | ||
|- | |- | ||
- | | 5 || сдано не менее | + | | 5 || сдано не менее 4 заданий, оценка за экзамен >= 6 |
|- | |- | ||
- | | 4 || сдано не менее | + | | 4 || сдано не менее 3 заданий, оценка за экзамен >= 4 |
|- | |- | ||
- | | 3 || сдано не менее | + | | 3 || сдано не менее 2 заданий, оценка за экзамен >= 4 |
|- | |- | ||
|} | |} | ||
Строка 31: | Строка 33: | ||
== Домашние задания == | == Домашние задания == | ||
- | Сдавать лабораторные можно в течение недели после мягкого дедлайна. За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания. Максимальный балл за лабораторные - | + | Сдавать лабораторные можно в течение недели после мягкого дедлайна. За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания. Максимальный балл за лабораторные - 80 баллов; итоговая оценка за лабораторные получается делением на восемь. |
Лабораторные, сданные позже недели после мягкого дедлайна, не приносят баллов, но учитываются в '''необходимых условиях''' для конкретной оценки (см. выше). | Лабораторные, сданные позже недели после мягкого дедлайна, не приносят баллов, но учитываются в '''необходимых условиях''' для конкретной оценки (см. выше). | ||
Строка 38: | Строка 40: | ||
!Лабораторная !! Ориентировочная дата выдачи<br>(может быть изменена!) !! Срок !! Баллы !! Штраф<br> за день опоздания | !Лабораторная !! Ориентировочная дата выдачи<br>(может быть изменена!) !! Срок !! Баллы !! Штраф<br> за день опоздания | ||
|- | |- | ||
- | | CEM || 14 сентября || 1 неделя || 10 || -0. | + | | CEM || 14 сентября || 1 неделя || 10 || -0.3 |
|- | |- | ||
- | | Dyn. prog. || | + | | Dyn. prog. || 21 сентября || 1 неделя || 10 || -0.3 |
|- | |- | ||
- | | DQN || | + | | DQN || 5 октября || 2 недели || 20 || -0.6 |
|- | |- | ||
- | | A2C || | + | | A2C || 26 октября || 2 недели || 20 || -0.6 |
|- | |- | ||
- | | PPO || | + | | PPO || 9 ноября || 2 недели || 20 || -0.6 |
- | + | ||
- | + | ||
|} | |} | ||
== Экзамен == | == Экзамен == | ||
- | На экзамене все студенты берут случайный билет. В течение часа студент самостоятельно пишет ответ на экзаменационный вопрос | + | Экзамен состоится очно, '''14 января''', в 11:00. На экзамене все студенты берут случайный билет. В течение часа студент самостоятельно пишет ответ на экзаменационный вопрос, при этом можно пользоваться любыми материалами. Далее студент устно отвечает билет экзаменатору и обсуждаются различные вопросы по курсу уже без использования материалов. Для положительной оценки за экзамен необходимо также справиться с вопросами из теоретического минимума. |
- | + | [[Media:rl_exam_questions_2021.pdf|Список вопросов к экзамену]] | |
== Расписание занятий == | == Расписание занятий == | ||
Строка 88: | Строка 88: | ||
| Лекция<br> | | Лекция<br> | ||
''21 сентября'' | ''21 сентября'' | ||
- | | | + | | Табличные методы. |
| | | | ||
- | * [https://drive.google.com/file/d/1Z4W_-0IaMNpZnhnMkqcDVM_EA79GFJo-/view Sutton, Barto], ch.6 | + | * [[Media:TD_learning_2021.pdf|Слайды занятия]] |
- | + | * [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. |