机器学习训练中Epoch、Batch、Bath_size、Data_size的区别

最近在做实验的过程中,总是会把epoch、batch_size和data_size搞混,为了彻底搞明白他们之间的联系,遂写出这个博客。

在实际训练中,一般对上述的术语定义为epoch、Training_batch_size、Training_data_size

1,什么是epoch、batch_size和data_size?

Training_data_size: 训练集大小,指训练过程中实际使用的训练样本数量。也即 "每个 epoch 会遍历的数据总量"。对于监督学习,它通常表示样本的数量;对于强化学习,它常常表示 task / query / prompt 的数量。

Epoch(全部数据集): 简单来说,Epoch 是​​​​​​指完整训练数据集被模型遍历一遍。 一个 epoch 通常包含多次参数更新 一个 epoch 通常包含多个 training step。也即通常多次参数更新,而不是只完成一次参数更新。

Batch(批数据大小): 这个词语的来源主要是为了解释模型更新参数时的单位,一个完整的数据集拿来更新太大了,要切分为几份分别喂给模型进行训练(计算loss和更新policy model,也就是模型),这每一份数据就是一个batch,模型在更新(比如均方误差损失MSE、交叉熵损失)时数据的最小更新单位就是batch。用来计算平均的均方损失或交叉熵损失,否则平均没法定义。**Training_batch_size:**指训练过程中,训练一步,即一次inference(推理)、训练和更新参数时需要的数据量。

**Training_step:**通常指一次 optimizer update,或者在某些 RL 框架中指一次"rollout + reward 计算 + policy update"的完整训练迭代。完成一次模型参数的更新,数值上等于

相关推荐
回眸&啤酒鸭18 小时前
【回眸】Minicart 电商购物车核心功能落地指南
人工智能
一隅论数智18 小时前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
AI的探索之旅18 小时前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
AlbertZein18 小时前
Step-5-Preview 上手实测:3D 游戏、金融分析、网页设计一次跑完
人工智能·aigc
LaughingZhu18 小时前
Product Hunt 每日热榜 | 2026-09-19
人工智能·深度学习·神经网络·搜索引擎·百度
美狐美颜SDK开放平台19 小时前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
wukangjupingbb19 小时前
智能网联汽车安全能力框架
人工智能
龙亘川19 小时前
明月照湾区,智启新赛道:从顶流文旅IP盛会看智慧文旅升级路径
人工智能·智慧城市·开源软件·数据可视化
飞猫的边缘AI19 小时前
边缘AI应用:家用AI摄像头怎么做数据训练?
人工智能·边缘计算·ai算法·边缘ai