Методы оптимизации в машинном обучении (курс лекций)/2018

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Домашние задания)
Строка 133: Строка 133:
== Домашние задания ==
== Домашние задания ==
Задание 1. [[Media:MOMO18_Homework1.pdf‎‎|Дифференцирование]] ([[Media:MOMO18_Homework1.tex.zip‎‎|TeX]]). <br />
Задание 1. [[Media:MOMO18_Homework1.pdf‎‎|Дифференцирование]] ([[Media:MOMO18_Homework1.tex.zip‎‎|TeX]]). <br />
 +
Задание 2. [[Media:MOMO18_Homework2.pdf‎‎|Выпуклые множества и функции]] ([[Media:MOMO18_Homework2.tex.zip‎‎|TeX]]). <br />
[[Media:MOMO18_TeX_StyleFiles.zip‎‎|Стилевые файлы TeX]].
[[Media:MOMO18_TeX_StyleFiles.zip‎‎|Стилевые файлы TeX]].

Версия 21:27, 10 октября 2018

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

Лектор: Д.А. Кропотов
Семинарист: А.О. Родоманов
Ассистенты: В.М. Гринберг, Н.А. Шаповалов, А.Г. Таскынов

Занятия проходят: по понедельникам в ауд. 637, лекция с 10-30 до 12-05, семинар с 12-15 до 13-50.

Инвайт в AnyTask: EyxQPxD.

Таблица с оценками: https://docs.google.com/spreadsheets/d/1Ctemm8j2ci0TRAQQBN-0_AGw_Yf_pfFn3mN1W4krLkg/edit?usp=sharing.

Все вопросы по курсу можно задавать в специальной Telegram группе, ссылку на которую можно получить у преподавателя.

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

В рамках курса предполагается четыре практических задания, четыре домашних заданий и экзамен. Каждое задание и экзамен оцениваются по пятибалльной шкале. Домашнее задание после срока сдачи не принимается. За каждый день просрочки при сдаче практического задания начисляется штраф 0.1 балла, через две недели после срока сдачи практическое задание не принимается.

Итоговая оценка за курс вычисляется с помощью округления вверх взвешенной суммы оценки за экзамен (вклад 40%), оценки за практические задания (вклад 40%) и оценки за домашние задания (вклад 20%). При этом для получения итоговой оценки 5 необходимо сдать на положительный балл все практические и все домашние задания, а также набрать на экзамене не ниже 4 баллов; для получения итоговой оценки 4 необходимо сдать любые три практических задания и любые два домашних задания; для получения итоговой оценки 3 необходимо сдать любые два практических задания и любое одно домашнее задание.

При выполнении каждого задания можно получить бонусные баллы за необязательные пункты, но при этом итоговые оценки за практическую часть курса и за домашнюю часть курса не могут превысить соответствующих максимальных оценок без учета бонусов. Например, если используется пятибальная шкала и количество (скажем, домашних) заданий равно четырем, то за счет бонусов оценки за задания могут быть следующими: 1) 5.5, 4, 4, 4; или 2) 5.5, 5, 5, 5. В первом случае итоговая оценка за домашние задания составляет 17.5, а во втором --- 20.0.

Лекции

№ п/п Занятие Материалы
1 Введение в курс. Классы функций в оптимизации. Скорости сходимости (Скорости сходимости) [Nocedal-Wright, pp. 617-620]
2 Неточная одномерная оптимизация. Метод градиентного спуска, выбор длины шага. [Nocedal-Wright, Chapter 3] + [Поляк, Разделы 1.4 и 1.5]
3 Метод Ньютона. Способы коррекции гессиана до положительно-определённой матрицы
4 Метод сопряженных градиентов
5 Неточный/безгессианный метод Ньютона
6 Квазиньютоновские методы. Метод L-BFGS
7 Условия Каруша-Куна-Таккера. Двойственность Лагранжа.
8 Метод внутренней точки
9 Прямо-двойственный метод внутренней точки
10 Негладкая оптимизация. Субградиентный метод
11 Разреженные линейный модели. Проксимальные методы.
12 Ускоренный градиентный метод Конспект
13 Стохастическая оптимизация
14 Ускоренный метод для минимизации конечных сумм (Katyusha)

Семинары

№ п/п Занятие Материалы
1 Матрично-векторное дифференцирование (часть 1) Конспект
2 Матрично-векторное дифференцирование (часть 2). Условия оптимальности.
3 Методы градиентного спуска и Ньютона. Детали реализации и примеры работы Презентация
4 Выпуклые множества Конспект
5 Выпуклые функции Конспект
6 Квазиньютоновские методы Конспект
7 Условия Каруша-Куна-Таккера. Двойственность Лагранжа. Конспект
8 Сопряженные функции. Двойственность Фенхеля. Конспект
9 Стандартные классы выпуклых задач (LP, QP, QCQP, SOCP, SDP). Сводимость. Конспект
10 Субдифференциальное исчисление Конспект
11 Вычисление проекций и проксимальных отображений
12 Сглаживание негладких функций
13 Рандомизированные покоординатные методы, SDCA
14 Ускоренные рандомизированные покоординатные методы, ASDCA

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

  1. Скорости сходимости последовательностей.
  2. Матрично-векторные скалярные произведения и нормы.
  3. Методы сопряженных градиентов.
  4. Самосогласованные функции и метод Ньютона.
  5. Метод зеркального спуска.

Домашние задания

Задание 1. Дифференцирование (TeX).
Задание 2. Выпуклые множества и функции (TeX).

Стилевые файлы TeX.

Практические задания

Задание 1. Методы градиентного спуска и Ньютона.

Литература

  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. J.-P. Hiriart-Urruty, C. Lemaréchal. Convex Analysis and Minimization Algorithms I: Fundamentals and Convex Analysis and Minimization Algorithms II: Advanced Theory and Bundle Methods, Springer-Verlag Berlin Heidelberg, 1993.
  7. D. Bertsekas. Convex Analysis and Optimization, Athena Scientific, 2003.
  8. Б.Т. Поляк. Введение в оптимизацию, Наука, 1983.
  9. J. Duchi. Introductory Lectures on Stochastic Optimization, Graduate Summer School Lectures, 2016.
  10. S. Sra et al.. Optimization for Machine Learning, MIT Press, 2011.

Архив

2017 год

2016 год

2015 год

2014 год

2012 год

См. также

Курс «Графические модели»

Курс «Байесовские методы в машинном обучении»

Спецсеминар «Байесовские методы машинного обучения»

Математические методы прогнозирования (кафедра ВМиК МГУ)

Личные инструменты