使用有限数据集进行 Keras 训练
在尝试使用 Keras 训练神经网络时,您注意到它仅利用了可用数据集的一部分数据集,尽管可以访问 60,000 个样本。当您遵循官方 TensorFlow 指南时,训练过程会出现差异。本文旨在解释 Keras 为什么会出现这种行为并提供解决方案。
部分数据集使用背后的原因
模型拟合过程中遇到的数字“1875”确实不代表训练样本的数量;相反,它表示批次的数量。默认情况下,Keras 在训练期间使用的批量大小为 32。对于包含 60,000 个样本的数据集,这相当于:
60,000 / 32 = 1875
因此,Keras 将数据集分为 1875 个批次,每个批次包含 32 个样本。因此,每个 epoch 都会迭代这 1875 个批次,而不是整个数据集。
解决方案
要利用整个数据集,您可以将批次大小显式设置为样本总数:
<code class="python">model.fit(train_images, train_labels, epochs=10, batch_size=60000)</code>
通过这样做,Keras 将在整个数据集上训练模型,这可能会提高性能。
以上是尽管我有 60,000 个样本,为什么 Keras 只对我的数据集的一部分进行训练?的详细内容。更多信息请关注PHP中文网其他相关文章!