【深度学习——梯度下降】区分BGD,SGD,MBGD
作者:互联网
1.BGD(批量梯度下降):
- 每次迭代,需要所有训练集数据参与,以更新一次参数;
- 假设迭代100次,所有训练集数据将被遍历100次,m=all;
- 优点:对于单峰可以收敛到全局最优解,适合小样本;缺点:对于大样本,收敛速度慢。
2.SGD(随机梯度下降):
- 每次迭代,需要仅随机挑选一个样本数据参与,以更新一次参数;m=1
- 优点:对于大样本(例如几十万),可能只需随机抽取几万条或者几千条的样本,就已经能迭代到最优解了,训练速度快。
- 缺点:并不是每次迭代都向着整体最优化方向,更容易从一个局部最优跳到另一个局部最优。迭代的次数过多,准确度可能下降
3.MBGD(小批量梯度下降):
- 每次迭代,需要仅随机挑选m个样本的平均梯度,以更新一次参数;1<m<all
4.总结
- SGD训练速度快,大样本选择;BGD能得到局部最优解,小样本选择;MBGD综合二者选择
- 选择合适的learning rate比较困难,太小了收敛很慢,太大了容易在local minimum周围晃动
标签:BGD,迭代,梯度,样本,MBGD,最优,SGD 来源: https://blog.csdn.net/Lily_9/article/details/88536153