batch_size、iteration、epoch
(1)batchsize:批大小。
(2)iteration:1个iteration等于使用batchsize个样本训练一次;一个迭代 = 一个正向通过+一个反向通过。
(3)epoch:1个epoch等于使用训练集中的全部样本训练一次;一个epoch = 所有训练样本的一个正向传递和一个反向传递。
举例:训练集有1000个样本,batchsize=10,那么训练完整个样本集需要:100次iteration,1次epoch。
batch、batch_size、mini_batch
(1)batch:当数据集很大的时候,对于每个epoch,很难将所有的数据集一次读入到内存中,这是需要将数据集分为几次读入,每次称为一个batch。
(2)batch_size:即batch中样本的数量。
(3)mini_batch:需要先介绍下梯度下降的两种方法。
①批梯度下降(batch gradient decent):这种方法每次使用整个batch计算损失,调整参数。性能相对较好,但是计算量大,速度慢。
②随机梯度下降(stochastic gradient decent)
每次选取一个数据调整参数,计算很快,但是收敛性能不好,容易在最优点附近震荡。
③小批量梯度下降(mini-batch gradient decent):现在解释mini-batch。这里指的是一种梯度下降的方法,算是融合了上述两种方法的优点。也就是说把batch分成小batch,在小batch上梯度下降。