梯度与梯度下降

梯度

  • 定义: 函数在某一点的梯度是这样一个向量,方向和最大导数的方向一致,它的模为方向导数的最大值

  • 目的: 函数沿着空间某一处,沿着哪个方向有最大变化率

  • 核心:

    • 1.梯度有大小有方向
    • 2.梯度的方向是最大导数的方向
    • 3.梯度的值是最大方向导数的值

梯度就是函数在某一点最大的方向导数,函数沿梯度方向函数有最大的变化率

梯度下降

穷举搜索法(或者使用分治法搜索)在参数非常多的情况下,无法完成搜索或者说很难找到一个合适的优解
以线性为例: y = w * x 我们只需要在一定的空间中穷举w的值便能找到优解(例如进行100次)
y = w1 * x + w2 * x 就需要找10000次以此类推,实际情况很难通过搜索穷举得出优解

这里便引入了梯度下降算法(求对w的偏导)

函数沿梯度处有最大变化率(梯度定义),那么我们在优化目标函数的时候,就沿着负梯度去减小函数的值,达到我们的想要找到最优解(预测值和真实值差距最小逼近于0)的目的


梯度下降算法也只能算出局部最优点(在局部最优点收敛,偏导为0)

  • 为什么还要采用梯度下降算法呢?

深度学习中并没有特别多的局部最优点,但是却存在很多鞍点(梯度为0,图像类似平行的直线)

运算
  • 梯度下降算法

  • 参考向量运算法则,我们在每个变量轴上减小对应值即可

随机梯度下降

随机梯度下降就是随机抽一个来进行梯度计算与更新,而不是每一次都要求所有的平均值
优点:

  • 节约时间
  • 但是性能不太好

所以我们采用batch,批量随机梯度下降,每次取一组进行梯度计算平均值
这样既节约了时间,又提高的性能

posted @ 2021-12-15 11:20  泽小六不吃糖  阅读(208)  评论(0)    收藏  举报