Непрерывная оптимизация/2019

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

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

Лектор: Кропотов Дмитрий Александрович. Лекции проходят по вторникам в ауд. 402 с 13:40 до 15:00.

Семинаристы и ассистенты: Родоманов Антон, Гадецкий Артём, Гринберг Вадим, Шаповалов Никита, Таскынов Ануар.

Группа Расписание Инвайт для anytask
161 вторник, 15:10 – 16:30, ауд. 503 ohYkZaV
162 вторник, 15:10 – 16:30, ауд. 505 5VhbMSK

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

Убедительная просьба не флудить, не спамить и просто не безобразничать в чате.

Таблица с оценками по курсу: Link

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

  1. В рамках курса предполагается три практических задания, четыре теоретических домашних заданий и экзамен. Каждое задание и экзамен оцениваются по десятибалльной шкале.
  2. В оценке за курс 60% составляет накопленная оценка за модуль и 40% - оценка за экзамен. Для получения финального результата (0–10) оценка округляется в большую сторону.
  3. В накопленной оценке 50% составляют баллы за практические задания и 50% - баллы за теоретические домашние задания.
  4. Итоговая оценка за практические или теоретические задания с учётом всех бонусов не может превышать максимальных 10 баллов.

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

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

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

В каждом теоретическом задании могут быть предложены несколько необязательных задач, позволяющих получить бонусные баллы. Бонусные баллы могут быть использованы студентом для повышения своих оценок за выбранные теоретические задания. При этом оценка за задание не может превысить максимум в 10 баллов.

Лекции (план)

№ п/п Дата Занятие Материалы
1 15 января 2019 Введение в курс. Классы функций для оптимизации. Скорости сходимости итерационных процессов. [10, рз. 1.2, 2.1], [1, с. 617-620]
2 22 января 2019 Неточная одномерная оптимизация. Метод градиентного спуска. [10, рз. 2.1.5], [1, рз. 2.2, 3.2. 3.3]
3 29 января 2019 Матричные разложения и их использование для решения СЛАУ. Метод Ньютона для выпуклых и невыпуклых задач. [1, рз. 2.2, 3.3, 3.4]
4 5 февраля 2019 Метод сопряжённых градиентов для решения СЛАУ. [1, рз. 5.1]
5 12 февраля 2019 Квазиньютоновские методы. Метод L-BFGS. [1, рз. 6.1, 7.2]
6 19 февраля 2019 Задачи условной оптимизации: условия ККТ.
7 26 февраля 2019 Метод Ньютона и метод барьеров для выпуклых задач условной оптимизации.
8 5 марта 2019 Негладкая безусловная оптимизация. Субградиентный метод. Проксимальные методы.
9 12 марта 2019 Стохастическая оптимизация.
10 19 марта 2019 Риманова оптимизация.

Семинары (план)

№ п/п Дата Занятие Материалы
1 15 января 2019 Матрично-векторное дифференцирование (часть 1). Конспект
2 22 января 2019 Матрично-векторное дифференцирование (часть 2). Скорости сходимости. Условия оптимальности. Конспект
3 29 января 2019 Разностное дифференцирование. Методы градиентного спуска и Ньютона на практике. Ipynb
4 5 февраля 2019 Выпуклые множества и функции Конспект
5 12 февраля 2019 Нелинейный метод сопряжённых градиентов. Предобуславливание. Материалы Презентация
6 19 февраля 2019 Условия ККТ. Эквивалентные преобразования задач. Конспект
7 26 февраля 2019 Двойственность. Сопряжённые функции / нормы.
8 5 марта 2019 Субдифференциальное исчисление.
9 12 марта 2019 Проксимальные операторы.
10 19 марта 2019 Ускоренный проксимальный градиентный метод

Теоретические ДЗ

Практические ДЗ

  • Практика №1, дэдлайны — мягкий: 12 февраля (23:59), жёсткий: 20 февраля (23:59).
  • Практика №2, дэдлайны — мягкий: 2 марта (23:59), жёсткий: 10 марта (23:59).

Дополнительный материал

  • Конспект по матрично-векторным скалярным произведениям и нормам.

Литература

  1. J. Nocedal, S. Wright. Numerical Optimization, Springer, 2006.
  2. A. Ben-Tal, A. Nemirovski. Optimization III. Lecture Notes, 2013.
  3. Y. Nesterov. Introductory Lectures on Convex Optimization: A Basic Course, Springer, 2003.
  4. Ю.Е. Нестеров. Методы выпуклой оптимизации, МЦНМО, 2010
  5. S. Boyd, L. Vandenberghe. Convex Optimization, Cambridge University Press, 2004.
  6. D. Bertsekas. Convex Analysis and Optimization, Athena Scientific, 2003.
  7. Б.Т. Поляк. Введение в оптимизацию, Наука, 1983.
  8. J. Duchi. Introductory Lectures on Stochastic Optimization, Graduate Summer School Lectures, 2016.
  9. S. Sra et al.. Optimization for Machine Learning, MIT Press, 2011.
  10. Y. Nesterov. Lectures on convex optimization, Springer, 2018.