累积梯度下降,随机梯度下降,基于mini-batch 的随机梯度下降
来源:互联网 发布:如何屏蔽公司网络监控 编辑:程序博客网 时间:2024/04/30 03:35
1、批量梯度下降的求解思路如下:
(1)将J( θ)对theta求偏导,得到每个 θ对应的的梯度
(2)由于是要最小化风险函数,所以按每个参数theta的梯度负方向,来更新每个theta
(3)从上面公式可以注意到,它得到的是一个全局最优解,但是每迭代一步,都要用到训练集所有的数据,如果m很大,那么可想而知这种方法的迭代速度!!所以,这就引入了另外一种方法,随机梯度下降。
2、随机梯度下降的求解思路如下:
(1)上面的风险函数可以写成如下这种形式,损失函数对应的是训练集中每个样本的粒度,而上面批量梯度下降对应的是所有的训练样本:
(2)每个样本的损失函数,对theta求偏导得到对应梯度,来更新theta
(3)随机梯度下降是通过每个样本来迭代更新一次,如果样本量很大的情况(例如几十万),那么可能只用其中几万条或者几千条的样本,就已经将theta迭代到最优解了,对比上面的批量梯度下降,迭代一次需要用到十几万训练样本,一次迭代不可能最优,如果迭代10次的话就需要遍历训练样本10次。但是,SGD伴随的一个问题是噪音较BGD要多,使得SGD并不是每次迭代都向着整体最优化方向。
3、Mini-batch Gradient Descent
(1)这是介于BSD和SGD之间的一种优化算法。每次选取一定量的训练样本进行迭代。
(2)从公式上似乎可以得出以下分析:速度比BSD快,比SGD慢;精度比BSD低,比SGD高。
4、带Mini-batch的SGD
(1)选择n个训练样本(n<m,m为总训练集样本数)
(2)在这n个样本中进行n次迭代,每次使用1个样本
(3)对n次迭代得出的n个gradient进行加权平均再并求和,作为这一次mini-batch下降梯度
(4)不断在训练集中重复以上步骤,直到收敛。
- 累积梯度下降,随机梯度下降,基于mini-batch 的随机梯度下降
- 梯度下降,随机梯度下降,mini-batch梯度下降
- 梯度下降,随机梯度下降,批量梯度下降,mini-batch 梯度下降
- mini-batch 梯度下降
- 【stanford】梯度、梯度下降,随机梯度下降
- 梯度、梯度下降,随机梯度下降
- 梯度、梯度下降,随机梯度下降
- 梯度、梯度下降,随机梯度下降
- 梯度、梯度下降,随机梯度下降
- 梯度下降(BGD)、随机梯度下降(SGD)、Mini-batch Gradient Descent、带Mini-batch的SGD
- 梯度下降(BGD)、随机梯度下降(SGD)、Mini-batch Gradient Descent、带Mini-batch的SGD
- online learning,batch learning&批量梯度下降,随机梯度下降
- online learning,batch learning&批量梯度下降,随机梯度下降
- 三种梯度下降的方式:批量梯度下降、小批量梯度下降、随机梯度下降
- 随机梯度下降与批量梯度下降
- 梯度下降与随机梯度下降
- 随机梯度下降和批量梯度下降
- 梯度下降 VS 随机梯度下降
- 单元测试——基于JUnit
- Invalid number format for port number
- 13 数据库 总结
- PHP输出缓冲区
- linux学习笔记之 dpkg和apt区别
- 累积梯度下降,随机梯度下降,基于mini-batch 的随机梯度下降
- 【BZOJ 3262】陌上花开(CDQ分治+树状数组)
- 13 SQLiteOpenHelper SQLiteDatabase详解
- VC++6.0 Win32应用程序 如何添加窗体 ------阿冬专栏
- 34. Search for a Range-二分搜索
- irrlicht实现沿平面移动物体
- 机智云开发者大会|第一个把发布会开在北京MIX的物联网公司
- qt之QDrag
- LeetCode:Two Sum II - Input array is sorted