在梯度下降法中,批量指的是用于在单次迭代中计算梯度的样本总数。到目前为止,我们一直假定批量是指整个数据集。就 Google 的规模而言,数据集通常包含数十亿甚至数千亿个样本。此外,Google 数据集通常包含海量特征。因此,一个批量可能相当巨大。如果是超大批量,则单次迭代就可能要花费很长时间进行计算。

包含随机抽样样本的大型数据集可能包含冗余数据。实际上,批量大小越大,出现冗余的可能性就越高。一些冗余可能有助于消除杂乱的梯度,但超大批量所具备的预测价值往往并不比大型批量高。

如果我们可以通过更少的计算量得出正确的平均梯度,会怎么样?通过从我们的数据集中随机选择样本,我们可以通过小得多的数据集估算(尽管过程非常杂乱)出较大的平均值。 随机梯度下降法 (SGD) 将这种想法运用到极致,它每次迭代只使用一个样本(批量大小为 1)。如果进行足够的迭代,SGD 也可以发挥作用,但过程会非常杂乱。“随机”这一术语表示构成各个批量的一个样本都是随机选择的。

小批量随机梯度下降法小批量 SGD)是介于全批量迭代与 SGD 之间的折衷方案。小批量通常包含 10-1000 个随机选择的样本。小批量 SGD 可以减少 SGD 中的杂乱样本数量,但仍然比全批量更高效。

为了简化说明,我们只针对单个特征重点介绍了梯度下降法。请放心,梯度下降法也适用于包含多个特征的特征集。

最新文章

  1. 【UISegmentedControl】-  分段控件
  2. HUD 4007 [扫描线][序]
  3. IOS 判断耳机插入/拔出
  4. js的Array的map和sort实现方法
  5. 【原】React操作表单
  6. Bugtags 介绍视频 - App 测试 · 从未如此简单
  7. .NET Socket TCP 50W在线连接交互测试
  8. [Architecture Design] 累进式Domain Layer
  9. java properties 文件中书写相对路径
  10. js打印保存用户输入的内容
  11. zabbix上监控docker
  12. RA layer request failed
  13. 一张图看懂 SQL 的各种 join 用法
  14. CUDA compiler driver nvcc 散点 part 2
  15. git详细介绍
  16. Google Guava Stopwatch(计时器)
  17. MT【38】与砝码有关的两个题
  18. luogu4181 [USACO18JAN]Rental Service (贪心)
  19. linux下crontab的原理和用法
  20. CentOS修改yum源为阿里云

热门文章

  1. win7安装RabbitMQ
  2. 李洪强iOS开发之OC[006] - 类和对象
  3. the method getcontextpath() from the type httpservletrequest refers to the missing type string
  4. vue的计算属性
  5. linux 下安装svn服务
  6. [转]为什么我说ORM是一种反模式
  7. Colossal Fibonacci Numbers! UVA 11582 寻找循环节
  8. Sphinx 安装与使用(2)-- 配置Coreseek
  9. How tomcat works学习笔记
  10. Mybatis+MSSql插入数据的同时并获取自增的ID