헤세 행렬

오류 제보
수치해석 시뮬레이션 마지막 수정: 2026-07-20 04:11:42

○ 공개 검수 대기 표시 기준 보기

1. 개요

헤세 행렬
Hessian matrix
정의스칼라 함수의 2차 편미분 행렬
대칭성연속 2차 도함수면 대칭 (슈바르츠 정리)
고유값 부호극소/극대/안장점 판별
주요 용도최적화, 안정성 해석, 곡률
관련자코비안, 뉴턴법

헤세 행렬(Hessian matrix)은 다변수 스칼라 함수 f(x)f(\mathbf{x}) 의 모든 2차 편미분을 모아 만든 정방 대칭행렬이다. nn 변수 함수라면 n×nn\times n 크기이며 성분은 다음과 같다.

Hij=∂2f∂xi ∂xjH_{ij} = \frac{\partial^2 f}{\partial x_i \, \partial x_j}

한마디로 함수의 곡률(curvature) 정보를 통째로 담은 물건이다. 자코비안 행렬이 함수의 1차 미분(기울기·기울기의 행렬 버전)이라면, 헤세는 그 자코비안을 한 번 더 미분한 2차 미분판. 최적화에서 극값을 판별하고, 물리 시뮬레이션에서 평형의 안정성을 따지고, 통계에서 추정의 정밀도를 재는 등 “함수가 어느 방향으로 얼마나 휘어 있는가”를 알아야 하는 곳이면 어김없이 등장한다.1

2. 정의와 대칭성

함수 f:Rn→Rf:\mathbb{R}^n\to\mathbb{R} 의 헤세는 기울기 벡터 ∇f\nabla f 의 자코비안 행렬로도 이해할 수 있다. 즉 H=∇(∇f)\mathbf{H} = \nabla(\nabla f). 2차 도함수가 연속이면 미분 순서를 바꿔도 결과가 같다는 슈바르츠(Clairaut) 정리에 의해

∂2f∂xi∂xj=∂2f∂xj∂xi\frac{\partial^2 f}{\partial x_i \partial x_j} = \frac{\partial^2 f}{\partial x_j \partial x_i}

가 성립하고, 따라서 헤세는 대칭행렬이 된다. 대칭이라는 사실은 공짜 선물이 아니다. 실대칭행렬은 항상 실수 고유값을 가지고 직교 고유벡터로 대각화되므로, 헤세의 고유값 부호만 보면 그 점에서 함수가 어떻게 생겼는지 완전히 읽어낼 수 있다.

3. 극값 판별 — 2차 판정법

한 변수 미적분에서 “1차 도함수 0, 2차 도함수 부호로 극대/극소 판정”하던 그 논리의 다변수 버전이다. 임계점(∇f=0\nabla f = \mathbf{0})에서 헤세의 고유값을 보면:

  • 모든 고유값이 양수 → 양정치(positive definite) → 극소점(그릇 모양).
  • 모든 고유값이 음수 → 음정치 → 극대점(엎어놓은 그릇).
  • 양·음이 섞여 있음 → 부정치(indefinite) → 안장점(saddle point).
  • 0 고유값 존재 → 판정 불가(고차항을 봐야 함).

테일러 전개로 보면 직관이 명확하다. 임계점 근방에서

f(x+δ)≈f(x)+12 δ⊤H δf(\mathbf{x} + \boldsymbol{\delta}) \approx f(\mathbf{x}) + \tfrac{1}{2}\, \boldsymbol{\delta}^\top \mathbf{H} \, \boldsymbol{\delta}

이므로, 2차항 δ⊤Hδ\boldsymbol{\delta}^\top\mathbf{H}\boldsymbol{\delta} 의 부호가 곧 함수가 올라가느냐 내려가느냐를 결정한다. 안장점은 딥러닝 손실 지형에서 극소점보다 압도적으로 많다는 것이 잘 알려져 있는데, 경사하강법이 안장점 근처에서 굼떠지는 이유가 바로 이 부정치 헤세다.2

4. 최적화에서의 역할

뉴턴-랩슨법을 최적화에 쓰면 각 반복에서 다음 선형계를 푼다.

H(xk) Δx=−∇f(xk)\mathbf{H}(\mathbf{x}_k) \, \Delta \mathbf{x} = -\nabla f(\mathbf{x}_k)

즉 헤세는 뉴턴 스텝의 방향과 보폭을 동시에 결정하는 핵심 부품이다. 헤세가 양정치일 때 이 스텝은 하강 방향을 보장하고, 극소점 근방에서 2차 수렴이라는 무시무시한 속도를 낸다. 문제는 세 가지다.

  1. 계산 비용: n×nn\times n 성분을 매 반복 계산·저장해야 한다. 변수가 수만 개면 H\mathbf{H} 저장만으로 메모리가 터진다.
  2. 역행렬 비용: 선형계 풀이가 O(n3)O(n^3). 대규모에서는 희소행렬 구조나 반복법이 필수.
  3. 부정치 문제: 임계점에서 멀면 헤세가 부정치라 스텝이 극대점·안장점으로 튈 수 있다.

이 부담들 때문에 실무에서는 헤세를 직접 안 만든다. 준-뉴턴법(BFGS, DFP 등)은 기울기 차이만으로 헤세(또는 그 역)를 점진적으로 근사하고, 가우스-뉴턴법은 최소자승 문제에서 헤세를 자코비안 곱 J⊤J\mathbf{J}^\top\mathbf{J} 로 근사한다. 신뢰 영역 방법은 부정치 헤세도 안전하게 다루도록 스텝 크기를 신뢰 반경으로 제한한다. 라인서치와 조합해 헤세의 조건수가 나빠도 하강을 강제하기도 한다.

5. 시뮬레이션·통계에서의 헤세

최적화 밖에서도 헤세는 곳곳에 숨어 있다.

6. 관련 문서

7. Footnotes

  1. 이름은 19세기 독일 수학자 루트비히 오토 헤세(Ludwig Otto Hesse)에서 왔다. 정작 “헤세 행렬”이라는 명칭을 붙인 건 헤세 본인이 아니라 실베스터(Sylvester)라는 후대 수학자다. 발명자가 아니라 명명자가 이름을 남기는 흔한 수학사의 아이러니. ↩

  2. 고차원에서 임계점이 순수 극소점일 확률은 지수적으로 작다. nn 개 고유값이 전부 같은 부호일 확률이니까. 그래서 대규모 신경망 학습의 진짜 적은 국소 최소점이 아니라 안장점의 평원(plateau)이라는 게 정설이다. ↩

이 문서가 문제를 푸는 데 도움이 됐나요? 한 번의 클릭이 다음 검수 순서를 정합니다.

의견을 반영할게요. 감사합니다.

다음으로 읽기 뉴턴-랩슨법 약 5분 더 탐색 →