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

Keras中batch_size如何使用?model.fit中该参数的具体含义是什么

Keras中model.fit的batch_size参数答疑

核心定义

首先明确:model.fit() 中的 batch_size 是单批次送入模型计算的样本数量,而非训练的总批次数量。
举你提到的例子验证:总样本数20000,设置batch_size=100的情况下,单次传入模型的样本就是100个,每个训练轮次(epoch)总共会拆分出200个批次完成全量样本训练。

表述矛盾说明

你提到的资料里“batch_size=1对应一次性传入整个训练集”的表述属于笔误,把批次总数和batch_size的定义搞反了:如果要实现单轮训练一次性传入全量样本,需要把batch_size设置为和总样本数相等,此时单轮的总批次数量才是1。

批次样本的选择规则

默认配置下的采样逻辑如下:

  • 如果shuffle参数设置为True(model.fit的默认配置),每个epoch开始时会先将全量训练集随机打乱顺序,再按batch_size的大小顺次切分为不同批次,同个epoch内所有样本只会被使用一次,无重复采样。
  • 如果shuffle参数设置为False,会直接按照数据集的原始存储顺序顺次切分批次,不做打乱处理。
  • 若使用自定义数据集生成器/加载器,批次的采样规则由你自定义的加载逻辑决定,比如可实现类别平衡采样、加权采样等特殊规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 00:27:03