Лекція 18. Другі похідні, матриця Гессе і кривизна
Коротко про лекцію
Лекція вводить другі похідні та матрицю Гессе як опис локальної кривизни. Ви навчитеся за власними значеннями та квадратичною формою розрізняти локальний мінімум, максимум і сідлову точку.
Практичний сенс. Градієнт показує локальний напрям зміни, але не описує форму поверхні повністю. Дві точки можуть мати однаковий градієнт і дуже різну кривизну. Другі похідні та матриця Гессе описують локальну кривизну й допомагають класифікувати стаціонарні точки.
Постановка та базові поняття
1. Навіщо потрібна інформація другого порядку
Для одновимірної функції друга похідна показує, як змінюється перша похідна.
Для багатьох змінних існує кілька других часткових похідних.
Їх потрібно організувати в одну матрицю.
Ця матриця називається матрицею Гессе.
Вона допомагає відповісти на питання: поверхня вигинається вгору, вниз чи має змішану кривизну.
1.1. Звідки назва «матриця Гессе» і що вона вимірює
Для однієї змінної кривизну описує друга похідна. Для багатьох змінних других часткових похідних кілька, тому їх збирають у одну таблицю. Цю таблицю називають матрицею Гессе на честь математика Людвіга Отто Гессе.
Діагональні елементи описують кривизну вздовж окремих координат. Позадіагональні показують, як зміна однієї координати впливає на похідну за іншою. Тому матриці Гессе є багатовимірним аналогом другої похідної.
Власні значення матриці допомагають побачити кривизну в особливих взаємно перпендикулярних напрямах. Додатні власні значення означають кривизну вгору, різні знаки вказують на сідлову геометрію.
2. Наскрізна квадратична функція
Розглянемо:
Перші похідні:
Градієнт:
Стаціонарна точка:
3. Другі часткові похідні
Диференціюємо ще раз.
За \(x\):
За \(y\):
Змішані похідні:
та:
4. Матриця Гессе
Для функції двох змінних:
Для нашої функції:
Матриця Гессе є сталою, бо функція квадратична.
5. Як читати елементи матриці Гессе
Діагональні елементи відповідають чистим другим похідним.
Позадіагональні елементи описують взаємний вплив координат.
Наприклад, для члена \(2xy\) зміна \(x\) впливає на похідну за \(y\), а зміна \(y\) — на похідну за \(x\).
Тому матриці Гессе кодує окремі масштаби кривизни та поворот локальної геометрії.
У квадратичній формі:
матриця \(H\) повністю визначає форму поверхні другого порядку.
Якщо \(H\) діагональна, головні напрями збігаються з осями.
Якщо є ненульові позадіагональні елементи, головні напрями зазвичай повернуті.
Діагональні елементи описують кривизну вздовж координатних осей.
Число 2 відповідає кривизні за \(x\).
Число 4 відповідає кривизні за \(y\).
Нульові змішані елементи означають, що в цій функції координати не взаємодіють у квадратичному члені.
Якщо є член \(xy\), змішані похідні стають ненульовими.
Математична логіка
6. Квадратична форма кривизни
Вираз \(s^THs\) можна прочитати як кривизну вздовж напрямку \(s\).
Для одиничного \(s\) він дає локальну величину другого порядку в цьому напрямі.
Розглянемо два прості напрями.
Для:
отримуємо:
Для:
отримуємо:
Отже, за \(y\) поверхня крутіша.
Це узгоджується з еліптичними лініями рівня на рисунку.
Для малого напрямку \(s\) локальний квадратичний внесок визначає:
Якщо:
для кожного ненульового \(s\), матриця є додатно визначеною.
Така кривизна означає локальну «чашу».
Для нашої матриці Гессе:
дає:
Цей вираз додатний для кожного ненульового \(s\).
7. Додатна визначеність
Матриця \(H\) називається додатно визначеною, якщо:
для всіх \(s\ne0\).
У стаціонарній точці додатно визначена матриця Гессе підтверджує строгий локальний мінімум.
Для нашої функції точка \((0,0)\) має нульовий градієнт, а матриця Гессе є додатно визначеною.
Тому це строгий локальний мінімум.
Оскільки сама функція є сумою додатних квадратів, мінімум також глобальний.

