机器学习--梯度下降

落爺英雄遲暮 提交于 2020-03-29 12:36:41

梯度下降

在梯度下降这一节中我们主要介绍了两个概念(参数):学习速率和终止条件

学习速率

一般来讲,学习速率不能太大,也不能太小

  • 太大可能导致下降过程中来回震荡,无法准确找到几值点(最大值或最小值)
  • 如果太小可能会导致:
    • 梯度下降在某一个值的区段中无法跳出
    • 迭代的次数过多而导致学习时间变长

那么到底什么值才是最正确的学习速率呢?这个一般是根据经验来选取的,比如从…0.0001,0.001,.0.01,0.1,1.0…这些参数中选,看那个参数使得损失值和迭代次数之间的函数曲线下降速度最快

终止条件

设置正确的终止条件也是机器学习的重要部分,一般情况下我们会综合恶来选择,例如:

  • 指定学习次数(上限:1000次等)
  • 相连两次梯度下降值的差值的上下限

使用梯度下降更新参数的计算

使用梯度下降更新参数的主要方法如下(推理过程略):

参数更新时一定要注意同步更新,不然会产生参数的值不正确的问题

线性回归的梯度下降

经过以上整个推理过程,我们可以分析出一个线性回归问题的最优化值的求解过程了

  1. 对cost function求解权重向量(二次函数情况下使用偏导即可)
  2. 非二次函数的的情况也是比较多见,所以我们要使用梯度下降的方法求解全局极值     

根据以上函数的关系,我们可以得到计算线性回归的梯度下降表达式如下:

有了以上的理论基础之后,我们就可以在对应的参数调整情况下得到cost function函数局部极值对应的值了

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!