Neural network caffe中批量大小的选择

Neural network caffe中批量大小的选择,neural-network,deep-learning,caffe,gradient-descent,imagenet,Neural Network,Deep Learning,Caffe,Gradient Descent,Imagenet,我知道更大的批量可以从中得到更准确的结果。但我不确定哪一个批量“足够好”。我猜更大的批量总是更好的,但似乎在某一点上,批量的每一次增加,都只会使精度略有提高。在寻找最佳批量时,是否有启发式或经验法则 目前,我有40000个培训数据和10000个测试数据。我的批量大小是默认值,培训为256,测试为50。我使用的是NVIDIA GTX 1080,它有8G的内存。测试时间批大小不会影响准确性,您应该将其设置为内存中可以容纳的最大值,以便验证步骤所需的时间更短 至于训练时间批量大小,您是对的,更大的批量

我知道更大的批量可以从中得到更准确的结果。但我不确定哪一个批量“足够好”。我猜更大的批量总是更好的,但似乎在某一点上,批量的每一次增加,都只会使精度略有提高。在寻找最佳批量时,是否有启发式或经验法则


目前,我有40000个培训数据和10000个测试数据。我的批量大小是默认值,培训为256,测试为50。我使用的是NVIDIA GTX 1080,它有8G的内存。

测试时间批大小不会影响准确性,您应该将其设置为内存中可以容纳的最大值,以便验证步骤所需的时间更短

至于训练时间批量大小,您是对的,更大的批量产生更稳定的训练。但是,批量较大会显著降低训练速度。此外,每个历元的backprop更新更少。因此,您不希望批量过大。使用默认值通常是一种很好的策略。

有关选择较大批量/较小批量的一些原因,请参阅。你想看看吗

  • 直到收敛的时代
  • 每个时代的时间:越高越好
  • 结果模型质量:越低越好(在我的实验中)

批量大小为32对我的数据集/模型/训练算法很好。

Gotcha。谢谢。我认为一个有用的范围可能是
[标签数量,内存可以容纳的批量大小]
@lnman for imagenet标签数量是1000…我认为这不合理是的,我知道。这就是为什么我说有用的范围和
内存可以容纳
部分的原因。@lnman假设你有一个非常大的内存,你会设置“batch\u size:1000”吗?我不这么认为。我认为256是一个非常大的批量开始。根据我有限的经验,我认为50码更像是正常尺寸。