为了账号安全,请及时绑定邮箱和手机立即绑定

并非每个节点都是由tensorflow.keras计算的

并非每个节点都是由tensorflow.keras计算的

UYOU 2023-12-29 15:12:46
我运行这个源代码。计算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条经验 获得超6个赞

您需要在 model.fit() 函数中正确设置steps_per_epochs和validation_steps参数。

steps_per_epoch训练纪元被视为完成之前的批次迭代次数。如果你有一个固定大小的训练集,你可以忽略它,但如果你有一个巨大的数据集,或者如果你正在动态生成随机数据增强,即如果你的训练集有(生成的)无限大小,它可能会很有用。如果您有时间检查整个训练数据集,我建议您跳过此参数。validation_steps 类似于steps_per_epoch,但在验证数据集而不是训练数据上。如果您有时间检查整个验证数据集,我建议您跳过此参数。

validation_steps类似于steps_per_epoch,但在验证数据集上而不是在训练数据上。如果您有时间检查整个验证数据集,我建议您跳过此参数。

在你的情况下设置:

  1. 批量大小 = 200

  2. 每纪元步数 = 300

  3. 验证步骤 = 50


查看完整回答
反对 回复 2023-12-29
  • 1 回答
  • 0 关注
  • 49 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信