8. Від’ємна визначеність
Якщо:
для всіх ненульових \(s\). У такому разі матриця Гессе від’ємно визначена.
Тоді стаціонарна точка відповідає строгому локальному максимуму.
Наприклад:
має матрицю Гессе:
У точці \((0,0)\) маємо локальний максимум.
9. Невизначена матриця Гессе і сідлова точка
Розглянемо:
Градієнт дорівнює нулю в точці \((0,0)\).
Матриця Гессе:
Вздовж напряму \((1,0)^T\) кривизна додатна.
Вздовж \((0,1)^T\) вона від’ємна.
Тому матриці Гессе невизначена.
Точка \((0,0)\) є сідловою.

10. Власні значення як практична перевірка
Для симетричної матриці власні значення є дійсними.
Це робить їх зручними для чисельний класифікація.
Наприклад, якщо чисельний розв’язувач повернув:
[1.9999999998, 4.0000000001]
обидва значення однозначно додатні.
Якщо одне значення дорівнює приблизно \(10^{-14}\), жорсткий висновок уже небезпечний.
Тому використовують числовий допуск.
Наприклад:
для всіх \(i\) як чисельну ознаку додатної визначеності.
Цей числовий допуск стосується власні значення, а не норма градієнта, тому його слід документувати окремо.
Для симетричної матриці знак власних значень дає зручний тест визначеності.
Якщо всі власні значення додатні, матриця Гессе додатно визначена.
Якщо всі від’ємні — від’ємно визначений.
Якщо є і додатні, і від’ємні — матриця Гессе невизначена.
Для:
власні значення:
Обидва додатні.
11. Що таке власне значення в мінімальному обсязі
Власне значення \(\lambda\) відповідає ненульовому вектору \(v\), для якого:
У такому напрямі матриця діє як просте масштабування.
Для матриці Гессе це означає, що власні вектори задають особливі напрями кривизни.
Власні значення показують силу кривизни в цих напрямах.
Для діагональної матриці власні напрями збігаються з координатними осями.
12. Змішані похідні
Для достатньо гладкої функції діє симетрія:
Тому матриці Гессе очікується симетричною.
Це дає просту структурну перевірку.
Якщо аналітична формула дала:
для гладкої функції, потрібно перевірити змішані похідні.
У програмному коді такий структурний перевірка часто знаходить помилку швидше за повний запуск чисельного розв’язувача.
Розглянемо:
Перші похідні:
Матриця Гессе:
Ненульові позадіагональні елементи показують взаємодію координат.
Лінії рівня такого квадратичного виразу будуть повернуті відносно осей.
Алгоритм і покроковий розбір
13. Класифікація стаціонарної точки
Сам порядок дій важливий.
Матриця Гессе у довільній точці не класифікує її як мінімум або максимум.
Спочатку потрібно знайти стаціонарного кандидата.
Після цього матриця Гессе описує локальну кривизну навколо цієї точки.
Якщо градієнт ненульовий, існує локальний напрям першого порядку, тому класифікація стаціонарної точки ще не актуальна.
Отже, градієнт відповідає на питання «чи точка стаціонарна», а матриця Гессе — «який локальний тип має стаціонарна точка».
Для гладкої функції двох змінних:
- знайти градієнт;
- розв’язати \(\nabla f=0\);
- обчислити матрицю Гессе у кандидатній точці;
- визначити знаки власних значень;
- зробити висновок про локальний тип.
Додатні власні значення дають строгий локальний мінімум.
Від’ємні дають строгий локальний максимум.
Змішані знаки дають сідлову точку.
14. Ручна класифікація першого прикладу
Для:
стаціонарна точка:
Матриця Гессе:
Власні значення 2 та 4.
Отже, матриця Гессе додатно визначена.
Точка є строгим локальним мінімумом.
15. Ручна класифікація сідлової точки
Для:
Матриця Гессе:
Одне власне значення додатне, інше від’ємне.
Тому точка \((0,0)\) сідлова.
Нульовий градієнт тут не означає мінімум.
16. Вироджений випадок
Нульове власне значення означає відсутність квадратичної кривизни в певному напрямі.
Але це ще не означає пласку функцію повністю.
Члени четвертого або вищого порядку можуть забезпечувати мінімум.
Для \(x^4+y^2\) другий порядок не бачить кривизну за \(x\) у нулі.
Проте четвертий порядок робить функцію невід’ємною.
Тому статус INCONCLUSIVE є коректним результатом тесту матриці Гессе.
Він означає потребу в додатковому аналізі, а не помилку.
Якщо матриця Гессе має нульове власне значення, простий тест може не дати відповіді.
Наприклад:
У точці \((0,0)\) матриця Гессе має нульову кривизну за \(x\) другого порядку.
Проте функція невід’ємна і має мінімум у нулі.
Тоді потрібен аналіз членів вищого порядку або прямої структури функції.
Програмна реалізація та перевірка
17. Матриця Гессе у Python
Для наскрізної функції:
# Імпортуємо NumPy для обчислень, розв’язання моделі та її перевірки.
import numpy as np
# Задаємо матрицю кривизни у фіксованому порядку змінних.
hessian = np.array([
[2.0, 0.0],
[0.0, 4.0],
])
# Виводимо результат і діагностичні величини, щоб зіставити їх з очікуваними числами.
print(hessian)
Матриця симетрична.
Це очікувано для достатньо гладкої функції, де змішані другі похідні збігаються.
18. Власні значення
Для симетричної матриці зручно використовувати:
# Обчислюємо власні значення симетричної матриці, щоб визначити знак локальної кривизни.
eigenvalues = np.linalg.eigvalsh(
hessian
)
# Виводимо результат і діагностичні величини, щоб зіставити їх з очікуваними числами.
print(eigenvalues)
np.linalg.eigvalsh спеціально працює із симетричними або ермітовими матрицями.
Очікувано:
[2. 4.]
Обидва значення додатні.
19. Програмна класифікація
Перед класифікація корисно перевірити, що матриця квадратна.
Для двох змінних очікується розмір:
(2, 2)
Для \(n\) змінних:
(n, n)
Також потрібно перевірити скінченність елементів.
NaN або inf у матриці Гессе роблять власне значення аналіз беззмістовним.
Тому послідовність чисельної перевірки може мати послідовність: розмір, скінченні значення, нев’язка симетрії, власні значення, класифікація.
# Обчислюємо характеристику кривизни через матрицю Гессе.
tolerance = 1e-10
# Перевіряємо умову алгоритму перед вибором наступної гілки обчислень.
if np.all(eigenvalues > tolerance):
classification = "STRICT_LOCAL_MINIMUM"
elif np.all(eigenvalues < -tolerance):
classification = "STRICT_LOCAL_MAXIMUM"
elif (
np.any(eigenvalues > tolerance)
and np.any(eigenvalues < -tolerance)
):
classification = "SADDLE"
else:
classification = "INCONCLUSIVE"
# Виводимо результат і діагностичні величини, щоб зіставити їх з очікуваними числами.
print(classification)
Числовий допуск потрібен через чисельне округлення.
Значення дуже близьке до нуля краще не класифікувати жорстко.
20. Чисельна перевірка матриці Гессе
Один стовпець можна оцінити як:
Тут \(e_i\) — координатний одиничний вектор.
Для двох змінних потрібно двічі змінити точку.
Отримана чисельна матриця порівнюється з аналітичною.
Нев’язка:
допомагає виявити помилки другого порядку.
Цей перевірка доречний перед використанням метод Ньютона.
Другі похідні також можна перевіряти чисельно.
Один практичний шлях — чисельно диференціювати градієнт.
Кожний стовпець матриці Гессе показує зміну градієнта при малому русі за однією координатою.
Для складної функції чисельний перевірка матриці Гессе допомагає знайти помилки в аналітичних формулах.
21. Перевірка симетрії
Для гладкої функції очікується:
Нев’язка симетрії:
де \(\|\cdot\|_F\) — норма Фробеніуса.
Малий нев’язка підтримує коректність структури матриці Гессе.
Великий нев’язка часто вказує на помилку в змішаних похідних або порядку координат.
Інтерпретація, межі та підсумок
22. Типові помилки
Ще одна помилка — вважати великий позитивний діагональний елемент достатнім для мінімуму.
Позадіагональні елементи можуть змінити власні значення.
Наприклад, матриця з додатними діагональними елементами може бути невизначеною.
Тому визначеність перевіряється за всією матрицею.
Також часто плутають власні значення матриці Гессе із власні значення самої функції, хоча функція не є матрицею.
Власні значення належать локальній матриці кривизни.
Типова помилка. Нульовий градієнт автоматично називають мінімумом. Матриця Гессе може виявити максимум або сідлову точку.
Друга помилка — перевіряють тільки діагональні елементи матриці Гессе.
Третя — плутають матрицю Гессе із градієнтом.
Четверта — власне значення дуже близьке до нуля класифікують без числовий допуск.
П’ята — порядок координат у матриці Гессе не збігається з порядком змінних.
23. Матриця Гессе і локальна геометрія
Матриця Гессе є локальним об’єктом.
Для нелінійної функції він залежить від точки.
Матриця може бути додатно визначеною в одному місці й невизначеною в іншому.
Тому перевірка кривизни виконується там, де потрібна локальна модель.
Для квадратичної функції матриця Гессе є сталою, що значно спрощує аналіз.
24. Матриця Гессе і масштабування
Відношення найбільшого та найменшого додатного власне значення часто пов’язують із число обумовленості.
Для додатно визначеної матриці:
Якщо \(\kappa\) близьке до 1, кривизна за напрямами подібна.
Велике \(\kappa\) означає сильно витягнуту геометрію.
Для градієнтний спуск це часто означає повільну збіжність.
крок Ньютона використовує \(H^{-1}\) і тим самим компенсує цей дисбаланс локально.
Великі відмінності між власними значеннями означають різну кривизну за напрямами.
Наприклад, значення 1 та \(10^6\) створюють вузьку долину.
Градієнтний спуск у такій геометрії може збігатися повільно.
Метод Ньютона використовує матрицю Гессе, щоб компенсувати різну кривизну.
Це головний місток до наступної лекції.
24.1. Наближення Тейлора другого порядку
Матриця Гессе природно з’являється в багатовимірному наближенні Тейлора.
Для малого кроку \(s\):
Перший доданок задає поточне значення.
Другий доданок описує локальну лінійну зміну.
Третій доданок додає поправку на кривизну.
Якщо градієнт у точці нульовий, саме квадратична частина визначає локальну форму першого ненульового порядку.
Тому знак \(s^THs\) допомагає класифікувати стаціонарну точку.
24.2. Чому матриці Гессе симетричний
Для достатньо гладкої функції змішані похідні збігаються.
Це означає:
Тому матриці Гессе є симетричною матрицею.
Симетрія важлива чисельно.
Для симетричної матриці власні значення дійсні, а eigenвектори можна вибрати ортогональними.
Це робить геометричне тлумачення значно простішою.
Якщо обчислена матриця Гессе помітно несиметрична, варто перевірити формули або чисельне диференціювання.
24.3. Напрямна кривизна
Для одиничного напрямку \(u\):
описує кривизна уздовж цього напрям.
Якщо всі такі значення додатні, маємо додатну визначеність.
Якщо в одному напрям значення додатне, а в іншому від’ємне, поверхня має сідлову геометрію.
Це дозволяє пояснити власні значення геометрично.
Найменше власне значення відповідає найменшій головний кривизна.
Найбільше власне значення відповідає найбільшій головний кривизна.
24.4. Перевірка через визначник для матриці 2×2
Для симетричної матриці:
у двовимірному випадку існує простий критерій додатної визначеності.
Потрібно:
і:
Другий вираз є визначником матриці Гессе.
Для:
маємо:
та:
Отже, матриця додатно визначена.
Для великих матриць власне значення або розклад методи зручніші.
24.5. Розклад Холєцького як практичний тест
Додатно визначену симетричну матрицю можна подати:
де \(L\) — нижня трикутна матриця.
Такий розклад називається розкладом Холєцького.
Якщо розклад Холєцького успішно побудовано, це сильний чисельний сертифікат додатної визначеності.
У NumPy доступна функція np.linalg.cholesky.
Для великих оптимізація алгоритми такий перевірка іноді природніший за повний власне значення розклад.
24.6. Матриця Гессе і обумовленість
Нехай власні значення:
та:
Тоді:
Лінії рівня будуть сильно витягнутими.
Градієнтний спуск відчуватиме великий дисбаланс довжина кроку.
Ньютона масштабування компенсує цей ефект через обернений кривизна.
Тому матриці Гессе має одночасно геометричний та алгоритмічний зміст.
24.7. Що зберігати у звіті
Для стаціонарної точки корисно навести:
GRAD_NORM
HESSIAN
EIGENVALUES
MIN_EIGENVALUE
CLASSIFICATION
Для маленької задачі матрицю Гессе можна показати повністю.
Для великої задачі достатньо узагальнені характеристики.
Цей формат дозволяє відтворити обґрунтування від стаціонарності до класифікація.
24.8. Приклад із повернутою квадратичною формою
Розглянемо:
Матриця Гессе:
Обчислимо визначник:
Перший головний елемент додатний:
Тому для симетричної матриці \(2\times2\) маємо додатну визначеність.
Власні значення теж додатні.
Функція має строгий мінімум у точці \((0,0)\).
Позадіагональні елементи повертають головні осі, але не руйнують додатний кривизна.
24.9. Приклад матриці з додатними діагоналями та сідловою формою
Нехай:
Обидва діагональні елементи додатні.
Проте визначник:
від’ємний.
Отже, матриця невизначена.
Цей приклад показує, чому перевірка тільки діагоналі недостатня.
24.10. Добуток матриці Гессе на вектор
Для дуже великої задачі повна матриця Гессе може бути дорогою.
Іноді алгоритм потребує тільки добуток:
для заданого вектора \(v\).
Такий добуток матриці Гессе на вектор можна обчислювати без зберігання всіх \(n^2\) елементів.
Ця ідея використовується в поглиблених методах другого порядку.
Для поточного курсу вона пояснює, що інформація про кривизну не завжди означає повну щільну матрицю.
24.11. Чисельний приклад число обумовленості
Для:
маємо:
Геометрія досить добре обумовлена.
Для:
маємо:
Лінії рівня стають сильно витягнутими.
Саме такі задачі створюють повільний зигзаг для градієнтний спуск.
24.12. Від матриці Гессе до кроку Ньютона
Матриця Гессе має дві ролі.
Перша — класифікація стаціонарної точки.
Друга — побудова напрям, скоригований за кривизною.
У метод Ньютона матриця входить у систему:
Тому правильність матриці Гессе впливає на теоретичний висновок і наступну чисельну ітерацію.
Це пояснює, чому перевірка матриці Гессе є практично важливим.
24.13. Матриця Гессе в точці та як функція
Для нелінійної цільової функції матриця Гессе залежить від \(x\).
Тому коректно писати:
У кожній новій точці матриця може змінюватися.
Наприклад, для:
маємо:
У точці \(x=0\) перша кривизна дорівнює нулю.
При \(x=1\) вона вже дорівнює 12.
Це показує, що локальний геометрія справді локальна.
24.14. Перевірка розмірності
Для \(n\) змінних градієнт має довжину \(n\), а матриця Гессе має розмір:
Це простий структурний інваріант.
Якщо функція має три змінні, матриця \(2\times2\) не може бути її повною матрицею Гессе.
У коді розмір перевірка повинен виконуватися до власне значення аналіз.
Такі базові перевірки часто виявляють помилки швидше за складні чисельний діагностика.
24.15. Що означає найменше власне значення
Величина:
є особливо корисною.
Якщо вона впевнено додатна, кривизна додатна в усіх напрямах.
Якщо вона від’ємна, існує напрям від’ємний кривизна.
Якщо вона близька до нуля, класифікація потребує числовий допуск та обережності.
Тому в компактному звіті часто достатньо найменше власне значення разом із найбільше власне значення та класифікація.
24.16. Ще один приклад класифікації
Нехай:
Матриця Гессе:
Перший головний елемент додатний.
Визначник:
Тому матриця додатно визначена.
Стаціонарна точка \((0,0)\) є строгий локальний мінімум.
Цей приклад показує, що ненульові змішані похідні не заважають мінімум, якщо повна квадратична форма залишається додатною.
24.17. Числовий допуск для власних значень
Під час обчислень із рухомою комою власне значення, який математично дорівнює нулю, може виглядати як:
-2.3e-14
Жорстке правило eigenvalue < 0 помилково класифікує такий результат як від’ємний кривизна.
Тому класифікація використовує числовий допуск.
Наприклад:
можна трактувати як чисельно нульове для конкретного масштабу.
Числовий допуск потрібно адаптувати до норма матриця.
24.18. Підсумкова схема аудиту матриці Гессе
Практичний перевірка можна записати як:
SHAPE
FINITE
SYMMETRY_RESIDUAL
EIGENVALUES
MIN_EIGENVALUE
MAX_EIGENVALUE
CLASSIFICATION
Такий блок дає структурну, чисельну та математичну інформацію.
Для студентського звіту достатньо показати основні числа й коротко пояснити їхній зміст.
24.19. Контрольна думка
Матриця Гессе описує локальну геометрію другого порядку. Її класифікація має сенс разом із інформацією про градієнт. У стаціонарній точці власні значення пояснюють мінімум, максимум або сідлову поведінку, а в методі Ньютона та сама матриця впливає на напрям.
24.20. Практична інтерпретація
Матрицю Гессе можна читати як локальну карту кривизни. Градієнт показує, куди змінюється функція, а матриця Гессе пояснює, наскільки швидко змінюється цей напрям. Разом вони формують перший і другий рівні локальної моделі.
24.21. Контрольний висновок
Для стаціонарної точки потрібно вміти обчислити матрицю Гессе, перевірити симетрію, знайти власні значення і пояснити їхні знаки. Якщо класифікація не дає остаточного висновку, матеріал повинен прямо вказати потребу в додатковому аналізі.
24.22. Фінальна примітка
Матриця Гессе є локальним математичним сертифікатом кривизни. Її значення корисне тільки разом із правильною точкою, правильним порядком змінних і чисельно стабільною перевіркою власних значень.
Це правило стане основою для перевірки опуклості та побудови методів, які враховують кривизну, у наступних темах.
Практична перевірка матриці Гессе завершує цей аналіз.
Інтерактивна самоперевірка лекції
Пройдіть 10 коротких питань. Після кожної відповіді ви побачите пояснення, а за потреби — підказку й повний розбір.
25. Підсумок
Другі похідні описують зміну локального нахилу, а матриця Гессе збирає цю інформацію для всіх координат. Її квадратична форма та власні значення показують кривизну в різних напрямах. Додатні власні значення відповідають локальному вигину вгору, власні значення різних знаків — сідловій геометрії.
Класифікацію стаціонарної точки починають із перевірки нульового градієнта. Після цього додатно визначена матриця Гессе підтверджує строгий локальний мінімум, а невизначена матриця вказує на сідлову точку. Для нелінійної функції матриця залежить від точки, тому висновок завжди потрібно прив’язувати до конкретної області або координат.
Чисельний аудит включає симетрію матриці, власні значення та явний допуск для значень біля нуля. Критерій Сильвестра й розклад Холєцького дають додаткові способи перевірки визначеності. Наступна лекція використовує цю кривизну безпосередньо для побудови кроку Ньютона.