Caffe:深度学习中 epoch,[batch size], iterations的区别


 在大部分深度学习架构中都抛不开三个概念epoch,[batch size], iterations;接下来就对这三个概念逐一解释一下


one epoch:所有的训练样本完成一次Forword运算以及一次BP运算

batch size:一次Forword运算以及BP运算中所需要的训练样本数目,其实深度学习每一次参数的更新所需要损失函数并不是由一个{data:label}获得的,而是由一组数据加权得到的,这一组数据的数量就是[batch size]。当然batch size 越大,所需的内存就越大,要量力而行

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


最后可以得到一个公式 one epoch = numbers of iterations = N = 训练样本的数量/batch size  

你可能感兴趣的:(Machine,Learning)