例程中的batchsize是论文BatchNormalization中的batch大小吗?

已邀请:

ruirui_ICT - 听大大们说,要“左手代码,右手公式”,喵~

赞同来自: 冰壶秋月 OutLaws

额,谢邀,受宠若惊。。然后我好像没太看懂问题。。
1. “例程中的batchsize”,不知道是哪个例程,假设是指大部分的train_val.prototxt文件,在data层都有一个batchsize的参数。这个batchsize其实是实现mini-batch的SGD中的batch大小,即每次迭代时取batchsize个样本,计算这batchsize个样本的梯度的平均值,然后利用这个平均梯度进行参数的更新。其实理论上的批梯度下降算法应该是计算所有样本的平均梯度的,但是这样显然复杂度很高,因此就在每次迭代时取一个mini-batch,利用这个batch的平均梯度近似所有样本的平均梯度进行迭代。
2. 因此其实batchsize这个参数来源于于mini-batch SGD。至于BN,因为其思想就是对每个batch进行的normalization操作,使用的batchsize是一样的,因此可以说“论文BatchNormalization中的batch大小和batchsize是相同的”。

要回复问题请先登录注册