Обучение с подкреплением (курс лекций) / 2022
Материал из MachineLearning.
(Новая: 250px В отличие от классического машинного обучения, в обучении с подкреплени...) |
(→Критерии оценки) |
||
(6 промежуточных версий не показаны.) | |||
Строка 12: | Строка 12: | ||
'''Канал в Telegram:''' [https://t.me/+KIunFKnxEEc5ZTMy ссылка] | '''Канал в Telegram:''' [https://t.me/+KIunFKnxEEc5ZTMy ссылка] | ||
+ | |||
+ | '''Видеозаписи занятий:''' [https://www.youtube.com/playlist?list=PLVF5PzSHILHShpQTIiYiR-kGEHLfYx9Qo ссылка] | ||
'''По курсу предусмотрен экзамен, дата и время будут анонсированы позже.''' | '''По курсу предусмотрен экзамен, дата и время будут анонсированы позже.''' | ||
Строка 17: | Строка 19: | ||
==Критерии оценки== | ==Критерии оценки== | ||
- | В курсе предусмотрено | + | В курсе предусмотрено пять лабораторных работ в формате ноутбуков и устный экзамен. Итоговая оценка по курсу в 10-балльной шкале рассчитывается по формуле: |
'''Итоговая оценка = Округл.вверх (0.3 * Экз + 0.7 * Лаб)''' | '''Итоговая оценка = Округл.вверх (0.3 * Экз + 0.7 * Лаб)''' | ||
Строка 25: | Строка 27: | ||
!Итог !! Необходимые условия | !Итог !! Необходимые условия | ||
|- | |- | ||
- | | 5 || сдано не менее | + | | 5 || сдано не менее 4 заданий, оценка за экзамен >= 6 |
|- | |- | ||
- | | 4 || сдано не менее | + | | 4 || сдано не менее 3 заданий, оценка за экзамен >= 4 |
|- | |- | ||
- | | 3 || сдано не менее | + | | 3 || сдано не менее 2 заданий, оценка за экзамен >= 4 |
|- | |- | ||
|} | |} | ||
Строка 35: | Строка 37: | ||
== Домашние задания == | == Домашние задания == | ||
- | Максимальный балл за лабораторные - | + | Максимальный балл за лабораторные - 80 баллов; итоговая оценка за лабораторные получается делением на восемь. За некоторые задания можно будет получить бонусные баллы, о чем будет объявляться при выдаче задания. |
Сдавать лабораторные можно в течение недели после мягкого дедлайна (работы сданные в этот период облагаются штрафом: см. таблицу ниже). Лабораторные, сданные позже недели после мягкого дедлайна, не приносят баллов, но учитываются в '''необходимых условиях''' для конкретной оценки (см. выше). | Сдавать лабораторные можно в течение недели после мягкого дедлайна (работы сданные в этот период облагаются штрафом: см. таблицу ниже). Лабораторные, сданные позже недели после мягкого дедлайна, не приносят баллов, но учитываются в '''необходимых условиях''' для конкретной оценки (см. выше). | ||
Строка 42: | Строка 44: | ||
!Лабораторная !! Ориентировочная дата выдачи<br>(может быть изменена!) !! Срок !! Баллы !! Штраф<br> за день опоздания | !Лабораторная !! Ориентировочная дата выдачи<br>(может быть изменена!) !! Срок !! Баллы !! Штраф<br> за день опоздания | ||
|- | |- | ||
- | | CEM || 16 сентября || | + | | [https://github.com/eugenbobrov/practical-rl/blob/master/hw-1-deep-crossentropy-method/hw-1-deep-crossentropy-method.ipynb CEM] || 16 сентября || 2 недели || 10 || -0.3 |
|- | |- | ||
- | | Dyn. prog. || | + | | [https://github.com/eugenbobrov/practical-rl/tree/master/hw-2-value-policy-iteration Dyn. prog.] || 30 сентября || 1 неделя || 10 || -0.3 |
|- | |- | ||
| DQN || 7 октября || 2 недели || 20 || -0.6 | | DQN || 7 октября || 2 недели || 20 || -0.6 | ||
Строка 52: | Строка 54: | ||
| PPO || 18 ноября || 2 недели || 20 || -0.6 | | PPO || 18 ноября || 2 недели || 20 || -0.6 | ||
|- | |- | ||
- | |||
|} | |} | ||
Строка 63: | Строка 64: | ||
{| class = "standard" | {| class = "standard" | ||
- | ! !! Занятие !! Материалы !! Дополнительные материалы | + | ! !! Занятие !! Материалы !! Дополнительные материалы !! Видеозапись |
|- | |- | ||
| Лекция<br> | | Лекция<br> | ||
Строка 75: | Строка 76: | ||
* [https://lilianweng.github.io/lil-log/2019/09/05/evolution-strategies.html Обзор эволюционных стратегий] | * [https://lilianweng.github.io/lil-log/2019/09/05/evolution-strategies.html Обзор эволюционных стратегий] | ||
* [https://arxiv.org/pdf/1906.04358.pdf WANN] | * [https://arxiv.org/pdf/1906.04358.pdf WANN] | ||
+ | | | ||
|- | |- | ||
| Семинар<br> | | Семинар<br> | ||
''16 сентября'' | ''16 сентября'' | ||
| Библиотека OpenAI gym. Реализация табличного кросс-энтропийного метода. | | Библиотека OpenAI gym. Реализация табличного кросс-энтропийного метода. | ||
+ | | | ||
| | | | ||
| | | | ||
Строка 90: | Строка 93: | ||
| | | | ||
* [https://lilianweng.github.io/lil-log/2018/02/19/a-long-peek-into-reinforcement-learning.html A (Long) Peek into Reinforcement Learning] | * [https://lilianweng.github.io/lil-log/2018/02/19/a-long-peek-into-reinforcement-learning.html A (Long) Peek into Reinforcement Learning] | ||
- | |||
- | |||
- | |||
- | |||
- | |||
| | | | ||
|- | |- | ||
Строка 106: | Строка 104: | ||
| | | | ||
* [https://distill.pub/2019/paths-perspective-on-value-learning/ Визуализация TD-обучения (distill)] | * [https://distill.pub/2019/paths-perspective-on-value-learning/ Визуализация TD-обучения (distill)] | ||
+ | | | ||
|- | |- | ||
| Семинар<br> | | Семинар<br> | ||
''30 сентября'' | ''30 сентября'' | ||
| Табличное Q-обучение. | | Табличное Q-обучение. | ||
+ | | | ||
| | | | ||
| | | | ||
Строка 126: | Строка 126: | ||
* [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> | | Семирнар<br> | ||
''7 октября'' | ''7 октября'' | ||
| Модификации DQN. | | Модификации DQN. | ||
+ | | | ||
| | | | ||
| | | | ||
Строка 142: | Строка 144: | ||
* [https://arxiv.org/pdf/1806.06923.pdf Implicit Quantile Networks (IQN)] | * [https://arxiv.org/pdf/1806.06923.pdf Implicit Quantile Networks (IQN)] | ||
* [https://arxiv.org/pdf/1710.02298.pdf Rainbow DQN] | * [https://arxiv.org/pdf/1710.02298.pdf Rainbow DQN] | ||
+ | | | ||
|- | |- | ||
| Семинар<br> | | Семинар<br> | ||
''14 октября'' | ''14 октября'' | ||
| Distributional RL - продолжение. | | Distributional RL - продолжение. | ||
+ | | | ||
| | | | ||
| | | | ||
Строка 154: | Строка 158: | ||
| | | | ||
* [https://banditalgs.com полезный ресурс по бандитам] | * [https://banditalgs.com полезный ресурс по бандитам] | ||
+ | | | ||
| | | | ||
|- | |- | ||
Строка 168: | Строка 173: | ||
* [https://arxiv.org/abs/1605.09674 Variational Information Maximizing Exploration (VIME)] | * [https://arxiv.org/abs/1605.09674 Variational Information Maximizing Exploration (VIME)] | ||
* [https://arxiv.org/abs/2002.06038 Never Give Up (NGU)] | * [https://arxiv.org/abs/2002.06038 Never Give Up (NGU)] | ||
+ | | | ||
|- | |- | ||
| Лекция<br> | | Лекция<br> | ||
Строка 178: | Строка 184: | ||
* [https://lilianweng.github.io/lil-log/2018/04/08/policy-gradient-algorithms.html#what-is-policy-gradient Обзор Policy Gradient алгоритмов] | * [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] | * [https://hackernoon.com/intuitive-rl-intro-to-advantage-actor-critic-a2c-4ff545978752 Комикс про A2C] | ||
+ | | | ||
|- | |- | ||
| Семинар<br> | | Семинар<br> | ||
''28 октября'' | ''28 октября'' | ||
| REINFORCE. | | REINFORCE. | ||
+ | | | ||
| | | | ||
| | | | ||
Строка 190: | Строка 198: | ||
| | | | ||
* [https://arxiv.org/pdf/1502.05477.pdf TRPO] | * [https://arxiv.org/pdf/1502.05477.pdf TRPO] | ||
+ | | | ||
| | | | ||
|- | |- | ||
Строка 200: | Строка 209: | ||
| | | | ||
* [https://arxiv.org/pdf/2005.12729.pdf Implementation matters in RL] | * [https://arxiv.org/pdf/2005.12729.pdf Implementation matters in RL] | ||
+ | | | ||
|- | |- | ||
| Семинар<br> | | Семинар<br> | ||
Строка 208: | Строка 218: | ||
| | | | ||
* [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 | ||
+ | | | ||
|- | |- | ||
| Лекция<br> | | Лекция<br> | ||
Строка 218: | Строка 229: | ||
| | | | ||
* [https://arxiv.org/abs/2005.04269 Truncated Quantile Critics (TQC)] | * [https://arxiv.org/abs/2005.04269 Truncated Quantile Critics (TQC)] | ||
+ | | | ||
|- | |- | ||
| Семинар<br> | | Семинар<br> | ||
Строка 224: | Строка 236: | ||
| | | | ||
* [https://arxiv.org/pdf/1805.00909.pdf RL as probabilistic inference] | * [https://arxiv.org/pdf/1805.00909.pdf RL as probabilistic inference] | ||
+ | | | ||
| | | | ||
|- | |- | ||
Строка 229: | Строка 242: | ||
''2 декабря'' | ''2 декабря'' | ||
| Имитационное обучение. | | Имитационное обучение. | ||
+ | | | ||
| | | | ||
| | | | ||
Строка 238: | Строка 252: | ||
* [https://arxiv.org/pdf/1603.00448.pdf Guided Cost Learning] | * [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/1606.03476.pdf Generative Adversarial Imitation Learning (GAIL)] | ||
+ | | | ||
| | | | ||
|- | |- | ||
Строка 243: | Строка 258: | ||
''9 декабря'' | ''9 декабря'' | ||
| Monte Carlo Tree Search. | | Monte Carlo Tree Search. | ||
+ | | | ||
| | | | ||
| | | | ||
Строка 254: | Строка 270: | ||
| | | | ||
* [https://miro.medium.com/max/2000/1*0pn33bETjYOimWjlqDLLNw.png AlphaZero in one picture] | * [https://miro.medium.com/max/2000/1*0pn33bETjYOimWjlqDLLNw.png AlphaZero in one picture] | ||
+ | | | ||
|- | |- | ||
| Лекция<br> | | Лекция<br> | ||
Строка 263: | Строка 280: | ||
| | | | ||
* [https://worldmodels.github.io/ World Models] | * [https://worldmodels.github.io/ World Models] | ||
+ | | | ||
|- | |- | ||
| Семинар<br> | | Семинар<br> | ||
Строка 270: | Строка 288: | ||
* [https://arxiv.org/abs/1912.01603 Dreamer v1] | * [https://arxiv.org/abs/1912.01603 Dreamer v1] | ||
* [https://arxiv.org/abs/2010.02193 Dreamer v2] | * [https://arxiv.org/abs/2010.02193 Dreamer v2] | ||
+ | | | ||
| | | | ||
|- | |- |
Текущая версия
В отличие от классического машинного обучения, в обучении с подкреплением алгоритму на вход не поступает обучающая выборка. Вместо этого, обучение проводится "методом проб и ошибок": агент должен сам собрать данные в ходе взаимодействия с окружающим миром (средой) и на основе собранного опыта научиться максимизировать получаемый отклик - подкрепление, или награду. Курс направлен на изучение алгоритмов последних лет, показывающих state-of-the-art результаты во многих задачах дискретного и непрерывного управления за счёт совмещения классической теории с парадигмой глубинного обучения.
Читается в 3-м семестре для магистров каф. ММП.
Преподаватели: Кропотов Дмитрий, Темирчев Павел, Илья Синильщиков, Алексей Медведев
Расписание:
- лекции: по пятницам в 14-35, ауд. 729
- семинары: по пятницам в 16:20, ауд. 729
Канал в 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 | 16 сентября | 2 недели | 10 | -0.3 |
Dyn. prog. | 30 сентября | 1 неделя | 10 | -0.3 |
DQN | 7 октября | 2 недели | 20 | -0.6 |
A2C | 28 октября | 2 недели | 20 | -0.6 |
PPO | 18 ноября | 2 недели | 20 | -0.6 |
Экзамен
Экзамен состоится очно, дата проведения будет объявлена позже. На экзамене все студенты берут случайный билет. В течение часа студент самостоятельно пишет ответ на экзаменационный вопрос, при этом можно пользоваться любыми материалами. Далее студент устно отвечает билет экзаменатору и обсуждаются различные вопросы по курсу уже без использования материалов. Для положительной оценки за экзамен необходимо также справиться с вопросами из теоретического минимума.
Здесь будет список вопросов к экзамену
Расписание занятий
Занятие | Материалы | Дополнительные материалы | Видеозапись | |
---|---|---|---|---|
Лекция 16 сентября | Введение в курс. Кросс-энтропийный метод (CEM). | |||
Семинар 16 сентября | Библиотека OpenAI gym. Реализация табличного кросс-энтропийного метода. | |||
Лекция 23 сентября | Динамическое программирование. Value Iteration, Policy Iteration. |
| ||
Лекция 30 сентября | Табличные методы. TD-обучение. |
| ||
Семинар 30 сентября | Табличное Q-обучение. | |||
Лекция 7 октября | Deep Q-Network (DQN) и его модификации. | |||
Семирнар 7 октября | Модификации DQN. | |||
Лекция 14 октября | Distributional RL. Quantile Regression DQN (QR-DQN). | |||
Семинар 14 октября | Distributional RL - продолжение. | |||
Лекция 21 октября | Многорукие бандиты. | |||
Семинар 21 октября | Внутренняя мотивация для исследования среды. | |||
Лекция 28 октября | Policy gradient подход. Advantage Actor-Critic (A2C). |
| ||
Семинар 28 октября | REINFORCE. | |||
Лекция 11 ноября | Trust-Region Policy Optimization (TRPO). | |||
Лекция 18 ноября | Proximal Policy Optimization (PPO). | |||
Семинар 18 ноября | Generalized Advantage Estimation (GAE). |
| ||
Лекция 25 ноября | Непрерывное управление. | |||
Семинар 25 ноября | Soft Actor Critic. Управление, как вероятностный вывод. | |||
Лекция 2 декабря | Имитационное обучение. | |||
Семинар 2 декабря | Обратное обучение с подкреплением. | |||
Лекция 9 декабря | Monte Carlo Tree Search. | |||
Семинар 9 декабря | AlphaZero, MuZero. | |||
Лекция 16 декабря | Linear Quadratic Regulator (LQR). Model-based RL. | |||
Семинар 16 декабря | Dreamer |