美文网首页
机器学习之旅---梯度下降

机器学习之旅---梯度下降

作者: Caesar_6953 | 来源:发表于2019-12-06 00:00 被阅读0次

    2019/11/19 Caesar

    前言

      根据之前的学习,我们可以这样简单的解释机器学习,机器学习就是需找一种函数f(x)并进行优化, 且这种函数能够做预测、分类、生成等工作。那么我们可以总结出机器学习的三部曲:

    • 第一步:定义一个函数集合(define a function set)
    • 第二步:判断函数的好坏(goodness of a function)
    • 第三步:选择最好的函数(pick the best one)

      我们之前已经在线性回归一节中大致介绍了如何找到一个函数,以及如何判断损失函数的好坏,这节我将重点放在如何选择最好的函数。这就引出了本节将要介绍的梯度下降,梯度下降是当前机器学习、深度学习解决最优化问题算法中应用最广的方法。

    1. 最优化方法

      所谓最优化方法,即寻找函数极值点的数值方法。通常采用的是迭代法,它从一个初始点x0开始,反复使用某种规则从xk移动到下一个点xk+1,直至到达函数的极值点。这些规则一般会利用一阶导数信息即梯度;或者二阶导数信息即 Hessian 矩阵。算法的依据是寻找梯度值为0的点,因为根据极值定理,在极值点处函数的梯度必须为0。但是需要注意,梯度为0是函数取得极值的必要条件而非充分条件。因此,即使找到了梯度为0的点,也可能不是极值点。
      我们将最优化问题统一表述为求解函数的极小值问题,即


    .PNG

    其中, x 称为优化变量, f 称为目标函数。极大值问题可以转换成极小值问题,只需将目标函数加上负号即可。

    2. 梯度

      多元函数的导数(derivative)就是梯度(gradient),分别对每个变量进行微分,然后用逗号分割开,梯度是用括号包括起来,说明梯度其实一个向量,我们说损失函数L的梯度为:


    .PNG

    设二元函数 在平面区域 D 上具有一阶连续偏导数,则对于每一个点 P(x,y)都可定出一个向量


    .PNG
    ,该函数就称为函数 z = f(x, y) 在点 P(x, y) 的梯度,记作 gradf(x,y)或 ,
    即有:
    .PNG

    其中


    .PNG
    称为(二维的)向量微分算子或Nabla算子。

    相关文章

      网友评论

          本文标题:机器学习之旅---梯度下降

          本文链接:https://www.haomeiwen.com/subject/irmjgctx.html