I’ve been struggeling to truely understand how convolutional neural networks work, so I decided to make a diagram and think about how it works. The process of making the diagram made me understand exactly how convolutional neural networks work, and it is quite simple!

First, the diagram (click for full pic)

As you can see, once you have your feature vector (a vector that properly represents the characteristics of an image1) you just use it as input to a regular (densely connected) neural network.

To get the feature vector you apply a series of filters (convolution kernels) to the image, and then apply yet another series of filters to each of those generated images, and so on. You can do this as many times as needed.

  1. Think histogram of oriented gradients (HOG), except not that, but something learned