我运行这个源代码。计算60000个训练数据和10000个测试数据我想每个纪元应该计算60000次,如下所示x_train shape: (60000, 28, 28, 1)y_train shape: (60000,)60000 train samples10000 test samples60000/60000 [==============================]...然而实际上结果是这样的x_train shape: (60000, 28, 28, 1)y_train shape: (60000,)60000 train samples10000 test samples469/469 [==============================] - 32s 69ms/step - loss: 2.2910 - accuracy: 0.1347 - val_loss: 2.2686 - val_accuracy: 0.3145Test loss: 2.2686383724212646Test accuracy: 0.31450000405311584elapsed time:34.918644189834595为什么只计算了469次???哪里错了??
1 回答
qq_花开花谢_0
TA贡献1835条经验 获得超7个赞
您需要在 model.fit() 函数中正确设置steps_per_epochs和validation_steps参数。
steps_per_epoch训练纪元被视为完成之前的批次迭代次数。如果你有一个固定大小的训练集,你可以忽略它,但如果你有一个巨大的数据集,或者如果你正在动态生成随机数据增强,即如果你的训练集有(生成的)无限大小,它可能会很有用。如果您有时间检查整个训练数据集,我建议您跳过此参数。validation_steps 类似于steps_per_epoch,但在验证数据集而不是训练数据上。如果您有时间检查整个验证数据集,我建议您跳过此参数。
validation_steps类似于steps_per_epoch,但在验证数据集上而不是在训练数据上。如果您有时间检查整个验证数据集,我建议您跳过此参数。
在你的情况下设置:
批量大小 = 200
每纪元步数 = 300
验证步骤 = 50
添加回答
举报
0/150
提交
取消