深度学习中epoch、batch_size、iterations之间的关系

╰半夏微凉° 2023-01-07 05:54 265阅读 0赞

之前在学习深度学习的过程中一直对epoch、batch_size、iterations这三者之间的关系搞不懂,现在跑过一些实验之后对这三者之间的关系有了个更深层次的理解。

epoch:是指将所有训练样本训练一遍的次数(它的取值取决于你自己)

batch_size:是指每一次迭代过程中训练样本的的大小

iterations:是指在每一个epoch下需要迭代的次数

对于batch_size以及iterations可能说的抽象点,我们举个例子来更形象解释下。

比如我们有一个数据集CIFAR 10 他是有60000条数据集(训练集50000、测试集10000)

我们使用其中的训练集50000条来进行训练,假设epoch=30,batch_size=100,那么iterations=500(50000 / 100 = 500)

那么我们在跑实验的时候就会经常出现下面这种显示:

epoch:1/30

=======>1/500

=======>2/500

=======>3/500

=======>500/500

这里面的500就是iterations,因为训练集是50000所以分子也就需要到500 * batch_size才能训练完一遍。

以上就是我个人对这三者的理解,网上也有很多说法,我按照我最容易理解的方式记录下,如果有错请在评论区指正。

发表评论

表情:
评论列表 (有 0 条评论,265人围观)

还没有评论,来说两句吧...

相关阅读

    相关 优化与深度学习之间关系

    在深度学习任务中,我们常常会为模型定义一个损失函数,损失函数表征的是预测值和实际值之间的差距,再通过一定的优化算法减小这个差距 然后绝大多数情况下,我们的损失函数十分

    相关 之间关系

    类之间常见的关系有:依赖关系,泛化关系,关联关系,实现关系 注意:下面几个图是java书里面截取出来的,可能和UML画的有区别     一:依赖关系