我知道更大的批量可以从这里得到更准确的结果。但我不确定哪个批量大小“足够好”。我想更大的批量大小总是会更好,但似乎在某个点上,每次增加批量大小只会稍微提高准确性。找到最佳批量大小是否有启发式或经验法则?
目前,我有 40000 个训练数据和 10000 个测试数据。我的批量大小是默认的,训练为 256,测试为 50。我正在使用具有 8G 内存的 NVIDIA GTX 1080。
我知道更大的批量可以从这里得到更准确的结果。但我不确定哪个批量大小“足够好”。我想更大的批量大小总是会更好,但似乎在某个点上,每次增加批量大小只会稍微提高准确性。找到最佳批量大小是否有启发式或经验法则?
目前,我有 40000 个训练数据和 10000 个测试数据。我的批量大小是默认的,训练为 256,测试为 50。我正在使用具有 8G 内存的 NVIDIA GTX 1080。
测试时批量大小不会影响准确性,您应该将其设置为可以放入内存的最大数量,以便验证步骤花费更短的时间。
至于训练时的批量大小,你说得对,更大的批量会产生更稳定的训练。但是,拥有更大的批次会显着减慢训练速度。此外,每个 epoch 的反向传播更新会更少。所以你不希望批量太大。使用默认值通常是一个很好的策略。
请参阅我的硕士论文,第 59 页,了解选择更大批量大小/更小批量大小的一些原因。你想看看
批量大小为 32 对我的数据集/模型/训练算法有好处。