TensorFlow:如何确定是否要将训练数据集分成批次

时间:2017-01-16 01:09:11

标签: python python-3.x tensorflow deep-learning data-science

我正在学习TensorFlow(以及一般的深度学习)。我想知道什么时候需要将输入训练数据分成几批?我们如何确定批量大小?有经验法则吗?谢谢!

1 个答案:

答案 0 :(得分:1)

通常,深度学习算法在内存有限的GPU上运行,因此可以一次加载有限数量的输入数据样本(在通常定义为批量大小的算法中)。

通常,较大的批量大小会缩短整体计算时间(因为内部矩阵乘法在GPU中以并行方式完成,因此在批量大的情况下,时间可以节省在读/写梯度以及可能的其他操作输出中)。

大批量的另一个可能的好处是: 在多类分类问题中,如果类的数量很大,a 更大的批量大小使得算法在不同的类上更好地概括(技术上避免过度拟合)(而这样做的标准技术是在批处理中保持类的均匀分布)。

在确定批量大小时,还有一些其他因素可以发挥作用:学习率和优化方法的类型。

我希望这能在一定程度上回答你的问题!