Матрица Гессе

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

Перейти к: навигация, поиск
Статья написана с использованием LLM ChatGPT 5.6 Sol - xhigh и проверена участником Юхарев Роман Андреевич 16:48 13 июля 2026.


Содержание

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

Матрица Гессе используется в математическом анализе, численной оптимизации, математической статистике и машинном обучении. С её помощью исследуют критические точки, проверяют выпуклость, строят методы второго порядка, оценивают обусловленность задачи и анализируют поверхность функции потерь нейронной сети.

Определение

Пусть функция

f:\mathbb{R}^n\to\mathbb{R}

имеет вторые частные производные в окрестности точки x=(x_1,\ldots,x_n)^T. Её матрица Гессе определяется как

H_f(x)=\nabla^2 f(x)=\begin{pmatrix}\frac{\partial^2 f}{\partial x_1^2} & \frac{\partial^2 f}{\partial x_1\partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_1\partial x_n}\\ \frac{\partial^2 f}{\partial x_2\partial x_1} & \frac{\partial^2 f}{\partial x_2^2} & \cdots & \frac{\partial^2 f}{\partial x_2\partial x_n}\\ \vdots & \vdots & \ddots & \vdots\\ \frac{\partial^2 f}{\partial x_n\partial x_1} & \frac{\partial^2 f}{\partial x_n\partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_n^2}\end{pmatrix}.

Элемент с индексами i,j равен

[H_f(x)]_{ij}=\frac{\partial^2 f(x)}{\partial x_i\partial x_j}.

Если вторые производные непрерывны, то по теореме Шварца смешанные производные совпадают, поэтому

H_f(x)=H_f(x)^T.

Таким образом, гессиан функции класса C^2 является симметричной матрицей, имеет вещественные собственные значения и допускает ортогональное разложение по собственным векторам.[1]

Геометрический смысл

Кривизна вдоль направления

Пусть v\in\mathbb{R}^n — фиксированное направление и рассматривается одномерная функция

\varphi(t)=f(x+tv).

Тогда

\varphi'(0)=\nabla f(x)^T v,

а вторая производная вдоль прямой равна

\varphi''(0)=v^T H_f(x)v.

Квадратичная форма v^T H_f(x)v измеряет локальную кривизну функции в направлении v. Положительное значение означает изгиб вверх, отрицательное — изгиб вниз, а значение, близкое к нулю, — локально почти плоское направление.

Для единичного вектора \|v\|_2=1 справедливы границы

\lambda_{\min}(H_f)\leq v^T H_fv\leq\lambda_{\max}(H_f),

где \lambda_{\min} и \lambda_{\max} — наименьшее и наибольшее собственные значения. Поэтому собственные векторы гессиана задают главные направления локальной кривизны, а собственные значения — величину и знак кривизны вдоль этих направлений.

Квадратичное приближение

Для малого приращения p формула Тейлора второго порядка имеет вид

f(x+p)=f(x)+\nabla f(x)^Tp+\frac{1}{2}p^T H_f(x)p+o(\|p\|^2).

Первое слагаемое задаёт значение функции, линейное слагаемое описывает локальный наклон, а квадратичное — отклонение от касательной гиперплоскости. Именно это приближение лежит в основе метода Ньютона, методов доверительной области и многих способов анализа обученных моделей.[1]

Классификация критических точек

Точка x^\star называется критической, если

\nabla f(x^\star)=0.

В невырожденном случае тип критической точки определяется знаками собственных значений гессиана.

Гессиан в точке x^\star Знаки собственных значений Вывод
Положительно определён Все \lambda_i>0 x^\star — строгий локальный минимум
Отрицательно определён Все \lambda_i<0 x^\star — строгий локальный максимум
Неопределён Есть положительные и отрицательные \lambda_i x^\star — седловая точка
Положительно или отрицательно полуопределён Есть нулевые \lambda_i, остальные одного знака Тест второго порядка не даёт окончательного ответа

Последняя строка принципиальна. Например, у функций f(x)=x^4 и g(x)=-x^4 в точке x=0 одинаковая нулевая матрица Гессе, но первая функция имеет минимум, а вторая — максимум. В вырожденном случае требуется исследовать производные более высокого порядка или поведение функции непосредственно.

