验证百分比和批量大小有什么区别?

人工智能 比较 张量流 交叉验证 批量大小 验证数据集
2021-11-01 08:12:54

我正在使用 Tensorflow 上的 Inception 进行迁移学习。我用于训练的代码是https://raw.githubusercontent.com/tensorflow/hub/master/examples/image_retraining/retrain.py

如果您查看代码底部的 Argument Parser 部分,您会发现以下参数:

  • testing_percentage
  • 验证百分比
  • test_batch_size
  • 验证批次大小

到目前为止,我知道测试和验证百分比是我们想要在 1 次训练的图像数量。但我不太了解测试批量大小和验证批量大小的使用。百分比和批量大小有什么区别?

1个回答

百分比是指用作验证和测试数据集的样本数量在完整数据集中)。因此,如果您将一个包含 100,000 个样本的数据集传递给模型,并将验证和测试百分比分别设置为 10%,那么您的模型将在 80,000 个样本上进行训练,在 10,000 个样本上对其进行验证,并为最终测试保存额外的 10,000 个样本。

批次大小是指在测试和验证评估期间每批次中的样本数量您的模型可能无法在一次运行中处理 10,000 个样本(由于内存限制),因此在评估过程中,它会将数据集分成批次,按顺序处理,结果是所有批次的平均值。

训练时,批量大小是一个重要的超参数,它会影响训练过程的属性和最终结果。在测试/验证期间,它没有任何影响,只需要足够小以使您的模型能够运行它(使用不同批次大小的评估将产生相同的结果)。