训练神经网络中最基本的三个概念:Epoch, Batch, Iteration

2023-05-16

转载地址:https://zhuanlan.zhihu.com/p/29409502

原作者:Michael Yuan

作者主页:https://www.zhihu.com/people/mikeyuan

今天让我们来总结下训练神经网络中最最基础的三个概念:Epoch, Batch, Iteration。


1. 名词解释


2. 换算关系

\mathbf{Number ~ of ~ Batches = \frac{Training ~ Set ~ Size}{Batch ~ Size}}


实际上,梯度下降的几种方式的根本区别就在于上面公式中的 Batch Size不同。

*注:上表中 Mini-Batch 的 Batch 个数为 N / B + 1 是针对未整除的情况。整除则是 N / B。


3. 示例

CIFAR10 数据集有 50000 张训练图片,10000 张测试图片。现在选择 Batch Size = 256 对模型进行训练。

  • 每个 Epoch 要训练的图片数量: 50000
  • 训练集具有的 Batch 个数: 50000 / 256 = 195 + 1 = 196
  • 每个 Epoch 需要完成的 Batch 个数: 196
  • 每个 Epoch 具有的 Iteration 个数: 196
  • 每个 Epoch 中发生模型权重更新的次数: 196
  • 训练 10 代后,模型权重更新的次数: 196 * 10 = 1960
  • 不同代的训练,其实用的是同一个训练集的数据。第 1 代和第 10 代虽然用的都是训练集的五万张图片,但是对模型的权重更新值却是完全不同的。因为不同代的模型处于代价函数空间上的不同位置,模型的训练代越靠后,越接近谷底,其代价越小。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

训练神经网络中最基本的三个概念:Epoch, Batch, Iteration 的相关文章

