神经网络的批量大小是多少?

问题描述 投票:2回答:2

我有一个由36个数据点组成的训练集。我想训练一个神经网络。我可以选择批量大小,例如1或12或36(每个36可以除以的数字)。

当然,当我增加批量大小时,训练运行时间会大幅减少。

如果我选择例如,是否有缺点12作为批量大小而不是1?

machine-learning neural-network deep-learning
2个回答
4
投票

批量大小没有黄金法则。期。

然而。您的数据集非常小,可能批量大小根本不重要,所有问题都来自缺乏数据,而不是任何超参数。


1
投票

我同意lejlot。由于数据量非常小,批量大小不是当前模型构建中的问题。一旦你继续使用不适合内存的更大数据,那么尝试不同的批量大小(比如,2的一些幂,即32,128,512,......)。

批量大小的选择取决于:

  1. 您的硬件容量和型号架构。如果有足够的内存和总线将数据从内存传输到CPU / GPU的容量,批量较大的批量会带来更快的学习。然而,争论的焦点是质量是否仍然存在。
  2. 算法及其实现。例如,Keras python包(基于Theano和TensorFlow实现的神经网络算法)states

批量通常比单个输入更接近输入数据的分布。批次越大,近似值越大;但是,批处理需要更长时间才能处理,并且仍然只会导致一次更新。对于推理(评估/预测),建议选择一个尽可能大的批量大小,而不会耗尽内存(因为较大的批次通常会导致更快的评估/预测)。

尝试不同的批量大小后,您将获得更好的直觉。如果您的硬件和时间允许,请让机器为您选择合适的批次(循环浏览不同的批量大小作为网格搜索的一部分。

以下是一些很好的答案:onetwo

© www.soinside.com 2019 - 2024. All rights reserved.