使用keras发生器的时代是什么?

时间:2017-01-16 22:23:15

标签: python generator keras

我想使用fit_generator来处理我的数据。

我理解生成器必须永远运行,并且samples_per_epoch定义在进入下一个纪元之前从生成器产生的元素数量。

但这里的时代是什么?当我们运行fit时,epoch是针对整个数据集的运行,根据batch_size进行拆分。但是在这里,batch_size没有任何意义,因为fit_generator就像在生成器的每个元素上调用train_on_batch一样,并且没有“整个数据集”这样的东西。

我的问题是:samples_per_epoch和nb_epoch有意义吗?或者在任何情况下,网络都在生成器返回的samples_per_epoch * nb_epoch批次上以相同的方式进行训练,而且这个时代没有实际意义吗?

1 个答案:

答案 0 :(得分:3)

fit_generator对生成器生成的数据视而不见。它负责生成器类遍历整个数据集。使用samples_per_epoch fit_generator只会跟踪纪元数。检查here& here& here