gpt4 book ai didi

python - Keras 序列、fit_generator 和 steps_per_epoch

转载 作者:太空宇宙 更新时间:2023-11-03 15:33:21 25 4
gpt4 key购买 nike

我注意到对于fit_generator,通常会为steps_per_epoch参数分配total_samples//batch_size,在这里可以创建一个生成器/使用 ImageDataGenerator 并将其作为参数传递给 fit_generator

但是我正在使用 Sequence 类 (keras.utils.Sequence()) 来创建我的生成器并传递 steps_per_epoch 一个整数比 total_samples//batch_size

我想知道的是,一旦每个纪元完成,生成器中的数据生成是否会从头开始?

例如,我的训练集中有 3200 个样本,我使用的批量大小为 32。因此理想情况下,对于一个完整的 epoch,我应该将 steps_per_epoch 设置为 100。但是如果我设置会发生什么我的 steps_per_epoch 到 50?第一个纪元完成后,会生成编号为 1601 (32*50) 的数据点,还是会从头开始(编号为 1 的数据点)?

最佳答案

当使用Sequence时,你不需要传递steps_per_epoch,因为这个信息可以从你的__len__方法中推断出来>序列。

如果您在使用 Sequence 时传递 steps_per_epoch,这将覆盖对 __len__ 方法的任何使用,并且它将有效地仅使用 steps_per_epoch 从您的序列中采样(从 0 到 steps_per_epoch - 1),它将在纪元结束时重置回零。您可以在 keras source code 中检查此行为.

关于python - Keras 序列、fit_generator 和 steps_per_epoch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56562445/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com