Neural networks trained to classify images have a remarkable — and surprising! — capacity to generate images.
Techniques such as DeepDream
[1]
, style transfer
[2]
, and feature visualization
[3]
leverage this capacity as a powerful tool for exploring the
inner workings of neural networks, and to fuel a small artistic movement
based on neural art.
All these techniques work in roughly the same way.
Neural networks used in computer vision have a rich internal
representation of the images they look at.
We can use this representation to describe the properties we want an
image to have (e.g. style), and then optimize the input image to have
those properties.
This kind of optimization is possible because the networks are
differentiable with respect to their inputs: we can slightly tweak the
image to better fit the desired properties, and then iteratively apply
such tweaks in gradient descent.
Typically, we parameterize the input image as the RGB values of each pixel, but that isn’t the only way. As long as the mapping from parameters to images is differentiable, we can still optimize alternative parameterizations with gradient descent.
No comments:
Post a Comment