Using
zip()to combine generators leads to generation of an infinite
iterator. Use this instead:
def combine_generator(gen1, gen2): while True: yield(next(gen1), next(gen2))
Modified pre would look something like this:
datagen_args = dict(rotation_range=10, width_shift_range=0.1, height_shift_range=0.1, horizontal_flip=True)in_gen1 = ImageDataGenerator(**datagen_args)in_gen2 = ImageDataGenerator(**datagen_args)def combine_generator(gen1, gen2): while True: yield(next(gen1), next(gen2))train_generator = combine_generator(in_gen1, in_gen2)model.fit(train_generator.flow([pair_df[:, 0,::],pair_df[:, 1,::]], y_train,batch_size=16), epochs, verbose = 1)
See this thread for further
reference.



