Understanding autoencoders
Technically, autoencoders are not generative models since they cannot create completely new kinds of data. Yet, variational autoencoders, a minor tweak to vanilla autoencoders, can. So, it makes sense to first understand autoencoders by themselves, before adding the generative element.
Autoencoders by themselves have some interesting properties that can be exploited for applications such as detecting credit card fraud, which is useful in our focus on finance.
Given an input, x, an autoencoder learns how to output x. It aims to find a function, f, so that the following is true:
This might sound trivial at first, but the trick here is that autoencoders have a bottleneck. The middle hidden layer's size is smaller than the size of the input, x. Therefore, the model has to learn a compressed representation that captures all of the important elements of x in a smaller vector.
This can best be shown in the following diagram, where we can see a compressed representation of...