比方说,我的内存中有32个训练示例(批量大小为32)。在for循环中以fit
为例batch_size=1
进行一次32次调用之间有区别吗?还是将所有体验集中在一个数组中,并以fit
作为参数调用一次batch_size=32
?结果或效果会有所不同吗?
答案 0 :(得分:1)
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方法。
答案 1 :(得分:0)
答案简短,是的,批次大小会影响速度和收敛性-因为更新是在每个批次之后进行的。
但是,对于总共32个训练,这可能没什么