一、Batchsize基本介绍
1. Batchsize是什么
batch_size:表示单次传递给程序用以训练的数据(样本)个数。如果我们的数据集钟含有的样本总数为12800个样本,batch_size=128,那么就需要10个batch才能够训练完一个epoch。
batch_size一般取值为2的N次幂的形式,这是因为CPU或者GPU的内存架构是2的N次幂。CPU在读取内存时是一块一块进行读取的,块的大小可以是2,4,8,16(总之是2的倍数)。因此,选取2的n次幂作为batch大小,主要是为了将一个或多个批次整齐地安装在一个页面上,以帮助GPU并行处理。但经过researchers的大量实验,事实上,batch_size对速度和结果影响并不大(可能会慢一点点,但是几乎可以忽略不记)。
2. 神经网络是如何逐渐收敛的
以回归任务为例,我们根据预测值与真实值之间的偏差设定损失函数Loss Function(常见的有L2-Loss,L1-Loss,CrossEntropy等)。最原始的机器学习中,还没有Batchsize的概念,在优化过程中ÿ