헤시안 행렬
헤시안 행렬
헤시안 행렬(Hessian Matrix)은 다변수 실수값 함수의 이계도함수(second-order partial derivatives)를 정사각형 행렬 형태로 배열한 것으로, 함수의 국소적 곡률 정보를 제공하는 중요한 수학적 도구입니다. 선형대수학과 최적화 이론, 머신러닝, 물리학 등 다양한 분야에서 널리 사용되며, 특히 함수의 극값(최대값, 최소값) 판단과 최적화 알고리즘 설계에 핵심적인 역할을 합니다.
개요
헤시안 행렬은 1844년 독일의 수학자 루돌프 헤세(Ludwig Otto Hesse)가 도입한 개념으로, 다변수 함수의 2차 미분 정보를 체계적으로 표현합니다. 이 행렬은 주어진 함수가 어떤 점에서 볼록(convex)인지, 오목(concave)인지, 또는 안장점(saddle point)을 가지는지를 판단하는 데 사용되며, 뉴턴 방법(Newton's method)과 같은 고급 최적화 기법에서도 필수적으로 등장합니다.
헤시안 행렬은 함수의 그래디언트 벡터의 야코비안(Jacobian)으로도 정의될 수 있으며, 함수가 두 번 연속적으로 미분 가능할 경우 대칭행렬이 됩니다(클레로 정리에 의해).
정의와 수학적 표현
$n$개의 변수를 가지는 실수값 함수 $ f(x_1, x_2, \dots, x_n) $가 있다고 하자. 이 함수의 헤시안 행렬 $ \mathbf{H}_f $는 다음과 같이 정의됩니다:
$$ \mathbf{H}_f = \begin{bmatrix} \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{bmatrix} $$
즉, $ \mathbf{H}_{ij} = \frac{\partial^2 f}{\partial x_i \partial x_j} $입니다.
대칭성
함수 $ f $가 두 번 연속적으로 미분 가능(즉, $ C^2 $ 함수)하다면, 클레로 정리(Clairaut's theorem)에 의해 편도함수의 순서를 바꿔도 결과가 같으므로:
$$ \frac{\partial^2 f}{\partial x_i \partial x_j} = \frac{\partial^2 f}{\partial x_j \partial x_i} $$
이므로 헤시안 행렬은 대칭행렬(symmetric matrix)이 됩니다.
헤시안 행렬의 응용
1. 극값 판별 (2차 도함수 검사)
함수 $ f $의 임계점(critical point, 즉 그래디언트가 0인 점)에서 헤시안 행렬을 통해 극값의 성격을 판단할 수 있습니다.
- 모든 고유값이 양수 → 양의 정부호(positive definite) → 국소 최소점
- 모든 고유값이 음수 → 음의 정부호(negative definite) → 국소 최대점
- 고유값의 부호가 혼합 → 부정정(indefinite) → 안장점
- 고유값 중 0 포함 또는 반정부호 → 판단 불가 (추가 분석 필요)
예를 들어, 함수 $ f(x, y) = x^2 - y^2 $의 헤시안은:
$$ \mathbf{H} = \begin{bmatrix} 2 & 0 \\ 0 & -2 \end{bmatrix} $$
고유값이 $ 2, -2 $로 부호가 다르므로, 원점 $(0,0)$은 안장점입니다.
2. 최적화 알고리즘
헤시안 행렬은 뉴턴 방법(Newton's method)에서 다음 식을 통해 최적화 방향을 계산하는 데 사용됩니다:
$$ \mathbf{x}_{k+1} = \mathbf{x}_k - \mathbf{H}_f^{-1}(\mathbf{x}_k) \nabla f(\mathbf{x}_k) $$
이 방법은 그래디언트 하강법보다 수렴 속도가 빠르지만, 헤시안의 계산과 역행렬 계산 비용이 크기 때문에 대규모 문제에서는 ** quasi-Newton methods **(예: BFGS, L-BFGS)로 대체됩니다.
3. 볼록성 분석
함수 $ f $가 볼록함수일 필요충분조건은 헤시안 행렬이 모든 점에서 양의 반정부호(positive semi-definite)인 것입니다. 이는 최적화 문제에서 전역 최소값 보장을 위해 중요한 조건입니다.
예시: 이변수 함수의 헤시안
함수 $ f(x, y) = x^3 + y^3 - 3xy $를 고려해 봅시다.
-
그래디언트: $$ \nabla f = \left( 3x^2 - 3y, 3y^2 - 3x \right) $$
-
임계점: $ \nabla f = 0 $ → $ x^2 = y, y^2 = x $ → 해는 $ (0,0), (1,1) $
-
헤시안: $$ \mathbf{H}_f = \begin{bmatrix} 6x & -3 \\ -3 & 6y \end{bmatrix} $$
-
점 $ (0,0) $: $ \mathbf{H} = \begin{bmatrix} 0 & -3 \\ -3 & 0 \end{bmatrix} $, 고유값 $ \pm 3 $ → 안장점
- 점 $ (1,1) $: $ \mathbf{H} = \begin{bmatrix} 6 & -3 \\ -3 & 6 \end{bmatrix} $, 고유값 $ 3, 9 $ → 국소 최소점
관련 개념
- 그래디언트 벡터: 1차 편도함수를 모은 벡터
- 야코비안 행렬: 벡터값 함수의 1차 편도함수 행렬
- 라플라시안(Laplacian): 헤시안의 대각합(trace), 스칼라 함수의 2차 미분 합
- 세컨드 오더 조건(Second-order conditions): 최적화에서 극값 판별 기준
참고 자료 및 관련 문서
- Boyd, S., & Vandenberghe, L. (2004). Convex Optimization. Cambridge University Press.
- Marsden, J. E., & Tromba, A. (2012). Vector Calculus. W. H. Freeman.
- Wikipedia: Hessian Matrix
- 관련 문서: 그래디언트, 행렬의 고유값과 고유벡터, 최적화 이론
헤시안 행렬은 다변수 함수의 미분적 성질을 깊이 이해하고, 수치적 최적화를 효과적으로 수행하는 데 필수적인 도구입니다. 특히 현대의 머신러닝 모델 훈련 과정에서 손실 함수의 복잡한 형태를 분석할 때 그 중요성이 더욱 부각됩니다.
이 문서는 AI 모델(qwen-3-235b-a22b-instruct-2507)에 의해 생성된 콘텐츠입니다.
주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.