Учась в институте, я встречал преобразование Лежандра в совершенно неожиданных местах: от методов оптимизации до физики. Было очевидно, что существует некоторая фундаментальная структура, сшивающая все воедино. В этой статье пробую нащупать эту нить: показываю, как преобразование Лежандра проявляется в различных областях, стараюсь идти от конкретных примеров и делать акцент на связях - чтобы выстроить цельную картину. Приветствую любые комментарии и указания на ошибки/неточности
Геометрия
Для начала рассмотрим функцию . В точке
касательная:
– типичный пример гладкой выпуклой функции. Формализуем интуицию вокруг выпуклости:
Во-первых, выпуклая функция – это та, чей надграфик выпуклый, т.е. содержит любую хорду. Двигаясь между точками и
, мы всегда оказываемся над графиком. Это называют неравенством Йенсена:
Во-вторых, для гладких функций выпуклость можно определить так: график функции лежит над касательными:
В-третьих, геометрически это означает, что наклон f растет быстрее, чем наклон касательной:
Остановимся на (2). Заметим, что функцию можно описать двумя способами:
набором всех точек
, таких что
набором всех касательных, оборачивающих график функции. Каждая касательная
задается тоже двумя числами:
- наклоном и сдвигом по вертикали
Оказывается, для выпуклых функций оба описания эквивалентны. Пока фиксируем, а чем это полезно - ниже
Алгебра
Рассмотрим некоторую хитрую конструкцию. Возьмем функцию и сопоставим ей функцию
по такому правилу (пока примем это как черный ящик, постепенно поймем глубинные смыслы):
Посмотрим на примерах:
Получилась некоторая «вывернутая дельта-функция»: во всех точках , в нуле 0. Попробуем сдвинуть исходную функцию f по вертикали:
Наша конструкция просела на некоторый сдвиг, но все еще центрирована в
. Усложним пример:
Получилась та же «вывернутая дельта-функция», но теперь с центром в 1. Видно, что этот пример отличается от самого первого в единственном месте: множитель перед x в первом супремуме – просто p, а в текущем – (p-1). Эта единица возникла именно как коэффициент перед x, то есть наклон функции f. Обобщим и проверим интуицию:
Видно, что наша конструкция детектирует наклон исходной функции f(x). Когда аргумент p функции
совпадает с наклоном исходной функции f(x), индикатор срабатывает, и мы получаем конечное число на выходе. Более того, это число
совпало с величиной, на которую нужно сдвинуть функцию
вниз, чтобы «обернуть» исходную f снизу (и тогда
при
логична, ведь прямые
и
гарантированно пересекутся). Эта идея собрана в неравенстве Фенхеля — Юнга:
Прямые целиком лежат под графиком
– это как раз набор касательных, оборачивающих заданную функцию f снизу. Продолжим эксперименты: что если наклон меняется со временем?
Внутри супремума – парабола ветвями вниз. Теперь связалось, почему мы вообще рассматриваем выпуклые функции: супремум искать проще. В данном случае супремум достигается в вершине параболы . Подставим
, тогда
Нашей исходной параболе сопоставляется парабола
, лежащая ниже исходной. А что если провернуть наше преобразование в обратную сторону?
Аналогичные рассуждения про вершину параболы приведут нас к тому, что . Получается, конкретно в этом примере мы провели преобразование дважды и вернулись к исходной функции
.
Всегда ли это так? Оказывается, нет: только для выпуклых и замкнутых – это теорема Фенхеля-Моро:
всегда. Фенхель-Юнг:
всегда выпукла и замкнута, по построению
довольно техническое доказательство, по которому
(выпуклая оболочка f, т.е. множество всех хорд с концами в надграфике). По определению через выпуклый надграфик, выпуклая функция совпадает со своей выпуклой оболочкой, поэтому для выпуклых
Заметим отдельно, что, опираясь на выпуклость, мы подбирали супремум по нулям производной: . Такая замена требует обратимости
, т.е. строгой выпуклости – это нам позже пригодится.
Подумаем, что именно делает наше преобразование. По графикам ранее было видно, что кривые как будто отражаются относительно некоторой границы между ними – что это за граница? Угадаем неподвижную точку:
Предположим, что существует другая неподвижная точка . Фенхель-Юнг:
для
. В частности, для
получим
. Но тогда:
т.е. , противоречие. Значит,
– единственная неподвижная точка. По сути, проводя наше преобразование, мы «отражали» функции относительно «зеркала»
.
Конструкция, которую мы все это время рассматривали, называется преобразованием Лежандра. Ключевая идея: выпуклая функция = верхняя огибающая своих нижних оценок.
Физика / механика
Существует три классических подхода для описания физических систем: по Ньютону, Лагранжу и Гамильтону. Ньютон работает с силами – нам это сейчас не интересно. Сфокусируемся на лагранжевом и гамильтоновом формализме, покажем связь между ними и место, где возникает преобразование Лежандра.
Рассмотрим задачу кинематики: по какой траектории полетит камень в поле гравитации (для простоты – бросим вертикально)?
Можно ввести координату , потенциальную энергию
, кинетическую энергию
. В контексте выпуклых функций сразу бросается в глаза выпуклость кинетической энергии по скоростям (спойлер: это пригодится).
Полная энергия сохраняется, т.е. , причем масса положительна, а скорость зануляется только в одной точке (вершине траектории). Остается
. Решив этот дифур, получим знакомое
.
Вместо скорости , можно описать систему через изменение импульса:
. Сократив, получим
. Решив этот дифур, получим такой же ответ:
.
Вывод: два описания системы (координаты и скорости vs координаты и импульсы) эквивалентны в рассмотренной нами выпуклой задаче.
Оказывается, оба подхода опираются на более глубокую теорию и тесно связаны
Лагранж описывает систему с помощью обобщенных координат и скоростей
Вводится кинетическая энергия и потенциальная энергия
, их разность называется лагранжианом
. Интеграл лагранжиана по времени (вдоль траектории) называется действием:
Это функционал, сопоставляющий траектории некоторое число. Постулируется Принцип наименьшего действия: природа стремится минимизировать этот функционал, поэтому траектории точек – экстремали. Почему это верно – отдельный глубокий вопрос.
Возмутим траекторию (требования к возмущению – гладкая функция, обнуляющаяся на концах):
Действие вдоль возмущенной траектории:
Проварьируем: продифференцируем по , найдем экстремум:
Второе слагаемое – проинтегрируем по частям, вспомнив, что :
Мы рассматривали выражения для произвольного , а по основной лемме вариационного исчисления это значит, что квадратная скобка тождественно равна нулю. Получим уравнение Эйлера-Лагранжа:
В лагранжевом формализме вводится также обобщенный импульс . Можно подставить систему из школьной механики и проверить соответствие с привычным определением:
Гамильтон описывает систему с помощью обобщенных координат и импульсов
Вводится гамильтониан . Сразу интересное наблюдение: это выражение уже похоже на содержимое супремума в преобразовании Лежандра, но подойдем к этой связи осторожнее. Пока отметим: в классической механике типично, что кинетическая энергия
, поэтому
, т.е. полная энергия.
Распишем и проварьируем действие в терминах гамильтониана (дважды и независимо по q,p):
Получим уравнения Гамильтона:
Оказывается, Гамильтон – это лежандров образ Лагранжа. Рассмотрим . На самом деле, мы так и вводили
выше, но не заметили, как неявно учли, что находимся в супремуме выражения. Действительно,
, т.е.
Мы получили буквально определение импульса, только теперь оно не постулируется, а следует из поиска супремума.
Теперь продифференцируем и подставим определение импульса:
При этом сам . Сопоставим частные производные:
Вспомним ур-е Эйлера-Лагранжа – на решении:
Видна первая большая польза от преобразования Лежандра: мы свели ОДУ 2го порядка к паре ОДУ 1го порядка. Плюс существуют методы, которые проще использовать в гамильтоновом формализме (а в квантовой механике в принципе вводится именно оператор Гамильтона), поэтому преобразование Лежандра возникает часто.
Почему это вообще работает? И пара комментариев
Преобразование Лежандра корректно определено, если отображение локально обратимо (мы ведь выражаем
через
из определения импульса
). Достаточное условие – невырожденность гессиана
, но более физично условие положительной определенности – т.е. выпуклости лагранжиана по
. Почему более физично, на простом примере:
. Оказывается, гессиан лагранжиана описывает массы и их аналоги, что часто оказывается положительным. Сразу отметим:
и
взаимно обратные отображения, поэтому гессианы
и
– обратные матрицы (из теоремы об обратной функции). В частности, гессиан
описывает величины с размерностью обратных масс (подвижностей)
Есть более глубокий взгляд: постулируется ряд симметрий, из которых выводятся суждения о виде
однородность пространства
зависит только от
изотропность пространства
квадратичная форма от
из принципа относительности Галилея следует, что законы механики одинаковы в любой ИСО, а значит
может зависеть только от координат
Получается, что выпуклость часто гарантируется на фундаментальном уровне. Но не всегда: иногда физика допускает невыпуклые лагранжианы, и тогда эквивалентность Лагранжа vs Гамильтона теряется.
Дополнительно рассмотрим случай, когда какой-то нельзя выразить через свой
из
(как мы делали). Это означает
. Дважды проинтегрируем:
. Подставим:
Это буквально наш старый пример
Получившийся результат означает, что энергия конечна лишь при специфичном условии на импульсы, т.е. импульсы не меняются свободно. Это называется первичной связью, и в своей основе – это лежандров образ линейной по скорости части лагранжиана. По названию ясно, что есть и вторичные - они устроены сложнее
Задачу можно свести к еще более удобному виду, если перейти в координаты, в которых гамильтониан . Решение нам сейчас не интересно, в итоге получится уравнение Гамильтона-Якоби (пригодится, но не скоро, S - вдоль экстремали):
Итог: преобразование Лежандра позволяет переписать задачу в виде, в котором ее иногда проще решать.
Оптимизация
В этом разделе очень много применений преобразования Лежандра, сфокусируемся на нескольких ключевых. Ключевая задача всего раздела - найти минимум заданной функции.
Чаще преобразование Лежандра записывают в векторном виде: . Для гладких функций:
при
. Отсюда же следует:
. Кроме того,
(если гессиан обратим - по теореме об обратной функции, что мы пронаблюдали на примере лагранжиана и гамильтониана)
Вспомним ключевую идею преобразования Лежандра: выпуклая функция есть верхняя огибающая своих нижних оценок. В методах оптимизации часто удобно не рассуждать о минимуме самой функции, а давать гарантии на ее нижние оценки, поэтому такая трактовка оказывается полезна.
Условная оптимизация
Рассмотрим задачу при
. Составляем лагранжиан (сразу отметим: это не тот же лагранжиан, который был в физике, к сожалению, тут коллизия имен – лишь совпадение):
Что произошло: для допустимых x (т.е. таких, что второе слагаемое зануляется) можно взять любой множитель – все равно в скобке ноль. Но теперь давайте рассмотрим не только допустимые x, а вообще все x: свободы больше, значит минимум только опустится:
Обозначим – это семейство оценок снизу на нашу функцию f. Из этого семейства логично взять лучшую:
– это все еще оценка снизу, но максимальная (наиболее «тугая»).
Перейдя к двойственной задаче, мы буквально провели преобразование Лежандра. Оказывается, преобразование Лежандра всегда было задачей условной оптимизации с линейными ограничениями:
Поскольку все время по построению были оценками снизу,
. Причем в невыпуклом случае зазор ожидается, потому что двойственная задача восстанавливает лишь
.
Градиентный спуск
Часто минимум функции нельзя/сложно/долго искать аналитически, либо нас интересует любой достаточно хороший локальный минимум. Тогда применяют итеративные алгоритмы, в частности, популярный в ML градиентный спуск. Ключевая идея – подгоняем аргумент функции в ту сторону, куда функция убывает:
Эту инженерную интуицию можно обосновать аналитически. Аппроксимируем функцию f ее касательной в текущей точке. Попробуем перейти в ее минимум, но минимум касательной, ясно, на бесконечности, поэтому добавим штраф за отход от исходной строчки – норму шага с регулируемым коэффициентом :
Видно, что градиентный спуск эквивалентен задаче оптимизации с евклидовым штрафом
Продифференцируем выражение под аргминимумом по x:
Но здесь заложено довольно тонкое допущение, для понимания которого нужно погрузиться в природу сопряженных пространств.
Сопряженное пространство — это множество всех непрерывных линейных функционалов, заданных на исходном пространстве. Преобразование Лежандра переводило нас именно туда. В обоих пространствах существует метрика - симметричная положительно определенная матрица , на основе которой вводится скалярное произведение:
. В сопряженном пространстве живет
– “сырой” ковектор-градиент, а в исходном -
, причем
, или
. В Евклидовой метрике
, поэтому
, как мы и писали в формуле градиентного спуска.
Мы ранее уже сталкивались с ситуацией, когда сопряжение не изменяет функцию: . Вернемся к ней, а точнее, рассмотрим
. Тогда
– это буквально наше правило
из начала раздела. Как видно, сама матрица
. В физике у нас уже возникал обратимый гессиан
, масса/матрица инерции. Это та самая матрица
, просто в другом контексте.
Возвращаемся к градиентному спуску. В более общем случае будет:
Просто мы не заметили, как неявно выбрали самосопряженную – ту самую из начала статьи.
Зеркальный спуск
Суммируем, в чем была проблема. Мы складываем объект из исходного пространства (x) с объектом из сопряженного (градиент). Мы незаметно отождествили пространства и
, хотя в общем случае они различны. На практике это означает, что мы не учли геометрию задачи. Классический пример – минимизация на вероятностном симплексе:
. Евклидов штраф на нем всё время утыкается в границы, так что хотелось бы заложить в метод учет геометрии пространств
Эту проблему решает алгоритм зеркального спуска:
берем строго выпуклую гладкую функцию
(distance-generating function, «зеркало»)
переводим точку в сопряженное пространство
делаем градиентный спуск в сопряженном пространстве – там, где на самом деле живут градиенты
возвращаемся в исходное пространство
Именно за счет переходов между исходным пространством и сопряженным алгоритм получил название «зеркальный» спуск:
Градиентный спуск – частный случай зеркального при .
У зеркального спуска есть эквивалентная запись (можно убедиться, взяв градиент выражения под argmax):
Функция называется дивергенцией Брэгмана – по сути, это аналог расстояния. Для
будет
, и вся конструкция схлопывается в обычный градиентный спуск.
Вернемся к примеру с минимизацией на вероятностном симплексе . Мы упоминали, что евклидов штраф не учитывает геометрию пространства, но какой подошел бы лучше? Оказывается, в качестве зеркала лучше всего подходит отрицательная энтропия
.
Оказывается, дивергенция Брэгмана для отрицательной энтропии становится KL-дивергенцией – естественным аналогом расстояния для распределений.
Метод Ньютона
Линейное приближение очень грубое, и возникает идея приближать квадратично. Ключевая идея: на каждом шаге строим касательную параболу, и переходим в ее минимум:
Ясно, что если сама оптимизируемая функция квадратичная, то она совпадет со своим квадратичным приближением, и мы перейдем в оптимум всего за 1 шаг.
Альтернативно метод Ньютона выводят через алгоритм поиска нуля функции, и вместо функции подставляют градиент искомой. Наглядно, но нам сейчас не так важно.
Видно, что метод Ньютона использует в качестве метрики гессиан и эквивалентен зеркальному спуску с зеркалом
. При этом при переходе из сопряженного пространства обратно к иксам, градиент домножается как раз на обратный гессиан (как мы ранее получали связь между гессианом прямой и сопряженной функций, если гессиан невырожден)
Метрику/гессиан можно аппроксимировать. Такие методы называют квазиньютоновскими. Например, если М приближается матрицей ранга 2, метод называется BFGS.
Итог: преобразование Лежандра позволяет перейти к двойственной задаче, где удобно строить гарантированные оценки на функции или геометрия пространства более наглядна.
Статфиз / термодинамика
Вернемся немного к физике. Обсудим одно ложное утверждение, которое я слышал в контексте термодинамики: “преобразование Лежандра меняет интенсивные и экстенсивные величины”.
Что такое «интенсивные» и «экстенсивные»? Пусть система увеличилась в раз. Тогда
– экстенсивная (объем V, энтропия S), а
– интенсивная (температура T, давление P). Вообще, функции со свойством
называются однородными порядка
. Такие функции удобны тем, что масштабируются предсказуемо.
Возьмем внутреннюю энергию . Ее переменные
- экстенсивные, а производные
– интенсивные (их вычисление – чисто технический момент). Преобразование Лежандра дает свободную энергию Гельмгольца:
, и экстенсивная S действительно меняется на интенсивную T. Но возьмем теперь все возможные величины в расчете на 1 частицу:
. Важно, что s стала интенсивной. Тогда
, и Лежандр произвел обмен двух интенсивных величин. Тот факт, что часто лежандрова пара состоит из экстенсивной + интенсивной величины, это просто следствие однородности взятых функций.
Мы затронули интересный момент о сопряженности термодинамических потенциалов. Оказывается, эта ветка открывает ряд ценных связей
Энтропия
Статистический смысл энтропии появляется так. Пусть в ящике с вымышленной перегородкой находится несколько частиц. Суммарное кол-во частиц – макросостояние ящика, а распределение частиц по ячейкам – микросостояния. Всего микросостояний, реализующих данное макросостояние, - штук, все они независимы и равновероятны (с вероятностью
). Энтропия должна быть функцией от
– потому что просто больше не от чего оттолкнуться. При этом мы знаем, что энтропия аддитивна (
), а количеств микросостояний мультипликативно, по аналогии с вероятностями независимых событий (
). Единственная функция, которая переводит произведение в сумму (
) – это логарифм, т.е.
. Подставив выражение в закон идеального газа, мы получим, что
– константа Больцмана. Сам же ящик не обязан описывать геометрические положения частиц: он может, например, иллюстрировать распределение частиц по энергиям. В итоге
Выразим общую энтропию через равные вероятности :
Это похоже на энтропию Шеннона (об этом – позже)
Второе начало термодинамики гласит, что в изолированной системе энтропия растет, пока не достигнет максимума в термодинамическом равновесии. По виду последней функции ясно, что энтропия максимальна на равномерном распределении. Часто 2е начало искаженно пересказывают как «вселенная стремится к беспорядку», хотя точнее было бы «вселенную вероятнее застать в наиболее вероятном ее состоянии, и таким состоянием является то, что часто соответствует равномерному разбросу». На самом деле, рост энтропии – это просто следствие того факта, что равномерное распределение соответствует наибольшему числу микросостояний среди всех распределений. Эта идея лежит в основе принципа максимума энтропии
Свободная энергия
Посмотрим на вероятность микросостояния
с энергией
в системе из ящика и резервуара. Все состояния равновероятны, поэтому вероятность пропорциональна числу способов его реализовать:
, причем энергия ящика много меньше энергии резервуара (
). Разложив определение энтропии по Тейлору, получим
. По определению температуры,
, поэтому
. Тогда
. Взяв экспоненту и учтя константу, получим распределение Гиббса:
Это похоже на софтмакс с температурой (об этом – позже)
Подставим вероятности в формулу энтропии (вспомнив определение внутренней энергии):
А оказалось, что – это определение свободной энергии, поэтому:
Это похоже на log-sum-exp (об этом – позже)
Связь энтропии и свободной энергии
Проинтегрируем по уровням энергии через плотность состояний:
При огромном числе частиц () работает ЦПТ. Поэтому подынтегральная функция концентрируется вблизи максимума, вырождается в дельта-функцию, и вклад в интеграл дает лишь одно значение подынтегральной функции – в ее максимуме (это на пальцах метод перевала):
Продифференцировав , получим термодинамическое определение температуры:
. Как уже было в разделе про Лагрàнжа и Гамильтона с определением импульса, тут определение температуры тоже возникло из поиска экстремума. Мы нашли максимум, потому что
– вогнутая функция (
выпуклая), реализовав принцип максимума энтропии. Это логично: наличие установившейся температуры – понятный признак термодинамического равновесия, где энтропия максимальна.
Вернемся к определению свободной энергии:
Теперь, когда функция стала выпуклая, проявилось преобразование Лежандра (через sup). Сама лежандрова пара – это функция
по переменной
и функция
по переменной
.
Такая пара может показаться громоздкой, но на самом деле она скрывает красивую связь: мы показывали, что – это log-sum-exp, а
– это
. Итог: log-sum-exp и негэнтропия лежандрово сопряжены
Итог: преобразование Лежандра в статфизе порождает много полезных для статистики и ML идей
Статистика
Если задача тервера понять по параметрам модели, какие данные она генерирует, то задача статистики – по данным получить оценку параметров. Заметная часть статистики основана на преобразовании Лежандра
Энтропия, softmax, logsumexp
Вспомним раздел про статфиз (энтропия, Гиббс, свободная энергия). Тем, кто сталкивался со статистикой/ML, формулы в разделе про статфиз уже заспойлерили 3 вещи:
энтропия имеет вид
, как энтропия Шеннона
распределение гиббса похоже на softmax с температурой
свободная энергия имеет вид log-sum-exp
Возьмем негэнтропию Шеннона на вероятностном симплексе. Рассмотрим дискретные вероятности (в непрерывном случае действия аналогичны, но с интегралами вместо сумм). Плюс договоримся использовать натуральный логарифм вместо двоичного:
Посчитаем ее градиент:
Градиент негэнтропии не имеет какого-то устоявшегося названия, но с точностью до константы – это логиты / логарифмические шансы: , причем точное равенство при
.
Посчитаем гессиан и проверим, что функция выпуклая:
Гессиан негэнтропии работает с величинами, обратными вероятностям. По аналогии с лежандровой парой лагранжиан-гамильтониан в физике, и как мы выводили по теореме об обратной функции, можно предположить, что гессиан сопряженной функции как-то работает с прямыми вероятностями. Будет ли он формально обратным – не факт, надо проверять по теореме об обратной функции
Посчитаем преобразование Лежандра от негэнтропии:
Это задача условной оптимизации на симплексе. Решать умеем с помощью функции Лагранжа из раздела про методы оптимизации:
Отдельно отметим, что это полностью соответствует определению преобразования Лежандра, т.к. множитель при зануляется на всех
из рассматриваемого пространства. Саму
подбираем из нормировки
:
Подставим в :