梯度下降法的简介及其常见子算法比较

梯度下降法的简介及其常见子算法比较

  • 梯度下降法
  • 如何对梯度下降法进行调优
  • 随机梯度下降法和批量梯度下降法的区别

梯度下降法

  梯度下降法是一种迭代算法,选取适当的初值 x ( 0 ) {{\rm{x}}^{(0)}} x(0),不断迭代,更新x的值,进行目标函数的极小化,直到收敛。由于负梯度方向是使函数值下降最快的方向,在迭代的第一步,以负梯度方向更新x的值,从而达到减少函数值的目的。
  其步骤:

  • 确定优化模型的假设函数及损失函数;
  • 初始化参数,随机选取取值范围内的任意值;
  • 迭代操作:
        计算当前梯度
        修改新的变量
        计算朝最陡的下坡方向走一步;
        判断是否需要终止,如否,梯度更新;
  • 得到全局最优解或者接近全局最优解。

如何对梯度下降法进行调优

  1. 算法迭代步长 α \alpha α的选择;
  2. 参数的初始值选择;
  3. 标准化处理。

随机梯度下降法和批量梯度下降法的区别

方法 特点
批量梯度下降法 a)采用所有数据来梯度下降;
b)批量梯度下降法在样本量很大时,训练速度慢
随机梯度下降法 a)随机梯度下降用一个样本来梯度下降;
b)训练速度很快;
c)随机梯度下降法仅仅用一个样本决定梯度方向,导致解有可能不是全局最优;
4)收敛速度来说,随机梯度下降法一次迭代一个样本,导致迭代方向变化很大,不能很快的收敛到局部最优解。

你可能感兴趣的:(机器学习)