batch、batch_size、epoch、iteration傻傻分不清楚及举例说明

在这里插入图片描述

(1)epoch:
1个epoch指用训练集中的全部样本训练一次

(2)iteration:
1次iteration即迭代1次,也就是用batch_size个样本训练一次。每一次迭代得到的结果都会被作为下一次迭代的初始值.

(3)batch
将数据集分成几个 batch,每一个batch数据的数量就是[batch size],在一个 epoch 中,batch 数和迭代数是相等的

(3)batch_size:
每批数据量的大小.用SGD的优化算法进行训练,也就是1 次iteration一起训练batch_size个样本,计算它们的平均损失函数值,来更新一次参数。

举例
有一个包含200个样本的数据集,选择的batchsize大小为5100个epoch则batch=40(即将数据集分成40个batch,每一个batch的数量为5),在一个epoch中涉及到40个batch的更新。100个epoch代表着200个样本训练100次。1次iteration就是用5个样本训练一次

猜你喜欢

转载自blog.csdn.net/Cai_Xu_Kun/article/details/107523946