Keras - ValueError:如果设置了steps_per_epoch,则`batch_size`必须为None

时间:2018-01-04 08:26:05

标签: deep-learning keras

doc中没有提到这种不兼容性。我想要做的是在结束一个纪元并开始下一个纪元(事先洗牌)之前声明要处理的一些批次(固定的给定尺寸),以便尝试减少过度拟合。当我选择batch_size=256steps_per_epoch=100时,它会加注:

ValueError: If steps_per_epoch is set, the `batch_size` must be None.

Keras 2.1.2中是否有解决方法?

以下是相关代码:

model.fit(xtrain, ytrain,
          batch_size=256,
          epochs=100,
          callbacks=get_callbacks(patience=10),
          validation_data=(xval, yval),
          class_weight=get_class_weight_trainset(ytrain),
          steps_per_epoch=100)

1 个答案:

答案 0 :(得分:0)

fit函数假设训练样本总数是固定的,无需同时指定batch_sizesteps_per_epoch

为了实现目标,建议您查看train_on_batch function