Методы оптимизации (курс лекций)
Материал из MachineLearning.
(→Лекции) |
(→Литература) |
||
Строка 152: | Строка 152: | ||
== Литература == | == Литература == | ||
- | |||
# J. Nocedal, S. Wright. [http://libgen.io/book/index.php?md5=7016B74CFE6DC64C75864322EE4AA081 Numerical Optimization], Springer, 2006. | # J. Nocedal, S. Wright. [http://libgen.io/book/index.php?md5=7016B74CFE6DC64C75864322EE4AA081 Numerical Optimization], Springer, 2006. | ||
+ | # S. Boyd, L. Vandenberghe. [http://www.stanford.edu/~boyd/cvxbook/ Convex Optimization], Cambridge University Press, 2004. | ||
+ | # S. Sra et al.. [http://libgen.io/book/index.php?md5=9799B67D2A9C45DCAC9D323252054DAF Optimization for Machine Learning], MIT Press, 2011. | ||
# A. Ben-Tal, A. Nemirovski. [http://www2.isye.gatech.edu/~nemirovs/OPTIII_LectureNotes2015.pdf Optimization III. Lecture Notes], 2013. | # A. Ben-Tal, A. Nemirovski. [http://www2.isye.gatech.edu/~nemirovs/OPTIII_LectureNotes2015.pdf Optimization III. Lecture Notes], 2013. | ||
# Б. Поляк. [http://premolab.ru/sites/default/files/polyak-optimizationintro.djvu Введение в оптимизацию], Наука, 1983. | # Б. Поляк. [http://premolab.ru/sites/default/files/polyak-optimizationintro.djvu Введение в оптимизацию], Наука, 1983. | ||
- | |||
# Y. Nesterov. [http://libgen.io/book/index.php?md5=049F85DF4693D7C3DC27DDDD0720A096 Introductory Lectures on Convex Optimization: A Basic Course], Springer, 2003. | # Y. Nesterov. [http://libgen.io/book/index.php?md5=049F85DF4693D7C3DC27DDDD0720A096 Introductory Lectures on Convex Optimization: A Basic Course], Springer, 2003. | ||
# R. Fletcher. [http://libgen.io/book/index.php?md5=CAFE400511F96424029AB1DCDB1E39F7 Practical Methods of Optimization], Wiley, 2000. | # R. Fletcher. [http://libgen.io/book/index.php?md5=CAFE400511F96424029AB1DCDB1E39F7 Practical Methods of Optimization], Wiley, 2000. |
Версия 16:32, 9 января 2017
Страница курса находится в стадии формирования |
Настройка модели алгоритмов по данным — это задача оптимизации, от эффективности решения которой зависит практическая применимость метода машинного обучения. В эпоху больших данных многие классические алгоритмы оптимизации становятся неприменимы, т.к. здесь требуется решать задачи оптимизации функций за время меньшее, чем необходимо для вычисления значения функции в одной точке. Таким требованиям можно удовлетворить в случае грамотного комбинирования известных подходов в оптимизации с учётом конкретной специфики решаемой задачи. Курс посвящен изучению классических и современных методов решения задач непрерывной оптимизации (в том числе невыпуклой), а также особенностям применения этих методов в задачах оптимизации, возникающих в машинном обучении. Наличие у слушателей каких-либо предварительных знаний по оптимизации не предполагается, все необходимые понятия разбираются в ходе занятий. Основной акцент в изложении делается на практические аспекты реализации и использования методов. Целью курса является выработка у слушателей навыков по подбору подходящего метода для своей задачи, наиболее полно учитывающего её особенности.
Курс рассчитан на студентов старших курсов и аспирантов. Знание основ машинного обучения приветствуется, но не является обязательным — все необходимые понятия вводятся в ходе лекций.
Занятия проходят на ФКН ВШЭ.
Лектор: Кропотов Дмитрий Александрович. Лекции проходят по вторникам в ауд. 622 с 13:40 до 15:00.
Семинаристы:
Группа | Семинарист | Расписание |
---|---|---|
141 (МОП) | Родоманов Антон Олегович | вторник, 15:10 – 16:30, ауд. 513 |
142 (МОП) | Хальман Михаил Анатольевич | вторник, 15:10 – 16:30, ауд. 501 |
145 (РС) | Дойков Никита Владимирович | вторник, 15:10 – 16:30, ауд. 503 |
Система выставления оценок по курсу
В рамках курса предполагается четыре практических задания, несколько домашних заданий и экзамен. Каждое задание и экзамен оцениваются по пятибалльной шкале. В итоговой оценке 45% составляют баллы за практические задания, 25% — баллы за домашние задания и 30% — оценка за экзамен. Для получения финального результата (0, 3, 4, 5) итоговая оценка по курсу округляется в большую сторону. За каждый день просрочки при сдаче практического задания начисляется штраф 0.1 балла, но суммарно не более 3 баллов.
Лекции
№ п/п | Дата | Занятие | Материалы |
---|---|---|---|
1 | 10 января 2017 | Введение в курс. Необходимое условие экстремума. Оракулы, скорости сходимости итерационных процессов. | |
2 | 17 января 2017 | Точная одномерная оптимизация. | |
3 | 24 января 2017 | Неточная одномерная оптимизация. Классы функций для оптимизации. Метод градиентного спуска. | |
4 | 31 января 2017 | Матричные разложения и их использование для решения СЛАУ. Метод Ньютона для выпуклых и невыпуклых задач. | |
5 | 7 февраля 2017 | Линейный метод сопряжённых градиентов. | |
6 | 14 февраля 2017 | Неточный метод Ньютона. Разностные производные. | |
7 | 21 февраля 2017 | Квазиньютоновские методы. Метод L-BFGS. | |
8 | 28 февраля 2017 | Задачи условной оптимизации: условия ККТ. | |
9 | 7 марта 2017 | Выпуклые задачи оптимизации. Двойственность. Метод барьеров. | |
10 | 14 марта 2017 | Негладкая безусловная оптимизация. Субградиентный метод. Проксимальные методы. | |
11 | 21 марта 2017 | Стохастическая оптимизация. |
Программа курса
Основные понятия и примеры задач
- Градиент и гессиан функции многих переменных, их свойства, необходимые и достаточные условия безусловного экстремума;
- Матричные разложения, их использование для решения СЛАУ;
- Структура итерационного процесса в оптимизации, понятие оракула, критерии останова;
- Глобальная и локальная оптимизация, скорости сходимости итерационных процессов оптимизации.
Методы одномерной оптимизации
- Минимизация функции без производной: метод золотого сечения, метод парабол;
- Гибридный метод минимизации Брента;
- Методы решения уравнения : метод деления отрезка пополам, метод секущей;
- Минимизация функции с известной производной: кубическая аппроксимация и модифицированный метод Брента;
- Поиск ограничивающего сегмента;
- Условия Армихо и Вольфа для неточного решения задачи одномерной оптимизации;
- Неточные методы одномерной оптимизации, backtracking.
Методы многомерной оптимизации
- Методы линейного поиска и доверительной области;
- Метод градиентного спуска: наискорейший спуск, спуск с неточной одномерной оптимизацией, скорость сходимости метода для сильно-выпуклых функций с липшицевым градиентом, зависимость от шкалы измерений признаков;
- Метод Ньютона: схема метода, скорость сходимости для выпуклых функций с липшицевым гессианом, подбор длины шага, способы коррекции гессиана до положительно-определённой матрицы;
- Метод сопряженных градиентов для решения систем линейных уравнений, скорость сходимости метода, предобуславливание;
- Метод сопряженных градиентов для оптимизации неквадратичных функций, стратегии рестарта, зависимость от точной одномерной оптимизации;
- Неточный (безгессианный) метод Ньютона: схема метода, способы оценки произведения гессиана на вектор через вычисление градиента;
- Квазиньютоновские методы оптимизации: SR1, BFGS и L-BFGS.
Методы внутренней точки
- Необходимые и достаточные условия оптимальности в задачах условной оптимизации, условия Куна-Таккера;
- Выпуклые задачи условной оптимизации, двойственная функция Лагранжа, двойственная задача оптимизации;
- Решение задач условной оптимизации с линейными ограничениями вида равенство, метод Ньютона;
- Прямо-двойственный метод Ньютона, неточный вариант метода;
- Метод логарифмических барьерных функций;
- Прямо-двойственный метод внутренней точки;
- Методы первой фазы.
Разреженные методы машинного обучения
- Модели линейной/логистической регрессии с регуляризациями L1 и L1/L2;
- Понятие субградиента выпуклой функции, его связь с производной по направлению, необходимое и достаточное условие экстремума для выпуклых негладких задач безусловной оптимизации;
- Метод наискорейшего субградиентного спуска;
- Проксимальный метод, вычисление prox-оператора для L1- и L1/L2-регуляризаторов.
Стохастическая оптимизация
- Задачи минимизации среднего и эмпирического риска;
- Метод стохастического градиентного спуска, две фазы итерационного процесса, использование инерции;
- Метод SAG;
- Комбинирование стохастической оптимизации и проксимального метода.
Суррогатная оптимизация
- Вероятностная модель логистической регрессии;
- Общая идея метода суррогатной оптимизации;
- Применение метода для стохастической оптимизации: метод MISO;
- Пример применения метода для обучения LASSO;
- Построение глобальных оценок с помощью неравенства Йенсена, ЕМ-алгоритм, его применение для вероятностной модели логистической регрессии;
- Построение оценок с помощью касательных и замены переменной;
- Оценка Jaakkola-Jordan для логистической функции, её применение для обучения вероятностной модели логистической регрессии;
- Выпукло-вогнутая процедура, примеры использования.
Методы оптимизации для глубинного обучения
- Адаптивная стратегия Левенберга-Марквардта для задачи минимизации суммы квадратов;
- Модель глубинного автокодировщика;
- Алгоритм обратного распространения ошибки и его обобщения для быстрого умножения гессиана на произвольный вектор;
- Неточный метод Ньютона с предобуславливанием через L-BFGS.
Литература
- J. Nocedal, S. Wright. Numerical Optimization, Springer, 2006.
- S. Boyd, L. Vandenberghe. Convex Optimization, Cambridge University Press, 2004.
- S. Sra et al.. Optimization for Machine Learning, MIT Press, 2011.
- A. Ben-Tal, A. Nemirovski. Optimization III. Lecture Notes, 2013.
- Б. Поляк. Введение в оптимизацию, Наука, 1983.
- Y. Nesterov. Introductory Lectures on Convex Optimization: A Basic Course, Springer, 2003.
- R. Fletcher. Practical Methods of Optimization, Wiley, 2000.
- A. Antoniou, W.-S. Lu. Practical Optimization: Algorithms and Engineering Applications, Springer, 2007.
- W. Press et al.. Numerical Recipes. The Art of Scientific Computing, Cambridge University Press, 2007.