[英]Tensorflow: on what does the batch_size depend?
我是tensorflow的新手,我尝试了解应该batch
大小。
我的数据形状(119396, 12955)
。 如何选择最适合我的数据的batch_size
? 以及从数据形状或使用算法依赖的batch_size
是什么?
批大小是您一次在模型中引入的输入数据值的数量。 培训时非常重要,测试时则非常重要。 对于标准的机器学习/深度学习算法,选择批处理大小将对以下几个方面产生影响:
batch size
越大,您将一次在模型中提供的数据越多。 因此,RAM 内存消耗几乎与 batch size
线性关系 ,并且始终会存在一个限制,具体取决于您的系统规格和模型大小,如果超出该限制,模型将溢出。 batch size
越大,您越快 遍历 N次数据集进行训练。 batch size
会减慢您的模型训练速度 ,这意味着您的模型将需要更长的时间才能进行一次更新,因为该更新依赖于更多数据。 batch size
将有更多数据要平均到下一次更新模型,因此训练应该更平滑: 更平滑的训练/测试精度曲线 。 请注意, 数据的大小仅与批处理大小相关,因为数据越大,最大batch size
变得越小(由RAM设置的限制)。 模型的大小也具有相似的关系。
在实践中,应遵循“以2的幂为单位,且该批次适合您的(GPU)内存,越大越好”。 有关更多详细信息,请访问https://stackoverflow.com/a/46655895/9670056 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.