海森矩陣:是一個多元函數的二階偏導數構成的方陣。
1. 二元函數的海森矩陣
如果不理解二元函數的泰勒展開可先閱讀博客。
$$f(x_{0} + h,y_{0} + k) = f(x_{0},y_{0}) + \frac{h\cdot \frac{\partial }{\partial x} + k\cdot \frac{\partial }{\partial y}}{1!}f(x_{0},y_{0}) + \frac{\left ( h\cdot \frac{\partial }{\partial x} + k\cdot \frac{\partial }{\partial y} \right )^{2}}{2!}f(x_{0},y_{0}) +...+ \frac{\left ( h\cdot \frac{\partial }{\partial x} + k\cdot \frac{\partial }{\partial y} \right )^{n}}{n!}f(x_{0},y_{0}) + R_{n}$$
寫成矩陣形式為
$$f(x_{0} + h,y_{0} + k) = f(x_{0},y_{0}) + \begin{bmatrix}
\frac{\partial f}{\partial x} & \frac{\partial f}{\partial y}
\end{bmatrix} \bigg|_{(x_{0},y_{0})} \begin{bmatrix}
h\\
k
\end{bmatrix} +
\frac{1}{2}\begin{bmatrix}
h & k
\end{bmatrix}\begin{bmatrix}
\frac{\partial ^{2}f}{\partial x^{2}} & \frac{\partial ^{2}f}{\partial x\partial y} \\
\frac{\partial ^{2}f}{\partial x\partial y} & \frac{\partial ^{2}f}{\partial y^{2}}
\end{bmatrix} \Bigg|_{(x_{0},y_{0})}
\begin{bmatrix}
h\\
k
\end{bmatrix} + \cdots $$
這里我們只寫泰勒展開的前三項,第三項就是一個二次型。后面的項太過復雜,一般前三項夠了。
記自變量為 $x = (x^{(1)}, x^{(2)})$,是一個向量,將函數 $f(x)$ 在 $x_{0}$ 處展開,於是 $\Delta x = \begin{bmatrix}
x^{(1)} - x_{0}^{(1)} \\
x^{(2)} - x_{0}^{(2)}
\end{bmatrix}$,將上面的展開式進一步表示為梯度形式:
$$f(x) = f(x_{0}) + \nabla f(x_{0})^{T}\Delta x + \frac{1}{2}\Delta x^{T}G(x_{0})\Delta x + \cdots $$
其中,$\nabla f(x_{0})$ 為 $f(x)$ 在點 $x_{0}$ 處的梯度向量,$G(x_{0})$ 是一個二階矩陣,稱為 $f(x)$ 在 $x_{0}$ 處的海森矩陣,它們取值為別為:
$$\nabla f(x_{0}) = \left ( \frac{\partial f}{\partial x^{(1)}}, \frac{\partial f}{\partial x^{(2)}}\right ) \Bigg |_{(x_{0})}$$
$$G(x_{0}) = \begin{bmatrix}
\frac{\partial ^{2}f}{\partial x^{(1)2}} & \frac{\partial ^{2}f}{\partial x^{(1)}\partial x^{(2)}} \\
\frac{\partial ^{2}f}{\partial x^{(1)}\partial x^{(2)}} & \frac{\partial ^{2}f}{\partial x^{(2)2}}
\end{bmatrix} \Bigg|_{(x_{0})}$$
2. 多元函數的海森矩陣
由上面介紹的二元函數的海森矩陣,進一步推廣到多元函數的海森矩陣。這里也僅僅是展開到二階。
記自變量向量為 $x = (x^{(1)}, x^{(2)}, \cdots, x^{(n)})$,$f(x)$ 是一個 $n$ 元的函數,則其在點 $x_{0}$ 處的泰勒展開式為
$$f(x) = f(x_{0}) + \nabla f(x_{0})^{T}\Delta x + \frac{1}{2}\Delta x^{T}G(x_{0})\Delta x + \cdots$$
這個形式和二元的展開是一樣的,但是一些取值不一樣:
$$\Delta x = \begin{bmatrix}
x^{(1)} - x_{0}^{(1)} \\
x^{(2)} - x_{0}^{(2)} \\
\vdots \\
x^{(n)} - x_{0}^{(n)}
\end{bmatrix}$$
$$\nabla f(x_{0}) = \left ( \frac{\partial f}{\partial x^{(1)}}, \frac{\partial f}{\partial x^{(2)}}, \cdots ,\frac{\partial f}{\partial x^{(n)}} \right ) \Bigg |_{(x_{0})}$$
$$G(x_{0}) = \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}$$
這個 $n$ 階矩陣 $G(x_{0})$ 稱為 $f(x)$ 在 $x_{0}$ 處的海森矩陣。
3. 利用海森矩陣判定多元函數的極值
我們已經知道如何判斷二元函數的極值點,如果不了解,可先去閱讀博客。
現在來考慮 $n$ 元函數的極值,自變量為向量 $x = (x^{(1)}, x^{(2)}, \cdots, x^{(n)})$,假如 $f(x)$ 在點 $x_{0}$ 的鄰域有二階連續偏導數,若
$$\frac{\partial f}{\partial x^{(j)}} = 0, j = 1,2,\cdots,n$$
並且
$$A = G(x_{0}) = \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}$$
則有如下結果:
1)當 $A$ 為正定矩陣時,$f(x)$ 在 $x_{0}$ 處是極小值。
2)當 $B$ 為負定矩陣時,$f(x)$ 在 $x_{0}$ 處是極大值。