Я пытаюсь использовать DCGAN для раскрашивания некоторых изображений. При этом я настраиваю свой GAN на версии изображений в оттенках серого. Затем я хочу обучить свой GAN / дискриминатор сначала с партией реальных изображений, а затем с партией поддельных изображений. Время от времени я хочу сравнивать цветную версию изображений, версию в градациях серого и истинную версию изображения. Поэтому мне нужно, чтобы партии реальных / серых изображений разделялись одинаково. Использую питторч. Глядя на код, который я включил, они должны дать одинаковые пакеты. Однако они этого не делают.
Пробовал без worker_init_fn. Я также пробовал разные случайные вызовы функций и безрезультатно передавал их worker_init_fn.
dataloader = torch.utils.data.DataLoader(dataset, batch_size=batch_size,
shuffle=True, num_workers=workers, worker_init_fn = random.seed(seed))
dataloader_gray = torch.utils.data.DataLoader(dataset_gray, batch_size=batch_size,
shuffle=True, num_workers=workers, worker_init_fn = random.seed(seed))
for i, (data, data_gray) in enumerate(zip(dataloader, dataloader_gray)):
doStuff()
torch.manual_seed()
. Вы также проверили, какие первые изображения загружает загрузчик? Соответствуют ли цвет и серый цвет? При другом запуске загрузчики загружают изображения в том же порядке? - person Haran Rajkumar   schedule 22.04.2019torch.manual_seed(<some number>)
должен быть установлен в начале вашего скрипта. - person Haran Rajkumar   schedule 22.04.2019