随机推荐

  • 随机排列算法及《算法导论》5.3节习题解答

    随机排列算法及 算法导论 5 3节习题解答 算法导论 介绍了两种随机排列数组的算法 第一种算法是为数组的每个元素A i 赋一个随机的优先级P i xff0c 然后依据优先级对数组A中的元素进行排序 例如 xff0c 如果初始数组A 61 1
  • 【Ubuntu-Tensorflow】GPU设置及显存资源分配

    最近笔者在做GPU显存资源分配的研究 xff0c 发现在tf中gpu一些实用的方法和接口 xff0c 共享出来 xff0c 供大家参考学习 xff0c 如有问题 xff0c 欢迎留言讨论 1 运行程序时 xff0c 控制台设置GPU运行参数
  • 为了解决jetson tx2的内存不足。挂载sd卡,并且使用docker在sd中安装jetPack的镜像。

    1 xff0c 使用nvidia官方的sdkmanager工具给jetson tx2刷机 xff0c 并且将sd卡挂载在系统目录下 参考ubuntu18 04主机 43 Jetson TX2 NX刷机 lgh15897723511的博客 C
  • 链表反转 - 链表排序 算法

    链表反转 xff1a 想象有1个新链表 xff0c 每次从旧链表取出一个元素 xff0c 然后插入到新链表的头部 链表排序 xff1a 先将链表拆分为2个子链表 使用快慢指针 xff0c 快指针每次走2步 xff0c 当快指针走到尾部时 x
  • 如何在Ubuntu服务器上安装桌面环境(GUI)

    本文转载至网络 原作者Chris Patrick Carias 你想在你的 Ubuntu 服务器上安装 GUI 吗 xff1f 大部分情况下你是可以安装的 xff0c 在本教程中我会详细介绍安装的步骤 在正式开始之前 xff0c 我来告诉你
  • 平衡小车PID学习

    离散式PID xff1a 位置环 xff1a 入口参数 xff1a 位置测量值 xff0c 编码器的位置测量值 系统的参数调定要求 xff1a 目标 xff1a 准确性 xff0c 稳定性 xff0c 快速性 指标 xff1a 最大超调量
  • arm64汇编篇-04堆与栈的关系

    栈 xff1a 栈是一种具有特殊的访问方式的存储空间 xff08 后进先出 xff0c Last In Out Firt xff0c LIFO xff09 堆 xff1a 堆用于动态分配和释放程序所使用的对象 xff08 这边不详细介绍堆
  • 关于STM32平衡小车的几个关键疑问

    引用文章 一 关于姿态融合 首先需要提一点关键的 xff0c 如果是采用卡尔曼滤波或者互补滤波 xff0c 尽可能把采样时间调小 xff0c 这样可以增加滤波的效果 建议采样时间不要高于10ms xff0c 起初我在测试的时候采样时间设置为
  • STM32F103C8T6系统板

    目录 组成1 电源部分2 复位3 晶振4 电源部分电源电路 防反接电源电路 电源芯片输入滤波电容的作用 xff1a 输出滤波电容的作用 xff1a 大电容和小电容并联的作用 xff1a 电源电路 MCU引脚部分等VCC3 3与VCC3 3M
  • PyTorch实现 | 车牌OCR识别,《PyTorch深度学习之目标检测》

    注 xff1a 本文选自中国水利水电出版社出版 PyTorch深度学习之目标检测 一书 xff0c 有改动 福利 xff01 免费寄送图书 xff01 xff01 公众号 机器学习与AI生成创作 后台回复 xff1a 168 即可参与免费寄
  • putty不能连接vultr服务器,提示network error:connection refused怎么解决

    部署服务器时第四个选项的第1个和第4个选中重新部署 如下图
  • 推荐一些IEDA,Eclipse十分好用的插件

    推荐一些IEDA xff0c Eclipse十分好用的插件 一 IDEA插件1 常用插件 xff1a 2 代码质量插件 xff1a 3 其他插件 xff1a 二 Eclipse 插件 xff1a 一 IDEA插件 1 常用插件 xff1a
  • VSCode git 配置心得

    一 Git是一个分布式的代码版本管理工具 类似的常用工具还有SVN CVS 最大的特点也是优点在于提供分布式的代码管理 1 分支代码只有一份 xff01 使用过svn的童鞋想必都知道 xff0c 当我们要开发一个新功能或者增加一个新版本或者
  • AD、PADS、Cadence哪个最好用?

    用哪个工具不是你说了算 案例1 xff1a 老板 xff0c Allegro我不会用啊 xff0c 我只会用Power PCB 好 xff0c 你去找财务结算工资吧 xff01 案例2 xff1a 小伙子 xff0c 你会用什么工具啊 xf
  • git 使用规则

    Linus为Linux Kernel Project发起的版本控制项目 HEAD代表当前最新状态 tag为某个状态的标签 SHA1为每个提交日志的唯一标识 install apt get install git core git clone
  • 两分钟教你学会用示波器测量串口波特率

    首先接好线 xff0c 黑表笔接地线 xff0c 灰表笔接串口TX数据线 接着打开示波器 xff0c 按下AUTO xff0c 自动测量波形 接着按下AUTO上面的STOP键 xff0c 冻结画面 按下CURSORS xff0c 打开光标模
  • Visual Studio 与Visual C++ 有什么区别

    Visual C 43 43 是 Visual Studio的一个部分 xff0c 此外还有 Visual Basic xff08 VB xff09 Visual C 等 VC 43 43 6 0 是VS6的 VC 43 43 2003 是
  • STM32Cube的串口设置(一)即学即用

    串口系列 STM32Cube的串口设置 xff08 一 xff09 即学即用 STM32Cube的串口设置 xff08 二 xff09 一个串口接收另一个串口发送 串口实战 STM32Cube的串口实战 xff08 一 xff09 GPS
  • C++中构造函数后面接单冒号是什么意思?

    构造函数后 xff0c 接单冒号表示初始化列表 具体形式为 对于class TEST xff0c 存在成员变量int a b c 那么 TEST int x int y a x b y c 0 的效果就是用括号内的值 xff0c 来初始化成
  • 训练神经网络中最基本的三个概念:Epoch, Batch, Iteration

    转载地址 xff1a https zhuanlan zhihu com p 29409502 原作者 xff1a Michael Yuan 作者主页 xff1a https www zhihu com people mikeyuan 今天让