Выпуклость и обусловленность

Если f дважды непрерывно дифференцируема на открытом выпуклом множестве, то она выпукла тогда и только тогда, когда

H_f(x)\succeq 0

во всех точках этого множества. Положительная определённость гессиана всюду является достаточным условием строгой выпуклости, но не необходимым: строго выпуклая функция может иметь нулевую вторую производную в отдельных точках.[1]

Для положительно определённого гессиана отношение наибольшего и наименьшего собственных значений

\kappa(H)=\frac{\lambda_{\max}(H)}{\lambda_{\min}(H)}

характеризует обусловленность локальной квадратичной модели. При большом \kappa поверхность имеет сильно различающиеся масштабы кривизны: вдоль одних направлений функция меняется резко, вдоль других — медленно. В такой вытянутой области обычный градиентный спуск может двигаться зигзагообразно и требовать малого шага, тогда как методы, учитывающие кривизну, способны масштабировать направления по-разному.

Если гессиан вырожден, его число обусловленности бесконечно. На практике это может указывать на избыточную параметризацию, симметрии модели, слабую идентифицируемость параметров или локально плоские направления.

Вычисление матрицы Гессе

Явное вычисление

Полная матрица функции от n переменных содержит n^2 элементов и требует O(n^2) памяти. Симметрия позволяет хранить только половину элементов, но порядок затрат не меняется. Для моделей с миллионами параметров явное формирование гессиана практически невозможно.

Явную матрицу используют, когда число переменных невелико, требуется весь спектр или доступна специальная разреженная либо блочная структура. Численное дифференцирование градиента по конечным разностям возможно, но чувствительно к выбору шага и ошибкам округления.

Произведение гессиана на вектор

Во многих алгоритмах нужна не сама матрица, а произведение

H_f(x)v.

Его можно представить как производную градиента вдоль направления:

H_f(x)v=\left.\frac{d}{dt}\nabla f(x+tv)\right|_{t=0}=\nabla_x\left(\nabla f(x)^T v\right).

Метод Пирлмуттера вычисляет это произведение точно средствами автоматического дифференцирования, не формируя H_f; стоимость сравнима с несколькими вычислениями градиента.[1] Такой оператор позволяет применять метод сопряжённых градиентов, алгоритм Ланцоша и стохастическую оценку спектральной плотности к очень большим моделям.

Представление кривизны Память Что сохраняется Основной недостаток
Полный гессиан O(n^2) Все взаимодействия параметров Неприменим для очень больших n
Диагональ гессиана O(n) Покомпонентная кривизна Теряются смешанные производные
Произведение Hv O(n) на вектор Действие полной матрицы на выбранное направление Для восстановления спектра нужны итерационные методы
Блочная или низкоранговая аппроксимация Зависит от структуры Часть межпараметрических связей Результат зависит от выбранного разбиения или ранга

Матрица Гессе в оптимизации

Метод Ньютона

Минимизация квадратичного приближения функции приводит к уравнению

H_f(x_k)p_k=-\nabla f(x_k).

После решения этой линейной системы выполняется обновление

x_{k+1}=x_k+\alpha_k p_k,

где \alpha_k — длина шага. Явно вычислять обратную матрицу H_f^{-1} обычно не следует: направление находят решением системы линейных уравнений. Если гессиан положительно определён, направление Ньютона является направлением спуска. При неопределённом или почти вырожденном гессиане применяют демпфирование, регуляризацию H+\lambda I либо метод доверительной области.[1]

Вблизи невырожденного локального минимума метод Ньютона при стандартных условиях обладает квадратичной локальной сходимостью. Однако одна итерация может быть значительно дороже шага метода первого порядка.

Квазиньютоновские методы

Методы BFGS и L-BFGS не вычисляют истинный гессиан. Они восстанавливают приближение к матрице или к её обратной по изменениям точек и градиентов. BFGS хранит плотную матрицу и требует O(n^2) памяти, тогда как L-BFGS хранит небольшое число последних пар векторов и требует O(mn) памяти.

Квазиньютоновские приближения удобны, когда градиент доступен, но вторые производные слишком дороги. Их не следует смешивать с точным гессианом: полученная матрица удовлетворяет секущим условиям, но не обязана совпадать с \nabla^2 f.

