2017-09-27 1 views
-1

Est-il possible d'avoir deux flow_from_directory dans un fit_generator?Keras: Entrées multiples pour fit_generator utilisant flow_from_directory

Par exemple

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]) 
+1

Voulez-vous deux entrées parallèles? Votre modèle utilise-t-il deux entrées? Et qu'en est-il des sorties? Deux sorties parallèles? –

+0

@ DanielMöller Oui, mon modèle a deux CNN. Chacun avec des entrées différentes. La sortie est la même. Les entrées sont fondamentalement la même image mais chaque CNN a une image pré-traitée différente. –

+0

Ok, et les sorties ... Voulez-vous les prendre du générateur 1 ou du générateur 2? –

Répondre

1

Vous pouvez essayer de faire un générateur qui contient à la fois:

en Python 3:

def doubleGenerator(generator1,generator2): 

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