码迷,mamicode.com
首页 > 其他好文 > 详细

002梯度下降

时间:2018-09-15 10:08:19      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:机器   更新   src   机器学习   速度   图片   目标   img   告诉   

θ不一定完全可求出

那么需要让机器一步一步的去试验

比如下图,目前在一个中间点

梯度下降:得到一个目标函数后,如何进行求解?(不一定能够直接求解出来,线性回归只是一个特例)

技术分享图片

 

对θ求偏导得到最陡的一个方向

得到的偏导数,就是一个梯度

正常的梯度是向上的,现在需要向下方向

也就是梯度上升的反方向

每次走一小点,一步一步往下走,走到最低点(第N步)就相当于这个事干完了

相当于得到近似的最优解。

 

常规套路:交给机器一堆数据,然后告诉它什么样的学习方式是对的(目标函数),然后让它朝着这个方向去做

如何优化:一步一步的完成整个迭代,每次优化一点点(通常优化1-10万次)

如果参数多的话,那么就需要每次求一个参数的偏导进行更新,比如下图

技术分享图片

目标函数:技术分享图片

技术分享图片

 

寻找山谷的最低点,也就是目标函数的终点,也就是什么样的参数能够使目标函数达到极值点

分几步方法:

1,找到合适的方向。随机点都行。走一小步。

2,只能走一小步,走快了有时候丢失精度,会直接跨过最小值点。

3,按照方法与步伐大小来更新参数

 

 

 

 

梯度下降的目标函数:技术分享图片,另一个名称叫做损失函数,损失越小不就是越好么?

1,批量梯度下降:(带入所有的样本,可以得到最优解,计算量非常大,速度慢)

 技术分享图片

2,随机梯度下降:(每次找到一个样本,迭代速度快,但不一定每次都朝着收敛方向)

 技术分享图片

3,小批量梯度法:(每次选择一小部分数据样本来计算,相当于取前两个方法的中间方法,比较实用)

 技术分享图片

 技术分享图片

 

学习率(步长):会对结果产生巨大的影响,一般选择小一点,步长也就是每次θ的差值,第一次与第二次θ的差值

技术分享图片

 

选大了速度快,精度低,选小了速度慢,精度高,用时间换空间

如何选择:从小的时候选择,不行的话在小,0.1不行0.01

学习率其实是可以变动的,刚开始的时候选择大一些,越接近底部就可以选择越小

比如前多少条数据0.01,然后多少条数据0.005,然后0.001

技术分享图片

批量处理量:32,64,128都可以一般是2的幂(容忍程度内,越大越好),很多时候考虑内存效率。

 

 唐宇迪机器学习视频笔记——梯度下降算法

 

002梯度下降

标签:机器   更新   src   机器学习   速度   图片   目标   img   告诉   

原文地址:https://www.cnblogs.com/Mjerry/p/9649878.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!