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

Материал из Wiki - Факультет компьютерных наук
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
 
(не показано 14 промежуточных версий этого же участника)
Строка 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
  |-
  |-
  |}
  |}
Строка 77: Строка 82:
| align="center"|9
| align="center"|9
| 16&nbsp;марта&nbsp;2021
| 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]
|-
|-
|}
|}

Текущая версия от 07: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