본문 바로가기
AI 수학/최적화

스칼라 함수를 벡터로 두번 미분하기 : 헤시안

by 깊은대학 2020. 7. 17.

스칼라 함수의 그래디언트는 벡터다. 그러면 그래디언트를 벡터에 대해 한번 더 미분한다면 행렬이 될 것이다. 이 행렬은 스칼라 함수를 벡터로 두 번 미분하여 얻어진 것으로 헤시안(Hessian)이라고 한다. 수식으로 알아보자.

벡터 \( {\bf x} = \begin{bmatrix} x_1 & x_2 & ... & x_n \end{bmatrix} ^T \)의 구성요소를 변수로 하는 다변수 스칼라 함수 \( f( {\bf x}) \)를 벡터 \( \bf x \)에 대해 미분하면 다음과 같이 된다.

 

\[ \frac{d f}{d {\bf x} } = \begin{bmatrix} \frac{\partial f}{\partial x_1 } \\ \frac{\partial f}{\partial x_2 } \\ \vdots \\ \frac{\partial f}{\partial x_n } \end{bmatrix} \]

 

벡터 함수의 벡터 미분 표기에 의하면, 벡터 함수 \( \frac{df}{d{\bf x}} \)를 벡터 \( {\bf x} \)에 대해 미분한다는 표기는 \( \frac{d}{d {\bf x}}\left( \frac{df}{d {\bf x}} \right) \)가 된다. 그리고 벡터 함수의 미분 정의에 의하면 헤시안 \( \frac{d}{d {\bf x}}\left( \frac{d f}{d {\bf x}} \right) \)는 다음과 같이 계산된다.

 

\[ \frac{d}{d {\bf x}}\left( \frac{d f}{d {\bf x}} \right) = \frac{d^2 f}{d {\bf x}^2} = \begin{bmatrix} \frac{\partial}{\partial x_1 }\left( \frac{\partial f}{\partial x_1} \right) & \frac{\partial}{\partial x_1 }\left( \frac{\partial f}{\partial x_2} \right) & \cdots & \frac{\partial}{\partial x_1 }\left( \frac{\partial f}{\partial x_n} \right) \\ \frac{\partial}{\partial x_2 }\left( \frac{\partial f}{\partial x_1} \right) & \frac{\partial}{\partial x_2 }\left( \frac{\partial f}{\partial x_2} \right) & \cdots & \frac{\partial}{\partial x_2 }\left( \frac{\partial f}{\partial x_n} \right) \\ \vdots & \vdots & \ddots & \vdots \\ \frac{\partial}{\partial x_n }\left( \frac{\partial f}{\partial x_1} \right) & \frac{\partial}{\partial x_n }\left( \frac{\partial f}{\partial x_2} \right) & \cdots & \frac{\partial}{\partial x_n }\left( \frac{\partial f}{\partial x_n} \right) \end{bmatrix} \]

 

정의에 의하면 헤시안은 행과 열의 개수가 \( n \)인 정방 행렬(square matrix)이다. \( n \)은 벡터의 구성 성분의 개수다. 스칼라 함수가 연속이고 미분 가능하면 미분의 순서는 상관없으므로 헤시안은 다음과 같이 대칭 행렬(symmetric matrix)이 된다.

 

\[ \frac{d}{d {\bf x}}\left( \frac{d f}{d {\bf x}} \right) = \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_1 \partial x_2 } & \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_1 \partial x_n } & \frac{\partial^2 f}{\partial x_2 \partial x_n} & \cdots & \frac{\partial^2 f}{\partial x_n^2} \end{bmatrix} \]

 

예를 들어 보자. 다음과 같은 스칼라 함수가 있을 때,

 

\[ f(r, \theta) = r \cos\theta \]

 

헤시안 \( \frac{d}{d {\bf x}}\left( \frac{df}{d {\bf x}} \right) \)는 다음과 같이 계산된다. 여기서 \( {\bf x}=\begin{bmatrix} r \\ \theta \end{bmatrix} \)이다.

 

\[ \frac{d}{d {\bf x}}\left( \frac{d f}{d {\bf x}} \right) = \begin{bmatrix} \frac{\partial^2 f}{\partial r^2 } & \frac{\partial^2 f}{\partial r \partial \theta} \\ \frac{\partial^2 f}{\partial r \partial \theta } & \frac{\partial^2 f}{\partial \theta^2} \end{bmatrix} = \begin{bmatrix} 0 & -\sin\theta \\ -\sin\theta & -r \cos \theta \end{bmatrix} \]

 

 

 

댓글