Методы оптимизации в машинном обучении — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
 
(не показано 19 промежуточных версии этого же участника)
Строка 2: Строка 2:
 
Методы оптимизации лежат в основе решения многих задач компьютерных наук. Например, в машинном обучении задачу оптимизации необходимо решать каждый раз при настройке какой-то модели алгоритмов по данным, причём от эффективности решения соответствующей задачи оптимизации зависит практическая применимость самого метода машинного обучения. Данный курс посвящен изучению классических и современных методов решения задач непрерывной оптимизации (в том числе невыпуклых), а также особенностям применения этих методов в задачах оптимизации, возникающих в машинном обучении. Основной акцент в изложении делается на практические аспекты реализации и использования методов. Целью курса является выработка у слушателей навыков по подбору подходящего метода для своей задачи, наиболее полно учитывающего её особенности.
 
Методы оптимизации лежат в основе решения многих задач компьютерных наук. Например, в машинном обучении задачу оптимизации необходимо решать каждый раз при настройке какой-то модели алгоритмов по данным, причём от эффективности решения соответствующей задачи оптимизации зависит практическая применимость самого метода машинного обучения. Данный курс посвящен изучению классических и современных методов решения задач непрерывной оптимизации (в том числе невыпуклых), а также особенностям применения этих методов в задачах оптимизации, возникающих в машинном обучении. Основной акцент в изложении делается на практические аспекты реализации и использования методов. Целью курса является выработка у слушателей навыков по подбору подходящего метода для своей задачи, наиболее полно учитывающего её особенности.
  
'''Преподаватели''': Кропотов Дмитрий Александрович, Гадецкий Артём, Шаповалов Никита, Таскынов Ануар, Бобров Евгений.
+
'''Преподаватели''': Кропотов Дмитрий Александрович, Гадецкий Артём, Кодрян Максим, Шаповалов Никита, Бобров Евгений.
  
 
{| class="wikitable"
 
{| class="wikitable"
 
  ! Группа !! Расписание !! Инвайт для anytask
 
  ! Группа !! Расписание !! Инвайт для anytask
 
  |-
 
  |-
  | 181 || вторник, лекция в 13:00, семинар в 16:20 || align="center"|QdSHCUV
+
  | 181 || вторник, лекция в 13:00, семинар в 16:20, ауд. R406 || align="center"|QdSHCUV
 
  |-
 
  |-
  | 182 || вторник, лекция в 13:00, семинар в 14:40 || align="center"|qgj0NZ4
+
  | 182 || вторник, лекция в 13:00, семинар в 14:40, ауд. R406 || align="center"|qgj0NZ4
 
  |}
 
  |}
  
