You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Keras训练卷积模型时为何未使用全部6万张图像数据集?

问题解答

你对训练日志的解读存在误差,日志中显示的1875是每轮训练的迭代步数(step数),而非训练样本数量,你的6万张训练数据已经全部参与了每一轮训练,没有遗漏,具体原因如下:

  • Keras的model.fit()方法如果不显式指定batch_size参数,默认批大小为32,即每迭代1步会喂入32张图像完成一次梯度更新
  • 训练集总样本量为60000,每轮训练的总步数计算公式为:总样本数 ÷ 单批样本数,代入数值计算可得 60000 ÷ 32 = 1875,和日志显示数值完全吻合
  • 每轮训练实际参与的样本总量为 步数 × 单批样本数 = 1875 × 32 = 60000,刚好覆盖全部训练数据

你可以手动修改训练代码的batch_size参数验证逻辑,示例调整如下:

model.fit(
    x_train,
    y_train_hot_encode,
    epochs=20,
    validation_data=(x_test, y_test_hot_encode),
    batch_size=64
)

调整后日志中每轮的步数会变为约938(60000÷64≈937.5,向上取整为938),和计算逻辑一致。


内容的提问来源于stack exchange,提问作者Yedidya kfir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 13:54:03