调用循环中的拟合与批量大小的拟合之间有区别吗



假设内存中有32个训练示例(批量大小为32(。在for循环中调用fit32次与逐个调用batch_size=1有区别吗;或者把所有的经验放在一个数组中,调用fit一次,但以batch_size=32为参数?结果或表现会有什么不同吗?

for i in range(32):
model.fit(X,y,batch_size=1)

不要这样训练你的模特。!您的有效培训仅针对您的最后一批(在您的案例中为最后一个样本(

但是,以下方法将确保在所有样本上训练模型。所以总是这样训练。

model.fit(X,y,batch_size=32)

如果您考虑使用"for循环",因为您无法同时将所有样本放入内存,那么您应该尝试fit_generator或fit_on_batch方法。

简短的回答是,批大小会影响速度和收敛性,因为更新发生在每个批之后。

然而,对于32的总训练规模,可能无关紧要

最新更新