I think this code is a good starting point for reproducing images posted by the Google team. The procedure looks clear:
- Start with a clean noise image and class (say "cat")
- Scroll forward and backward to resolve an overlaid class label error
- Refresh the initial image with a gradient calculated at the data level
There are some tricks that can be found in the original paper .
It seems that the main difference is that Google people tried to get a more "realistic" image:
By itself, this does not work very well, but it happens if we impose a preliminary restriction on the fact that the image should have similar statistics with natural images, such as neighboring pixels, which need to be correlated.
source share