小编Sud*_*aja的帖子

Keras fit_generator 和 fit 结果不同

我正在使用面部图像数据集训练卷积神经网络。该数据集有 10,000 张尺寸为 700 x 700 的图像。我的模型有 12 层。我正在使用生成器函数将图像读入 Keras fit_generator 函数,如下所示。

train_file_names ==> 包含训练实例文件名的 Python 列表
train_class_labels ==> one-hot 编码类标签的 Numpy 数组([0, 1, 0], [0, 0, 1] 等)
train_data ==> Numpy 数组训练实例
train_steps_epoch ==> 16 (批量大小为 400,我有 6400 个实例进行训练。因此,单次遍历整个数据集需要 16 次迭代)
batch_size ==> 400
requests_made ==> 当生成器到达训练实例结束时,它会重置索引以在下一个纪元中从第一个索引加载数据。

我将此生成器作为参数传递给 keras 'fit_generator' 函数,以便为每个时期生成新一批数据。

val_data, val_class_labels ==> 验证数据 numpy 数组
epochs ==> epoch 数

使用 Keras fit_generator

model.fit_generator(generator=train_generator, steps_per_epoch=train_steps_per_epoch, epochs=epochs, use_multiprocessing=False, validation_data=[val_data, val_class_labels], verbose=True, callbacks=[history, model_checkpoint], shuffle=True, initial_epoch=0) 
Run Code Online (Sandbox Code Playgroud)

代码

def train_data_generator(self): …
Run Code Online (Sandbox Code Playgroud)

generator python-3.x deep-learning keras tensorflow

6
推荐指数
1
解决办法
2938
查看次数

标签 统计

deep-learning ×1

generator ×1

keras ×1

python-3.x ×1

tensorflow ×1