训练数据量中关于batch_size,iteration和epoch的概念

batch_size

机器学习使用训练数据进行学习,针对训练数据计算损失函数的值,找出使该值尽可能小的参数。但当训练数据量非常大,这种情况下以全部数据为对象计算损失函数是不现实的。因此,我们从全部数据中选出一部分,作为全部数据的“近似”。神经网络的学习也是从训练数据中选出一批数据(称为 mini-batch,小批量),然后对每个mini-batch进行学习。比如,从60000个训练数据中随机选取100个数据,用这100个数据进行学习,这种学习方式成为 mini-batch 学习。
用mini-batch的方法定义batch_size,把数据分成小批量,每小批的大小batch_size=100

iteration

迭代,即训练学习循环一遍(寻找最优参数(权重和偏置))。比如 iteration=30000,循环一遍即执行了30000次迭代。当 batch_size=100,可以说执行完一遍 iteration,即执行了30000次 batch_size

epoch

epoch 是一个单位。一个 epoch表示学习中所有训练数据均被使用过一次时的更新次数。比如,对于1000个训练数据,用大小为100个数据的mini-batch(batch_size=100)进行学习时,重复随机梯度下降法100次,所有的训练数据就都被“看过”了。此时,10次就是一个 epoch。(即:遍历一次所有数据,就称为一个 epoch)
实例

训练数据量:60000
mini-batch方法:batch_size = 100
迭代次数:iteration = 30000
平均每个epoch的重复次数:60000 / 100 = 600
当迭代进行到600次时,即视为完成了一个epoch
30000 / 600 = 50

从这个实例可以看出,执行完一遍 iteration,完成了50个 epoch
————————————————

  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值