打开本页,如果不能显示公式,请刷新页面。
给定一个目标函数(或称成本函数)
若希望找到最大值,将目标函数前面加负号即可。
通常,寻找
令
若
当
- 如果
$$f''(y)=0$$ ,则$$y$$ 为一个局部最小值(local minimum),即:存在一个$$\delta\gt0$$ ,对有所$$x$$ 满足$$|x-y|\le\delta$$ 都有$$f(y)\le f(x)$$ 。 - 如果
$$f''(y)\lt0$$ ,则$$y$$ 为一个局部最大值(local maximum)。 - 如果
$$f''(y)=0$$ ,必须计算$$f(x)$$ 和$$f(y)$$ 的值才能决定。
所以,驻点是函数
令 $$\pmb{x} = \begin{bmatrix}x_1&\cdots&x_n\end{bmatrix}^{\rm{T}}$$ 为
$$\begin{split}f(\pmb{x})=&f(\pmb{y})+\sum_{i=1}^n\frac{\partial f}{\partial x_i}\bigg|{\pmb{y}}(x_i-y_i)\&+\frac{1}{2}\sum{i=1}^n\sum_{j=1}^n\frac{\partial^2f}{\partial x_i\partial x_j}\bigg|_{\pmb{y}}(x_i-y_i)(x_j-y_j)+O(\begin{Vmatrix}\pmb{x}-\pmb{y}\end{Vmatrix}^3)\end{split}\tag{1.3}$$
函数
$$\nabla f(\pmb{y})=\begin{bmatrix}\frac{\partial f}{\partial x_1}\bigg|{\pmb{y}}\\vdots\\frac{\partial f}{\partial x_n}\bigg|{\pmb{y}}\end{bmatrix}$$
$$[H(\pmb{y})]{ij}=\frac{\partial^2 f}{\partial x_i\partial x_j}\bigg|{\pmb{y}}$$
则式(1.3)可以写成:
若
因为:$$\frac{\partial^2f}{\partial x_i\partial x_j}=\frac{\partial^2f}{\partial x_j\partial x_i}$$
所以
-
若
$$H(\pmb{y})$$ 是正定的,即$$\pmb{z}^{\rm{T}}H(\pmb{y})\pmb{z}\gt0$$ ,则$$\pmb{z}\ne0$$ ,$$\pmb{y}$$ 是$$f$$ 的一个局部最小值。 -
若
$$H(\pmb{y})$$ 是负定的,$$\pmb{y}$$ 是$$f$$ 的一个局部最大值。 -
若
$$H(\pmb{y})$$ 是未定的,称$$\pmb{y}$$ 是鞍点(saddle point)。
梯度下降法是寻找函数局部最小值的常用方法,具体参阅参考文献[2]。
[1]. 线代启示录:最佳化理论与正定矩阵
[2]. 齐伟. 机器学习数学基础. 北京:电子工业出版社.