知识点:梯度下降法

知识点概述

梯度下降法(Gradient Descent)是最简单、最基础的一阶优化算法。它通过在每一步迭代中沿着目标函数梯度的反方向(即最速下降方向)更新参数,来逐步逼近函数的局部最小值。

详细解释

  • 算法:
    1. 选择初始点
    2. 迭代更新:
  • 核心思想: 负梯度方向是函数值在局部下降最快的方向。
  • 步长 (学习率):
    • 固定步长: 选择一个小的常数作为步长。如果步长太小,收敛会很慢;如果步长太大,可能会在最小值附近震荡甚至发散。
    • 非精确线搜索: 使用Armijo等准则来自动寻找一个合适的步长。
  • 收敛性:
    • 对于一般的非凸函数,梯度下降法只能保证收敛到稳定点(梯度为零的点)。
    • 对于凸函数,可以保证收敛到全局最优解。
    • 对于强凸且梯度利普希茨连续的函数,梯度下降法具有线性收敛速度。

学习要点

  • 掌握梯度下降法的迭代公式。
  • 理解其核心思想是“最速下降”。
  • 认识到步长(学习率)选择的重要性。
  • 了解其收敛速度通常是线性的,慢于牛顿法等二阶方法。

实践应用

  • 机器学习: 训练各种机器学习模型,特别是大规模问题和深度学习(以其随机版本SGD为主)。
  • 大规模优化: 由于其计算和存储成本低(只需要计算梯度),梯度下降法是求解大规模问题的首选。

关联知识点