Python 3.x 大型数据集的最佳批量大小是多少?

Python 3.x 大型数据集的最佳批量大小是多少?,python-3.x,keras,jupyter-notebook,Python 3.x,Keras,Jupyter Notebook,我正在处理45000张图像的数据集 1对于这样的大型数据集,我应该使用多少批处理大小 2我应该用什么样的乐观主义者,比如Adam或SGD,我总是有点困惑选择乐观主义者 环境: I7-8750h和GTX 10606GB。这实际上取决于您的计算资源和问题 从高效处理的角度来看,您应该尝试不同的批处理大小,看看是什么使CPU的批处理准备时间和GPU的训练时间兼容。理想情况下,我们希望批处理GPU时间略长于批处理CPU时间。 从最佳利用GPU的角度来看,您希望在不消耗所有GPU内存的情况下适合一个批次。

我正在处理45000张图像的数据集

1对于这样的大型数据集,我应该使用多少批处理大小

2我应该用什么样的乐观主义者,比如Adam或SGD,我总是有点困惑选择乐观主义者

环境:
I7-8750h和GTX 10606GB。

这实际上取决于您的计算资源和问题

从高效处理的角度来看,您应该尝试不同的批处理大小,看看是什么使CPU的批处理准备时间和GPU的训练时间兼容。理想情况下,我们希望批处理GPU时间略长于批处理CPU时间。 从最佳利用GPU的角度来看,您希望在不消耗所有GPU内存的情况下适合一个批次。 对于大多数计算机视觉问题,好的批量大小的经验法则是16或32。但是,在许多问题中,例如图像语义分割,您可能无法将这样的批处理放入GPU内存。因此,人们也相应地减少了批量大小

最后,值得一提的是:

批量过大(例如1024)可能会妨碍培训过程,除非您采取其他措施来处理潜在问题 批量大小和学习率不是两个自变量,如果修改批量大小,最好相应地调整学习率。
加上小批量和小批量中对象的多样性可能会妨碍学习。