Обучение с подкреплением (курс лекций) / 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-балльной шкале рассчитывается по формуле:  | 
'''Итоговая оценка = Округл.вверх (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 баллов; итоговая оценка за лабораторные получается делением на восемь.  | 
{| 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 ||   | + |  | PPO || 17 ноября || 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://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://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. | 
Материалы
- Полунеофициальный конспект (возможны ошибки! Просьба всем собирать баги и опечатки!)
 - Курс Practical RL (ШАД)
 - Курс Deep Reinforcement Learning (CS 285), UC Berkeley
 

