model.fit(train_data, train_labels, validation_data=(test_data, test_labels), batch_size=32, epochs=100, callbacks=[checkpoint] ) 训练100个epoch,选用训练集与测试集的比为9比1,而总视频数据集的个数为300个,所以我们注意batchsize的设置为30,保证样本分布均匀。如果是默认值32的话,是不是有三种情况,第一种情况是第一轮的epoch训练集有14个样本会多出来,这14个还会作为一批次参与第一轮的训练集迭代训练,还是与第二轮的epoch训练集前18凑成32个训练样本进行一个批次的训练呢?第二种情况直接14个训练集样本作为一个批次直接参与训练。第三种情况是直接舍弃这一个批次的训练,一个epoch,进行8个批次的迭代。 当使用tensorflow定义模型进行训练的时候是哪种情况呢?
时间: 2024-03-15 10:42:49 浏览: 222
用tensorflow在mnist数据集下训练、测试模型
当使用 TensorFlow 定义模型进行训练时,默认情况下会采用第三种情况,即舍弃多出来的样本。如果您想要采用第一种或第二种情况,可以调整 batch_size 参数为 14,这样第一轮的 epoch 训练集会有 14 个样本,后续的 epoch 会有 18 个样本。但是需要注意的是,这样可能会导致样本分布不均匀,影响模型的训练效果。
阅读全文