举例说明小批量随机梯度下降的原理

news/2024/11/7 22:32:27/

小批量随机梯度下降(Mini-batch Stochastic Gradient Descent,简称 Mini-batch SGD 或 MB-SGD)是一种在深度学习中常用的优化算法。它结合了批量梯度下降(Batch Gradient Descent,BGD)和随机梯度下降(Stochastic Gradient Descent,SGD)的优点,既能较快地收敛,又能有效地利用计算资源。下面举例说明 Mini-batch SGD 的原理。

假设我们有一个神经网络模型,需要通过训练数据来优化模型的参数。训练数据包含 1000 个样本,我们的目标是最小化这些样本上的平均损失函数。

使用 Mini-batch SGD 的步骤如下:

1. 确定 mini-batch 的大小,例如 100。这意味着我们将训练数据分为大小为 100 的小批次,每次迭代只使用一个小批次的数据来更新模型参数。

2. 打乱训练数据的顺序。这一步可以提高随机性,有助于防止模型陷入局部最优解。

3. 按照打乱后的顺序,将训练数据分成 10 个大小为 100 的 mini-batch。这 10 个 mini-batch 将用于更新模型参数。

4. 遍历这 10 个 mini-batch,对于每个 mini-batch,执行以下操作:

  a. 计算当前 mini-batch 中所有样本的损失函数梯度。

  b. 将这些梯度求平均,得到当前 mini-batch 上的平均梯度。

  c. 使用平均梯度来更新模型参数。具体地,将参数沿着梯度的负方向移动一小步,移动的步长称为学习率。

5. 当遍历完所有 mini-batch 后,完成一次迭代。需要多次迭代来优化模型参数,以达到收敛。

6. 为了更好地优化模型参数,可以重复进行步骤 2 到 5,将训练数据打乱顺序并重新分配 mini-batch。这样可以防止模型过拟合,提高泛化能力。

通过以上过程,小批量随机梯度下降可以在每次迭代中利用多个样本的信息来指导参数更新,从而加速收敛。同时,由于每次迭代只需要计算一部分样本的梯度,计算成本较低,可以更有效地利用计算资源。


http://www.ppmy.cn/news/547914.html

相关文章

Android 9.0 SecureElementService 初始化流程分析

1. 相关名词解释 NFC Near Field Communication,近场通信,一种基于13.56 MHz 的短距离通信技术。 NFCC NFC Controller,NFC 控制器,负责 NFC 无线信号的调制解调 SE Secure Element,安全芯片,拥有独立…

AndroidQ(十)Android Q功能和API

Android Q 功能和 API Android Q 为用户和开发者引入了强大的新功能。本文重点介绍面向开发者的新功能。 要了解新版 API,请阅读 API 差异报告或访问 Android API 参考。为醒目起见,将突出显示新版 API。此外,请务必查阅 Android Q 行为变更…

带4g无线的高性能服务器,全网通还是4G?做一个智能4G的全网通简直完美!

原标题:全网通还是4G?做一个智能4G的全网通简直完美! 在2G/3G时代,语音和数据业务分别承载在两张不同的核心网上,控制语音相关的叫电路域(CS域:Circuit Switch),控制数据业务相关的叫分组域(PS域…

揭秘!一个无线电黑客的玩具

在简云定眼中,空气里飘扬的不是北京的雾霾,而是醉人的无线电信号。 为了捕捉一串汽车钥匙开锁发出的无线信号,他需要一套“行头”。于是,他用了两个月的时间,绘制了一套电路图,在面包板上做电路测试&#x…

iOS 14 的新功能及评价

1. 主屏幕上的小组件 👍 重新设计的小组件可让您一览更多信息,现在还可添加到主屏幕。您可以按喜好选取不同大小和排列方式。还可以添加智能叠放,它会基于您的位置、活动或时间等因素显示不同小组件。 将小组件添加到 iPhone 主屏幕 “今天…

Android4.0 SDK新功能详解

Android 4.0 平台API等级:14 Android 4.0 是一次重要的平台发布版,为用户和应用程序开发者增加了大量的新特性。在下面我们将讨论的所有新特性和API中,因为它将 Android 3.x 版本中广泛使用的API和全息图像主题带给了小屏幕设备,因…

NFC技术Card Emulation模式在A ndroid系统中的应用

简介:近地场通讯(Near FieldCommunica&…

nfc 近场通信

参考链接: http://luhuajcdd.iteye.com/blog/1172488 http://developer.android.com/guide/topics/nfc/nfc.html 【NFC在android中的应用API】 Android 2.3 NFC简介 NFC (Near Field Communications) 是一套短距离的无线通信,通常…