When training the cycle-gan, I got some grid like images like the following, I think that is due to the up sampling problem, is anyone met this problem and have solutions?
Similar issue https://github.com/fchollet/keras/issues/3940.

Thanks a lot!
Could be related to this issue: https://distill.pub/2016/deconv-checkerboard/
The solution proposed there is to replace deconvolution with upsampling followed by stride 1 convolution. The cost is a naive implementation will be ~4 times as slow (but you could make it almost as fast with a smarter implementation, see the matrices in the distill post).
Another partial solution is to use a combination of kernel sizes and strides that minimize the unequal sampling problem (e.g., use kernel size 4 and stride 2; you can see the effect in the interactive widget on the distill post).
In my experience, the artifacts usually go away with enough training, as the adversary can notice these artifacts and eventually the generator will adjust its weights to avoid them, even with a naive architecture. The architecture tricks above could help get to good solutions faster, but in general we found them to be unnecessary if you just train long enough.
thanks a lot~ got it
I've run into problems changing the sampling to kernel size 4 for the sampling. @phillipi
How did you go about changing that setting in the networks.py file?
Most helpful comment
Could be related to this issue: https://distill.pub/2016/deconv-checkerboard/
The solution proposed there is to replace deconvolution with upsampling followed by stride 1 convolution. The cost is a naive implementation will be ~4 times as slow (but you could make it almost as fast with a smarter implementation, see the matrices in the distill post).
Another partial solution is to use a combination of kernel sizes and strides that minimize the unequal sampling problem (e.g., use kernel size 4 and stride 2; you can see the effect in the interactive widget on the distill post).
In my experience, the artifacts usually go away with enough training, as the adversary can notice these artifacts and eventually the generator will adjust its weights to avoid them, even with a naive architecture. The architecture tricks above could help get to good solutions faster, but in general we found them to be unnecessary if you just train long enough.