Гессиан-свободная оптимизация

Гессиан-свободные методы решают ньютоновскую подзадачу итерационно, обращаясь к кривизне только через произведения матрицы на вектор. В глубоких нейронных сетях вместо неопределённого гессиана часто используют обобщённую матрицу Гаусса—Ньютона: для функции потерь, выпуклой по выходу модели, она положительно полуопределена. Линейную систему решают методом сопряжённых градиентов.[1]

Блочные аппроксимации матрицы Гаусса—Ньютона снижают вычислительные затраты, сохраняя часть информации о взаимодействиях параметров внутри слоя.[1]

Применения в машинном обучении

Анализ функции потерь нейронной сети

Для модели с параметрами \theta гессиан

H(\theta)=\nabla_\theta^2 L(\theta)

описывает локальную геометрию функции потерь. Его спектр используется для поиска направлений большой кривизны, седловых направлений и почти плоских подпространств. Полный спектр больших сетей не вычисляют напрямую: его оценивают итерационными методами, использующими произведения Hv.

Эмпирический анализ показывает, что в спектре гессиана обучаемых сетей могут появляться отдельные крупные собственные значения, а градиент может концентрироваться в соответствующих собственных подпространствах. Эффект зависит от архитектуры и, в частности, от нормализации по мини-пакету.[1]

Большое максимальное собственное значение иногда интерпретируют как «острый» минимум, а малые собственные значения — как «плоский». Однако такие показатели зависят от параметризации. Для нейронных сетей с симметриями можно изменить масштаб весов и собственные значения гессиана, не изменяя вычисляемую модель и её качество обобщения. Поэтому след гессиана или его спектральную норму нельзя считать универсальной мерой обобщающей способности без фиксации параметризации и метрики пространства параметров.[1]

Прореживание нейронных сетей

В методе Optimal Brain Damage увеличение ошибки при занулении веса оценивается квадратичным приближением функции потерь и диагональю гессиана. При предположении, что модель находится в локальном минимуме, а смешанными производными можно пренебречь, значимость веса w_i приближённо равна

S_i\approx\frac{1}{2}H_{ii}w_i^2.

Веса с малой значимостью удаляются первыми.[1]

Optimal Brain Surgeon учитывает недиагональные элементы через обратный гессиан и компенсирующее изменение остальных весов. Для удаления веса с индексом q квадратичная оценка увеличения ошибки имеет вид

S_q=\frac{w_q^2}{2[H^{-1}]_{qq}}.[1]

Точность такой оценки выше, но хранение и обращение полной матрицы ограничивает масштабируемость метода. Эти идеи лежат в основе ряда современных методов сжатия моделей.

Квантование и сжатие больших моделей

Во второпорядковых методах посттренировочного квантования изменение весов рассматривается как возмущение параметров, а рост функции потерь оценивается квадратичной формой. Современные методы семейства Optimal Brain Compression используют приближения обратной кривизны для последовательного квантования или удаления весов.[1]

Метод GPTQ применяет близкую второпорядковую схему к большим языковым моделям и показал возможность посттренировочного квантования крупных моделей до 3 или 4 бит на вес при небольшом ухудшении качества в исследованных конфигурациях.[1] Здесь используется не полный гессиан по всем параметрам модели, а структурированные послойные приближения, позволяющие сделать вычисления практически выполнимыми.

Гиперпараметры и метаобучение

В задачах двухуровневой оптимизации внутреннее решение \theta^\star(\lambda) зависит от гиперпараметров \lambda. Теорема о неявной функции приводит к выражениям, содержащим произведение обратного гессиана на вектор. Его приближают методом сопряжённых градиентов, рядом Неймана или низкоранговыми методами, не формируя обратную матрицу явно.[1] Такой подход применяется в метаобучении, подборе регуляризации и дифференцируемом поиске архитектуры.

Зависимость от параметризации

Гессиан не преобразуется как обычная билинейная форма при произвольной нелинейной замене координат. Если x=g(z), то для композиции \tilde f(z)=f(g(z)) возникают не только члены J_g^TH_fJ_g, но и дополнительные слагаемые, содержащие градиент f и вторые производные g.

В критической точке, где \nabla f=0, дополнительные слагаемые исчезают:

