【问题标题】:Keras: Multiple Inputs for fit_generator using flow_from_directoryKeras:使用 flow_from_directory 的 fit_generator 的多个输入
【发布时间】:2017-09-27 14:13:13
【问题描述】:

fit_generator 中是否可以有两个 flow_from_directory?

例如

train_generator_1 = train_datagen.flow_from_directory(
    train_data_dir_1,
    target_size=(img_height, img_width),
    batch_size=batch_size,
    class_mode='binary')

train_generator_2 = train_datagen.flow_from_directory(
    train_data_dir_2,
    target_size=(img_height, img_width),
    batch_size=batch_size,
    class_mode='binary')

custom_vgg_model.fit_generator(
    [train_generator_1, train_generator_2],
    steps_per_epoch=nb_train_samples,
    epochs=epochs,
    validation_data=validation_generator,
    validation_steps=nb_validation_samples,
    callbacks=[checkpointer, csv_logger])

【问题讨论】:

  • 您想要两个并行输入吗?您的模型是否使用两个输入?那么输出呢?两个并行输出?
  • @DanielMöller 是的,我的模型有两个 CNN。每个都有不同的输入。输出是一样的。输入基本上是相同的图像,但每个 CNN 都有不同的预处理图像。
  • 好的,输出...你想从生成器 1 还是从生成器 2 获取它们?
  • @DanielMöller 两个生成器的输出应该相同。所以两者都可以。
  • 感谢您的帮助!另一个reference我推荐你。

标签: python tensorflow keras


【解决方案1】:

您可以尝试制作一个包含两者的生成器:

在 python 3 中:

def doubleGenerator(generator1,generator2):

    while True:
        for (x1,y1),(x2,y2) in zip(generator1,generator2):
            yield ([x1,x2],y1)

【讨论】:

  • 一个问题:这是检查在每个目录中找到的文件的名称吗?它如何能够将带有标签 A 的 imageA1 和也有标签 A 的 imageA2 连接起来?
猜你喜欢
  • 2018-08-20
  • 2019-09-17
  • 2019-08-28
  • 1970-01-01
  • 2021-03-04
  • 2020-01-12
  • 2021-02-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多