keras fit_generator: у объекта 'zip' нет атрибута 'shape' - PullRequest
5 голосов
/ 06 апреля 2019

как в документации keras в генераторе данных (изображение, маска) я создал генератор данных, чтобы иметь (вход, выход) образы кортежей.
При локальном запуске на моем ноутбуке (с tenorflow 1.13.1) он работает без проблем, но при работе на сервере (с tenorflow- gpu 1.13.1) я получаю сообщение об ошибке:

AttributeError: 'zip' object has no attribute 'shape'

так же, как в примере, после создания двух генераторов с помощью flow_from_directory:

from tensorflow import keras

...

input_gen = input_datagen.flow_from_directory(
        directory=os.path.join(path_in, dirname),
        class_mode=None,
        color_mode=color_mode,
        batch_size=batch_size,
        target_size=(img_size, img_size),
        seed=seed_in)

Я объединил их как в документации кераса:

train_generator = zip(input_gen, output_gen)

и передать их в fit_generator (...)

в настоящее время решает эту проблему, используя функцию для генерации нового комбинированного генератора, как было предложено здесь :

def combine_generator(gen1, gen2):
    while True:
        yield(gen1.next(), gen2.next())   

хотя я все еще хотел бы понять, почему версия процессора tennflow не получает эту ошибку, и почему zip-версия не поддерживается в версии gpu ...

...