0

我对 keras 输出中显示的批量大小有疑问。我已经阅读了有关如何解释 keras 输出的类似帖子,并发现219图中显示result的数字是 batch_size 的数量。但是可以看到我的X_train batch_size是7000,不是219,这个219是哪里来的?

X_train.shape # (7000, 50, 1)
Y_train.shape # (7000, 50, 10)


model = keras.models.Sequential([
    keras.layers.SimpleRNN(20, return_sequences=True, input_shape=[None, 1]),
    keras.layers.SimpleRNN(20, return_sequences=True),
    keras.layers.TimeDistributed(keras.layers.Dense(10))
])

model.compile(loss="mse", optimizer=keras.optimizers.Adam(lr=0.01))
history = model.fit(X_train, Y_train, epochs=10)

部分结果:

model.compile(loss="mse", optimizer=keras.optimizers.Adam(lr=0.01))...
Epoch 1/10
219/219 [==============================] - 2s 8ms/step - loss: 6.0260e-06
Epoch 2/10
219/219 [==============================] - 2s 8ms/step - loss: 1.1669e-08
Epoch 3/10
219/219 [==============================] - 2s 8ms/step - loss: 7.6153e-08
4

1 回答 1

1

在 model.fit 中,默认批量大小为 32。因此,如果您有 7000 个样本,则每个 epoch 的步数为 7000/32=218.75,四舍五入为 219。所以这意味着通过您的 7000 个样本,它会获取 32 个图像对于每批并执行 219 次。

于 2021-03-30T00:38:37.790 回答