1. 批量梯度下降(Batch Gradient Descent,BGD)
优点:
1)一次迭代是对所有样本进行计算,此时利用矩阵进行操作,实现了并行。
2)由全数据集确定的方向能够更好地代表样本总体,从而更准确地朝向极值所在的方向。当目标函数为凸函数时,BGD一定能够得到全局最优。

缺点:
1)当样本数目 m 很大时,每迭代一步都需要对所有样本计算,训练过程会很慢。(有些样本被重复计算,浪费资源)

2. 随机梯度下降(Stochastic Gradient Descent,SGD)
优点:
1)由于不是在全部训练数据上的损失函数,而是在每轮迭代中,随机优化某一条训练数据上的损失函数,这样每一轮参数的更新速度大大加快。

缺点:
1)准确度下降。由于即使在目标函数为强凸函数的情况下,SGD仍旧无法做到线性收敛。
2)可能会收敛到局部最优,由于单个样本并不能代表全体样本的趋势.
3)不易于并行实现。

3. 小批量梯度下降(Mini-Batch Gradient Descent, MBGD)

优点:融合了BGD和SGD优点
1)通过矩阵运算,每次在一个batch上优化神经网络参数并不会比单个数据慢太多。
2)每次使用一个batch可以大大减小收敛所需要的迭代次数,同时可以使收敛到的结果更加接近梯度下降的效果。
3)可实现并行化。

基本最常用的就是mini-batch了 ,根据电脑性能选择合适的batch_size可以大大提高效率。

批量梯度下降(BGD)、小批量梯度下降(mini-BGD)、随机梯度下降(SGD)优缺点比较相关推荐

  1. Lesson 4.34.4 梯度下降(Gradient Descent)基本原理与手动实现随机梯度下降与小批量梯度下降

    Lesson 4.3 梯度下降(Gradient Descent)基本原理与手动实现 在上一小节中,我们已经成功的构建了逻辑回归的损失函数,但由于逻辑回归模型本身的特殊性,我们在构造损失函数时无法采用 ...

  2. 【深度学习】——梯度下降优化算法(批量梯度下降、随机梯度下降、小批量梯度下降、Momentum、Adam)

    目录 梯度 梯度下降 常用的梯度下降算法(BGD,SGD,MBGD) 梯度下降的详细算法 算法过程 批量梯度下降法(Batch Gradient Descent) 随机梯度下降法(Stochastic ...

  3. 随机梯度下降法,批量梯度下降法和小批量梯度下降法以及代码实现

    前言 梯度下降法是深度学习领域用于最优化的常见方法,根据使用的batch大小,可分为随机梯度下降法(SGD)和批量梯度下降法(BGD)和小批量梯度下降法(MBGD),这里简单介绍下并且提供Python ...

  4. 随机梯度下降、批量梯度下降、小批量梯度下降分类是什么?有什么区别?batch_size的选择如何实施、有什么影响?

    随机梯度下降.批量梯度下降.小批量梯度下降分类是什么?有什么区别?batch_size的选择如何实施.有什么影响? 目录

  5. 3. 机器学习中为什么需要梯度下降?梯度下降算法缺点?_浅谈随机梯度下降amp;小批量梯度下降...

    机器学习三要素 上次的报告中,我们介绍了一种用于求解模型参数的迭代算法--梯度下降法.首先需要明确一点,即"梯度下降算法"在一个完整的统计学习流程中,属于什么?根据<统计学习 ...

  6. 批量梯度下降,随机梯度下降和小批量梯度下降的区别

    批量梯度下降,随机梯度下降和小批量梯度下降的区别主要体现在用于计算梯度的样本的数量: 批量梯度下降:在每次迭代时,用整个数据集的所有样本上的梯度计算更新. 随机梯度下降:在每次迭代时,用单个样本上的梯 ...

  7. 梯度下降法的不同形式——随机梯度下降法和小批量梯度下降法

    前文介绍了梯度下降法,其每次迭代均需使用全部的样本,因此计算量巨大.就此,提出了基于单个样本的随机梯度下降法(Stochastic gradient descent,SGD)和基于部分样本的小批量梯度 ...

  8. 『ML笔记』梯度下降法和随机梯度下降法和小批量梯度对比

    目录 1. 梯度下降法(gradient descent) 2. 随机梯度下降(Stochastic gradient descent) 3. 小批量梯度下降(Mini-Batch gradient ...

  9. 常见优化算法批量梯度下降、小批量梯度下降、随机梯度下降的对比

    在机器学习领域中,梯度下降的方式有三种,分别是:批量梯度下降法BGD.随机梯度下降法SGD.小批量梯度下降法MBGD,并且都有不同的优缺点. 下面我们以线性回归算法(也可以是别的算法,只是损失函数(目 ...

  10. 梯度下降法的三种形式批量梯度下降法、随机梯度下降以及小批量梯度下降法

    梯度下降法的三种形式BGD.SGD以及MBGD 梯度下降法的三种形式BGD.SGD以及MBGD 阅读目录 1. 批量梯度下降法BGD 2. 随机梯度下降法SGD 3. 小批量梯度下降法MBGD 4. ...

最新文章

  1. 10 款 VS Code 插件神器,第 7 款超级实用!
  2. MySQL 中 6 个常见的日志问题
  3. 201521123011 《java程序设计》 第9周学习总结
  4. 经济学人使用Golang构建微服务历程回顾
  5. ER-Studio的五种关系说明 .
  6. http 请求默认时间_JMeter接口测试之HTTP请求默认值
  7. 滑动翻页效果_Flutter实现3D效果,一个字,炫!
  8. 超好看的动漫二次元引导页源码
  9. java程序设计教程(项目式)_《Java程序设计项目化教程(第2版)》怎么样_目录_pdf在线阅读 - 课课家教育...
  10. 存定期还能加钱进去吗_购买支付宝的定期理财产品,会亏钱吗?
  11. 老游戏与你共渡亲子时光
  12. 小乔皮肤分析-缤纷独角兽/青蛇皮肤
  13. XXX单板类热仿真分析
  14. 计算机am3代表,拨开重重迷雾 AMD处理器历代接口解谜
  15. proxy 服务器配置
  16. EXECL日期相减计算工龄
  17. 绕过限制低价购买和增删低价购买逻辑漏洞
  18. Netty获取客户端IP
  19. 43款设计师必备英文设计字体-书法字体
  20. 层次分析法java_层次分析法java实现

热门文章

  1. linux系统自行清理归档日志_Linux下自动删除归档日志文件的方法
  2. linux log 2 1,51CTO博客-专业IT技术博客创作平台-技术成就梦想
  3. 回顾 | Apache Flink Meetup · 深圳站精彩回顾(附PPT下载)
  4. Apache Flink 进阶(六):Flink 作业执行深度解析
  5. spring通用获取ioc容器中配置的bean的工具类
  6. 公司规定所有接口都用 POST请求,看不起 get ?这是为什么?
  7. Android View框架总结(一)
  8. 安装python时无法安装python包_无法安装Python包
  9. _Linux中删除特殊名称文件的多种方式
  10. 安卓app执行linux命令,如何在android程序中执行adb shell指令