fit_generator() 在keras中的优势

Advantage of fit_generator() in keras

我想知道 keras 中的 fit_generator() 在内存使用方面是否比使用通常的 fit() 方法具有与生成器产生的相同 batch_size 的优势。我见过一些类似的例子:

def generator():
(X_train, y_train), (X_test, y_test) = mnist.load_data()
# some data prep
...
while 1:
    for i in range(1875): # 1875 * 32 = 60000 -> # of training samples
        yield X_train[i*32:(i+1)*32], y_train[i*32:(i+1)*32]

如果我将其传递给 fit_generator() 方法或直接将所有数据传递给 fit() 方法并定义 32 的 batch_size,这对 ( GPU?)-内存?

是的,当您需要增强数据以获得更好的模型准确性时,差异实际上就出现了。

为了提高效率,它允许使用 CPU 对图像进行实时数据增强。这意味着它可以使用 GPU 进行模型训练和更新,同时将增强图像的负载委托给 CPU 并提供要训练的批次。