【发布时间】:2019-10-28 08:15:50
【问题描述】:
我的印象是steps_per_epoch可以等于样本总数除以batch size,这样每个epoch都会看到每个样本,但是显示的数字让我觉得它训练的次数远少于那个。 (如果我没看错的话:https://stanford.edu/~shervine/blog/keras-how-to-generate-data-on-the-fly) 这是相关行(我明确写了样本数)
model.fit_generator(
train_generator,
steps_per_epoch= 2451 // BATCH_SIZE,
epochs=10)
但训练过程的输出似乎显示了 153/154 之类的数字,但我的数据集超过 3000 个样本)。 那么,最后,steps_per_epoch 是关于什么的?我的模型是否在当前状态下查看每个时期的所有样本?如果没有,我该如何纠正?
Epoch 1/10
153/153 [==============================] - 34s 225ms/step - loss: -0.4054 - dice_coef: 0.4054 - binary_accuracy: 0.2559 - acc: 0.2559
Epoch 2/10
【问题讨论】:
-
我不确定这是否与问题足够相关,但只是想指出,可能是您正在过滤
train_generator中的一些数据吗?2451可能不是您输入模型的数据的确切数量,因为有些可能会在train_generator中被过滤掉 -
什么是train_generator?如果它是一个序列(例如 ImageDataGenerator 是一个),那么它将覆盖每个时期的步骤,因为序列有自己的长度方法。
标签: machine-learning keras deep-learning