每个历元数据集不同子集上的Tensorflow训练

2024-04-18 12:06:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我决定构建一个包含增强图像的大型数据集,以节省培训期间的时间,因为每个图像都在动态增强,因此需要花费太长时间,从而降低性能和GPU使用率

我想知道是否每个历元都可以在数据集的子集上训练以节省时间(训练4000张图像而不是40000张)。这在某种程度上类似于交叉验证,但我的目标只是减少数据集中每个历元都在训练模型的部分,并随机交替这些小部分。当然,在交叉验证中,我不会减少我的训练数据集大小,只是交替使用验证集


Tags: 数据模型图像目标gpu时间动态性能
1条回答
网友
1楼 · 发布于 2024-04-18 12:06:16

根据定义,历元意味着将整个数据集传递给模型进行训练。但是,您可以使用小批量训练,将整个数据集分成多个批次,然后使用.next_batch()函数或通过迭代数据集一次训练一个批次

定义数据集时,如果希望在每个历元随机选择数据集中的数据,可以使用.shuffle(),并使用.batch(batch_size)定义每个批次使用的样本数

相关问题 更多 >