梯度下降法

2024年5月26日 · 77 字 · 1 分钟

1. 基本原理


对于无约束优化问题:

$$ min \quad f(x) $$

将目标函数在 $x_{k}$ 处进行一阶泰勒展开

$$ \begin{aligned} f(x_{k+1}) &= f(x_{k}) + g(x_{k})(x_{k+1} - x_{k}) \\ g(x_{k}) &= f'(x_{k}) \end{aligned} $$

梯度下降法的目标是希望 $f(x)$ 在当前所在位置向下降量最大的方向扩展,即:

$$ \begin{aligned} f(x_{k+1}) - f(x_{k}) &= g(x_{k}) \cdot \alpha \vec{v} \\ & = \alpha \times ||g(x_{k})|| \times ||\vec{v}|| \times cos(\theta) \end{aligned} $$

所以要使得 $f(x_{k+1}) - f(x_{k})$ 的绝对值最大,并且为负,需要 $cos(\theta) = -1$,即 $\vec{v} = -g(x_{k})$,所以有:

$$ x_{k+1} = x_{k} - \alpha \times g(x_{k}) $$

2. 局限性


  • 在靠近极值点时更新步长会变得很小,由此造成迭代次数过大。

3. 参考