Do Computers Dream ?
Images above might seem like outstanding creations of artistry. Trust me, these are outcomes of set of algorithms developed by humans. Sometimes people refer to these images as outcomes from computers dreaming but that’s just out of exaggeration. Much precisely we can interpret these images as an outcome of a computer program which is developed to interpret data.
Deep dreaming is one of the projects launched by google during 2010 for ImageNet Large Scale Visual Recognition Challenge, which is an annual contest for developing more advanced and effective ways to classify and detect objects and scenes. Each event enables programmers to recognize new methods to improve their techniques and to develop much more sophisticated algorithms. Above Images are outcomes of Google deep dream generator.
The project is publicly available to anyone interested in. Anyone can visit Google dream URL, upload a photo and this non-human painter will alter your ordinary image in to a mind-blowing piece of art. These bizarre drawings have drawn attention of not only techie people, but any aesthete.
As I mentioned previously, what actually lies underneath is not based on any artistic sense or pure imagination of an artist. Then how does these images are created ?
The underlying secret is a ANN (Artificial Neural Network) developed by google. An ANN is a computing system which imitates biological neural networks (series of interconnected neurons) similar to our brain. Similar to human beings these systems are able to learn. A child learns new things by gathering information from the surrounding, from the things he sees, hears etc. In similar manner ANN learns by analyzing lots of example. Unlike a child who is able to recognize an animal as a cat or not just by seeing it once or twice, an ANN need to feed thousands of images of cats and adjust network parameters. As an example, thousands of pictures of cats which are tagged as ‘cats’ and also pictures without cat tagged as ‘no cat’ and analyzing data will help an ANN to recognize if there really is a cat in other images.
Google deep dream is able to recognize objects in an image and also able to recreate them. That is the reason why this artificial brain has become a machine of art.
When an Image is fed to the Google deep dream ANN, the image passes through set of layers for object recognition. Well each layer recognize different details of an image to recognize the object as a whole. As an example at the beginning it will try to recognize the image based on curves and edges, then colors, shapes in the image etc. Each layer sums up more details of the image so that at the end ANN is able to recognize the content. After object recognition it recreates the identified objects on its own. This process generates spectacular images which will drive you in to new world. A world with dog monsters, cat humans and monster like human images which will give you goosebumps.
During the recreation process, it emphasize the identified objects. The object identification and object recreation happens on the will of neural network itself. It adds more details of the recognized objects at each layer to enhance the image. During this recreation, as an example, if the dream generator identified a cat like object then it will add canine teeth, fur , eyes each layer. These details are added from the data it currently owns. More like the vast pool of images that it has been trained from. Sometimes Deep dream is not able to identify each and every component of the image precisely. As an example and most of time image of a wrist watch might contains the hand itself. This is an obvious fact. So that the trained images will contain images of wrist watch with hand. So during the image recreation after being identified as a wrist watch, deep dream will add part of hands too.
Right side image shows transformation of original image in left, after passed through the deep dream generator.
Today deep dream has become more like a place of entertainment where people upload their images and generate beautiful dreams out of them.(“Dream” is the word used by google to refer images passed through deep dreamer). Whether these images are from a collection of electronic circuitry dreaming or it’s a well defined collection of instructions developed by human to outperform human imagination, you have to try and make your own dream to feel the beauty of Google Deep Dream generator.