H_{\tilde f}(z^\star)=J_g(z^\star)^T H_f(x^\star)J_g(z^\star).

При невырожденной замене координат число положительных, отрицательных и нулевых собственных направлений сохраняется по закону инерции Сильвестра. Сами собственные значения при этом могут сильно измениться. Поэтому тип невырожденной критической точки инвариантен, а численная «острота», выраженная конкретными собственными значениями, зависит от координат.

Типичные ошибки интерпретации

  • Гессиан в некритической точке не классифицирует экстремум. Для внутреннего локального экстремума сначала необходимо условие \nabla f=0.
  • Полуопределённость не завершает тест второго порядка. Нулевые собственные значения требуют анализа более высоких порядков.
  • Большое собственное значение не означает автоматически плохое обобщение. Спектр зависит от масштабирования и параметризации модели.[1]
  • Обратную матрицу обычно не вычисляют явно. В методе Ньютона решают линейную систему; в больших задачах используют произведения матрицы на вектор.
  • Матрица Гаусса—Ньютона и матрица Фишера не тождественны гессиану в общем случае. Они могут совпадать или быть связанными при дополнительных предположениях о модели и функции потерь.
  • Диагональ не описывает взаимодействия параметров. Диагональные приближения удобны, но могут пропустить важную кривизну в повёрнутых направлениях.

Пример

Рассмотрим функцию

f(x,y)=x^2+xy+3y^2-4x.

Её градиент равен

\nabla f(x,y)=\begin{pmatrix}2x+y-4\\x+6y\end{pmatrix},

а гессиан постоянен:

H_f=\begin{pmatrix}2 & 1\\1 & 6\end{pmatrix}.

Главные миноры равны 2>0 и \det H_f=11>0, поэтому по критерию Сильвестра матрица положительно определена. Следовательно, функция строго выпукла и её единственная критическая точка является глобальным минимумом.

Решая систему \nabla f=0, получаем

(x^\star,y^\star)=\left(\frac{24}{11},-\frac{4}{11}\right).

Поскольку функция квадратична, её приближение Тейлора второго порядка является точным, а метод Ньютона из любой начальной точки достигает минимума за один полный шаг при точных вычислениях.

См. также

Примечания

Литература

  • Boyd S., Vandenberghe L. Convex Optimization. Cambridge University Press, 2004. ISBN 978-0-521-83378-3. Полный текст.
  • Nocedal J., Wright S. J. Numerical Optimization. 2nd ed. Springer, 2006. DOI: 10.1007/978-0-387-40065-5.
  • Pearlmutter B. A. Fast Exact Multiplication by the Hessian // Neural Computation. 1994. Vol. 6, No. 1. P. 147–160. DOI: 10.1162/neco.1994.6.1.147.
  • Martens J. Deep Learning via Hessian-Free Optimization // Proceedings of the 27th International Conference on Machine Learning. 2010. P. 735–742.
  • Botev A., Ritter H., Barber D. Practical Gauss-Newton Optimisation for Deep Learning // Proceedings of the 34th International Conference on Machine Learning. 2017. P. 557–565.
  • Ghorbani B., Krishnan S., Xiao Y. An Investigation into Neural Net Optimization via Hessian Eigenvalue Density // Proceedings of the 36th International Conference on Machine Learning. 2019. P. 2232–2241.
  • Dinh L., Pascanu R., Bengio S., Bengio Y. Sharp Minima Can Generalize for Deep Nets // Proceedings of the 34th International Conference on Machine Learning. 2017. P. 1019–1028.
  • LeCun Y., Denker J. S., Solla S. A. Optimal Brain Damage // Advances in Neural Information Processing Systems 2. 1990. P. 598–605.
  • Hassibi B., Stork D. G. Second Order Derivatives for Network Pruning: Optimal Brain Surgeon // Advances in Neural Information Processing Systems 5. 1993. P. 164–171.
  • Frantar E., Alistarh D. Optimal Brain Compression: A Framework for Accurate Post-Training Quantization and Pruning // Advances in Neural Information Processing Systems 35. 2022. P. 4475–4488.
  • Frantar E., Ashkboos S., Hoefler T., Alistarh D. GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transformers // International Conference on Learning Representations. 2023.
Личные инструменты