机器学习(15)随机梯度下降和Mini-Batch梯度下降

本文探讨了在大数据背景下,随机梯度下降与Mini-Batch梯度下降的方法,比较了它们在效率和收敛特性上的区别。随机梯度下降通过随机采样加速,而Mini-Batch则平衡了精度和速度。关键介绍了如何判断收敛并调整学习率,以提升算法效果。
摘要由CSDN通过智能技术生成

随机梯度下降和Mini-Batch梯度下降

随机梯度下降

在大数据背景下,普通梯度下降
在这里插入图片描述
由此可见,当数据比较庞大时,比如30亿数据。每次梯度下降时,都需要遍历所有的3亿样本点,再加上要达到全局最优点,需要执行迭代多次梯度下降算法,由此可见普通梯度下降对大数据不适用,需要改进。
思想:因为数据比较大,我们直接每输入一个样本就执行一次梯度下降算法,而不是遍历全部样本后再执行梯度下降算法,可能下降过程在全局最优点左右徘徊,但最终会收敛到全局最优点附近,因为数据量比较。
在这里插入图片描述
先第一步随机打乱样本集,然后每输入一个样本就执行梯度下降算法,这比普通梯度算法大大加快了。

Mini-Batch梯度下降

Mini-Batch梯度下降是介于普通梯度算法和随机梯度算法之间。
主要思想:每次梯度下降时,不是遍历一个也不是遍历全部样本集,而是遍历 b b b个样本后,再执行梯度下降算法。
举个例子:
在这里插入图片描述
容易得出,算法每遍历 b ( 10 ) b(10) b10个样本后,执行一次梯度下降算法。

判断随机梯度下降算法收敛

在执行随机梯度下降中,并不需要全部遍历完,可能在遍历过程中已经达到收敛了。那么输入判断呢?
思想:每遍历1000(可具体由情况而定)次后,计算一次这1000个样本集的代价函数,最后绘制图,也就是绘制学习曲线。
如下图:
在这里插入图片描述

在这里插入图片描述
由图可知,虽然每1000次的代价函数在下降过程中有噪点,但是总体趋势还是在不断减小,红线是学习率 α \alpha α 更小一点的情况。
当每次选5000个样本时,曲线会变得光滑:
在这里插入图片描述
虽然曲线变得光滑但是,每次5000个,收敛可能会变慢。

如果算法出现问题,没有收敛,可能出现如下情况:
在这里插入图片描述
图像没有不断下降。
如果出现下面的情况,那么就是学习率 α \alpha α 选的过大了,选个更小的学习率。
在这里插入图片描述

学习率 α \alpha α

如何选择学习率,除了选取一个恒定的学习率 α \alpha α ,可以试试不断变化的学习率,即随着遍历样本数变多,学习率不断减小。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值