DLR-MI / atme

Official pytorch implementation of ATME [CVPR 2023 GMCV]
Other
26 stars 1 forks source link

the problem of reproducing this code #2

Open gys0513 opened 1 year ago

gys0513 commented 1 year ago

Hello, if I want to reproduce this code with a set of 512*512 semantic labels and remote sensing images as input, what should I pay attention to? After debugging the code, the model runs for 30 epochs, and both loss_D_fake and loss_D_real are 0. At the same time, when examining the output, self.fake_B is all 1, resulting in generated images that are completely white. How can I solve this issue?

sola-ed commented 1 year ago

Hello, this is currently the failure mode mentioned here. Since the pix2pix software doesn't have a manual seeding mechanism by default (see e.g. its issue #1512), and ATME is based on it, it is hard to isolate and reproduce the problem. The recommended actions are then:

  1. Add a manual seed to the training script and choose a seed that works.
  2. Try different weight initialization, e.g. Xavier.
  3. For image resolutions different from 256x256, play with the W block here to output the right image size.

Any improvements to solve this issue are welcome!

LiuTianyong commented 1 year ago

Hello Edgardo Solano-Carrillo researchers, I have also experienced D_real of 0.000 and a D_fake of 0.000 when training your code, my dataset is the Maps dataset proposed in your paper. Specifically in the task A->B, at 73th epoch there is a situation that discriminative network does not learn, which means, D_real is 0.000 D_fake is 0.000. Please let me know if there is any solution. Looking forward to your early reply, thanks

sola-ed commented 1 year ago

Hello @LiuTianyong, this is still an open question. During our original runs, we didn't notice such failures (you can inspect the logs at https://github.com/DLR-MI/atme#pre-trained-models). However, by repeatedly running the same experiment several times, we have also found the issue. This requires more research.