Keras学习笔记--一些概念的理解

本文解释了深度学习训练过程中的核心概念:epochs、batch、batch_size 和 iteration 的含义及其相互关系。通过实例说明如何划分数据集并进行有效训练。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

深度学习框架中的epochs、batch、batch_size、iteration

一、epochs

当一个完整的数据集通过了神经网络一次并且返回了一次,这个过程称为一个 epoch。

简言之,epochs指的就是训练过程中数据将被“轮”用多少次

 

为什么要使用多于一个 epoch?

如果只有一轮,即epochs=1,那就是说在神经网络中传递一次完整的数据,此时权重只更新一次,显然很难正确拟合,所以我们需要将完整的数据集在同样的神经网络中传递多次,仅仅更新权重一次或者说使用一个 epoch 是不够的。

二、batch

当一个 epoch 对于计算机而言太庞大的时候,不能将数据一次性通过神经网络,这就需要将数据集分成几个 小块,即几个batch

三、batch_size

一个batch中的样本数量。 

注意:batch_size  不是 batch的个数,而是每一个batch中的样本个数

四、iteration

迭代次数,是 batch 需要完成一个 epoch 的次数。

每一次迭代都是一次权重更新,每一次权重更新需要batch_size个数据进行Forward运算得到损失函数,再BP算法更新参数。

1个iteration等于使用batch_size个样本训练一次。

记住:在一个 epoch 中,batch 数和迭代次数是相等的。

例子总结

一个2000个数据的样本

可以分成4个batch,每一个batch的大小为500(batch_size=500)

这4个batch依次送入神经网络训练,即需要经过4次iteration(迭代)才是跑完了整个训练集数据

这4次迭代称为一个epoch

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Evan Yi

老板行行好,打赏一下吧~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值