Строка 15: Строка 15:
  
 
Видеозаписи занятий: [https://www.youtube.com/playlist?list=PLEwK9wdS5g0r4mynGsdH8QDme1VNMXwzz ссылка]
 
Видеозаписи занятий: [https://www.youtube.com/playlist?list=PLEwK9wdS5g0r4mynGsdH8QDme1VNMXwzz ссылка]
 +
 +
== Экзамен ==
 +
[https://drive.google.com/file/d/1FZPTSNvlVH8rsuA1s58eWoL5gKXPnbzq/view?usp=sharing Список вопросов к экзамену + теоретический минимум]
 +
 +
Онлайн-консультация к экзамену запланирована на 22 июня, начало в 13-00.
  
 
== Система выставления оценок по курсу ==
 
== Система выставления оценок по курсу ==
В рамках курса предполагается четыре теоретических и четыре практических домашних заданий, а также устный экзамен в конце курса. Каждое задание и экзамен оцениваются исходя из 10-ти баллов. За задания можно получить дополнительные баллы за выполнение бонусных пунктов. Общая оценка за курс вычисляется по правилу Округление_вверх(0.7*<Оценка_за_семестр> + 0.3*<Оценка_за_экзамен>). <Оценка_за_семестр> = min(10, <Суммарная_оценка_за_задания>*10 / <Максимальная_суммарная_оценка_за_задания_без_бонусов>). Итоговая оценка за курс совпадает с общей оценкой при соблюдении следующих дополнительных условий:  
+
В рамках курса предполагается два теоретических и одно практическое домашнее задание, а также устный экзамен в конце курса. Каждое задание и экзамен оцениваются исходя из 10-ти баллов. За задания можно получить дополнительные баллы за выполнение бонусных пунктов. Общая оценка за курс вычисляется по правилу Округление_вверх(0.6*<Оценка_за_семестр> + 0.4*<Оценка_за_экзамен>). <Оценка_за_семестр> = min(10, <Суммарная_оценка_за_задания>*10 / <Максимальная_суммарная_оценка_за_задания_без_бонусов>). Итоговая оценка за курс совпадает с общей оценкой при соблюдении следующих дополнительных условий:  
 
{| class="wikitable"
 
{| class="wikitable"
 
  ! Итоговая оценка !! Условия  
 
  ! Итоговая оценка !! Условия  
 
  |-
 
  |-
  |align="center"|>=8 || Сданы все задания, кроме одного (на оценку >=4), экзамен сдан на оценку >= 6
+
  |align="center"|>=8 || Сданы все задания, кроме одного, экзамен сдан на оценку >= 6
 
  |-
 
  |-
  |align="center"|>=6 || Сданы все задания, кроме двух (на оценку >=4), экзамен сдан на оценку >= 4
+
  |align="center"|>=6 || Сданы все задания, кроме одного, экзамен сдан на оценку >= 4
 
  |-
 
  |-
  |align="center"|>=4 || Сданы все задания, кроме трех (на оценку >=4), экзамен сдан на оценку >= 4
+
  |align="center"|>=4 || Сданы все задания, кроме двух, экзамен сдан на оценку >= 4
 
  |-
 
  |-
 
  |}
 
  |}
Строка 62: Строка 67:
 
| 09&nbsp;февраля&nbsp;2021
 
| 09&nbsp;февраля&nbsp;2021
 
| Стандартные матричные разложения. Метод Ньютона. || [https://drive.google.com/file/d/1K9xt0seQ_Oi0UcyziwHibhnr7PorNfqe/view?usp=sharing Презентация по подготовке отчётов]
 
| Стандартные матричные разложения. Метод Ньютона. || [https://drive.google.com/file/d/1K9xt0seQ_Oi0UcyziwHibhnr7PorNfqe/view?usp=sharing Презентация по подготовке отчётов]
 +
|-
 +
| align="center"|6
 +
| 16&nbsp;февраля&nbsp;2021
 +
| Метод сопряжённых градиентов. || [https://drive.google.com/file/d/1Ai3ZSuLTb0C6hL5KcAvagzJgKqL1-ySo/view?usp=sharing Презентация]
 +
|-
 +
| align="center"|7
 +
| 02&nbsp;марта&nbsp;2021
 +
| Безгессианный метод Ньютона. Выпуклые множества. || [https://drive.google.com/file/d/1t9_Uvo-xrVd_nIVUk4CGXGfebHcFtTkw/view?usp=sharing Конспект]
 +
|-
 +
| align="center"|8
 +
| 09&nbsp;марта&nbsp;2021
 +
| Квазиньютоновские методы оптимизации. Выпуклые функции. || [https://drive.google.com/file/d/1glvkT1g6C405RT773KwUdKYRW_bhOKct/view?usp=sharing Конспект]
 +
|-
 +
| align="center"|9
 +
| 16&nbsp;марта&nbsp;2021
 +
| Задачи условной оптимизации. Теорема Каруша-Куна-Таккера. || [http://www.machinelearning.ru/wiki/images/7/7f/MOMO18_Seminar7.pdf Конспект]
 +
|-
 +
| align="center"|10
 +
| 23&nbsp;марта&nbsp;2021
 +
| Задача линейного программирования. Симплекс-метод. Эквивалентные преобразования задач оптимизации. Стандартные классы выпуклых условных задач оптимизации. || [https://drive.google.com/file/d/1ghnO3gMssx2IS9LaaOgYXbwwq6Pm8ZXY/view?usp=sharing Конспект]
 +
|-
 +
| align="center"|11
 +
| 30&nbsp;марта&nbsp;2021
 +
| ''Занятия не будет'' ||
 +
|-
 +
| align="center"|12
 +
| 06&nbsp;апреля&nbsp;2021
 +
| Метод Ньютона и метод логарифмических барьеров для решения выпуклых задач условной оптимизации. Матричные преобразования в квазиньютоновских методах. || [http://www.machinelearning.ru/wiki/images/8/81/MOMO12_ipm.pdf Конспект]<br>[http://www.machinelearning.ru/wiki/images/1/10/MOMO18_Seminar6.pdf Конспект]
 +
|-
 +
| align="center"|13
 +
| 13&nbsp;апреля&nbsp;2021
 +
| Негладкая выпуклая оптимизация. Субградиентный метод. Субдифференциальное исчисление. || [http://www.machinelearning.ru/wiki/images/e/e5/MOMO18_Seminar10.pdf Конспект]
 +
|-
 +
| align="center"|14
 +
| 20&nbsp;апреля&nbsp;2021
 +
| Проксимальные методы оптимизации. Сопряженные функции и нормы. || [http://www.machinelearning.ru/wiki/images/1/15/MOMO18_Seminar8.pdf Конспект]
 +
|-
 +
| align="center"|15
 +
| 27&nbsp;апреля&nbsp;2021
 +
| Ускоренный оптимальный метод Нестерова. Проекции и проксимальные операторы. ||
 +
|-
 +
| align="center"|16
 +
| 4&nbsp;мая&nbsp;2021
 +
| ''Занятия не будет'' ||
 +
|-
 +
| align="center"|17
 +
| 11&nbsp;мая&nbsp;2021
 +
| Стохастическая оптимизация. Автоматическое дифференцирование по графу вычислений. ||
 +
|-
 +
| align="center"|18
 +
| 18&nbsp;мая&nbsp;2021
 +
| Дифференцирование через процесс оптимизации. Сведение дискретных задач оптимизации к непрерывным. || [https://arxiv.org/abs/1703.00443 Статья 1]<br> [https://arxiv.org/abs/1502.03492 Статья 2]
 +
|-
 +
| align="center"|19
 +
| 25&nbsp;мая&nbsp;2021
 +
| Ускоренный стохастический метод оптимизации SDCA. Методы Adagrad, RMSprop, ADAM. || [https://www.jmlr.org/papers/volume14/shalev-shwartz13a/shalev-shwartz13a.pdf Статья 1]<br> [https://papers.nips.cc/paper/2013/file/077e29b11be80ab57e1a2ecabb7da330-Paper.pdf Статья 2]
 
|-
 
|-
 
|}
 
|}

Текущая версия на 10:56, 19 июня 2021

Методы оптимизации лежат в основе решения многих задач компьютерных наук. Например, в машинном обучении задачу оптимизации необходимо решать каждый раз при настройке какой-то модели алгоритмов по данным, причём от эффективности решения соответствующей задачи оптимизации зависит практическая применимость самого метода машинного обучения. Данный курс посвящен изучению классических и современных методов решения задач непрерывной оптимизации (в том числе невыпуклых), а также особенностям применения этих методов в задачах оптимизации, возникающих в машинном обучении. Основной акцент в изложении делается на практические аспекты реализации и использования методов. Целью курса является выработка у слушателей навыков по подбору подходящего метода для своей задачи, наиболее полно учитывающего её особенности.

Преподаватели: Кропотов Дмитрий Александрович, Гадецкий Артём, Кодрян Максим, Шаповалов Никита, Бобров Евгений.

Группа Расписание Инвайт для anytask
181 вторник, лекция в 13:00, семинар в 16:20, ауд. R406 QdSHCUV
182 вторник, лекция в 13:00, семинар в 14:40, ауд. R406 qgj0NZ4

Группа в Telegram для вопросов по курсу: ссылка

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

Экзамен

Список вопросов к экзамену + теоретический минимум

Онлайн-консультация к экзамену запланирована на 22 июня, начало в 13-00.

Система выставления оценок по курсу

В рамках курса предполагается два теоретических и одно практическое домашнее задание, а также устный экзамен в конце курса. Каждое задание и экзамен оцениваются исходя из 10-ти баллов. За задания можно получить дополнительные баллы за выполнение бонусных пунктов. Общая оценка за курс вычисляется по правилу Округление_вверх(0.6*<Оценка_за_семестр> + 0.4*<Оценка_за_экзамен>). <Оценка_за_семестр> = min(10, <Суммарная_оценка_за_задания>*10 / <Максимальная_суммарная_оценка_за_задания_без_бонусов>). Итоговая оценка за курс совпадает с общей оценкой при соблюдении следующих дополнительных условий:

Итоговая оценка Условия
>=8 Сданы все задания, кроме одного, экзамен сдан на оценку >= 6
>=6 Сданы все задания, кроме одного, экзамен сдан на оценку >= 4
>=4 Сданы все задания, кроме двух, экзамен сдан на оценку >= 4

Правила сдачи заданий

Теоретические и практические задания сдаются в систему anytask (инвайт см. выше). Эти задания могут быть присланы после срока сдачи, но с задержкой не более одной недели. При этом начисляется штраф из расчёта 0.5 балла в день. Все задания выполняются самостоятельно. Если задание выполнялось сообща или использовались какие-либо сторонние коды и материалы, то об этом должно быть написано в отчёте. В противном случае «похожие» решения считаются плагиатом и все задействованные студенты (в том числе те, у кого списали) будут сурово наказаны.

Теоретические задания сдаются в anytask в виде сканов или набранных в TeX pdf-файлов. ВАЖНО! Присылаемые сканы должны быть высокого качества, присылаться одним файлом, в котором все листы идут в правильном порядке. В случае плохого качества сканов или же сдачи в формате, отличном от pdf, проверяющий имеет право поставить за работу 0, не проверяя.

Лекции и семинары

№ п/п Дата Занятие Материалы
1 12 января 2021 Введение в курс. Скорости сходимости итерационных процессов. Матрично-векторное дифференцирование. Конспект

Конспект

2 19 января 2021 Занятия не будет
3 26 января 2021 Одномерная оптимизация Конспект
4 02 февраля 2021 Метод градиентного спуска
5 09 февраля 2021 Стандартные матричные разложения. Метод Ньютона. Презентация по подготовке отчётов
6 16 февраля 2021 Метод сопряжённых градиентов. Презентация
7 02 марта 2021 Безгессианный метод Ньютона. Выпуклые множества. Конспект
8 09 марта 2021 Квазиньютоновские методы оптимизации. Выпуклые функции. Конспект
9 16 марта 2021 Задачи условной оптимизации. Теорема Каруша-Куна-Таккера. Конспект
10 23 марта 2021 Задача линейного программирования. Симплекс-метод. Эквивалентные преобразования задач оптимизации. Стандартные классы выпуклых условных задач оптимизации. Конспект
11 30 марта 2021 Занятия не будет
12 06 апреля 2021 Метод Ньютона и метод логарифмических барьеров для решения выпуклых задач условной оптимизации. Матричные преобразования в квазиньютоновских методах. Конспект
Конспект
13 13 апреля 2021 Негладкая выпуклая оптимизация. Субградиентный метод. Субдифференциальное исчисление. Конспект
14 20 апреля 2021 Проксимальные методы оптимизации. Сопряженные функции и нормы. Конспект
15 27 апреля 2021 Ускоренный оптимальный метод Нестерова. Проекции и проксимальные операторы.
16 4 мая 2021 Занятия не будет
17 11 мая 2021 Стохастическая оптимизация. Автоматическое дифференцирование по графу вычислений.
18 18 мая 2021 Дифференцирование через процесс оптимизации. Сведение дискретных задач оптимизации к непрерывным. Статья 1
Статья 2
19 25 мая 2021 Ускоренный стохастический метод оптимизации SDCA. Методы Adagrad, RMSprop, ADAM. Статья 1
Статья 2