PyTorch深度学习实战(7)——批大小对神经网络性能的影响
0. 前言
在神经网络中,批( batch
)是指一次输入网络进行训练或推断的一组样本。批处理( batch processing
)是指将这一组样本同时输入网络进行计算的操作。本节中首先介绍批( Batch
)的基本概念,并且介绍批大小在神经网络训练过程中的影响。
1. 批处理概念
在深度学习中,批( Batch
)是指一次输入神经网络的一组样本,批处理的思想是将多个样本同时输入网络进行计算,通过并行化的方式提高计算效率。
在神经网络训练中,训练数据集 Fashion MNIST
中每批包含 32
个数据样本,每个 epoch
中权重的更新次数较多,每个 epoch
会更新 1,875
次权重( 60,000/32 ≈ 1,875
,其中 60,000
是训练图像的数量)。此外,并没有考虑模型对未见过的数据集(验证数据集)上的性能。
在本节中,我们将进行以下实验:
- 当训练批大小为
32
时,观察模型在训练和验证数据上的损失和准确度 - 当训练批大小为
30,000 时
,观察模型在训练和验证数据上的损失和准确度
如果需要使用验证数据,计算模型在验证数据集上的损失和准确度,需要获取验证数据。