An interesting field which is accessible with relatively low cost equipment is the investigation of what kind of patterns the maps of a trained „Artificial Convolutional Neural Network“ [CNN] react to when analyzing images. I call such patterns OIPs – „original input image patterns“. Other authors speak of „features“.
Accidentally I came across a nice OIP-pattern which a specific layer of a simple CNN reacts to after having been trained on images of handwritten digits. Due to the name of the test dataset – MNIST – and the characteristic form of the pixel pattern I call it the „Hand of MNIST“.
I used a special tool which constructs input patterns to which a CNN map and the filters constituting the map strongly react to. The algorithm changes the pixel values of an initial image filled with statistical fluctuations of the pixel data systematically into an emerging pattern until a maximum activation of a chosen CNN map occurs. The whole calculation process is based on an optimization process called „gradient ascent“. More information is given in other articles of this blog.
The image series below shows the results of such an optimization process for a selected specific map of a deep convolutional layer of a CNN and a variety of initial images with different random fluctuations at different wavelength. For the specific map (and its basic filter combination) the algorithm consistently reconstructs the hand-shaped pattern out of random noise. The different images of each series show the pattern evolution during the analysis. Order out of chaos! Enjoy!