Hello everyone! I have spent this last week creating a 2D representation of the Mnist dataset of handwritten digits and used that to create models of how neural networks classify space. I did this by training a new autoencoder with a latent dimension of 2 meaning it would learn to compress these images into 2 numbers which the autoencoder uses to rebuild the image. I ran the autoencoder over all 70,000 images and used that to create a new dataset where the inputs are the output of the latent dimension when the autoencoder is fed the image, and the labels are those of the images. When graphed this dataset looks like this:
Next, I trained a neural network on this dataset. Accuracy was far from state-of-the-art at ~73% on the validation set. This is to be expected when you compress a full image of data into just 2 values.
Using this neural network I generated this graph that shows how it labels all the points. Note color intensity corresponds to confidence in classification.
Though I will spend the next week doing more analysis, so far it is very interesting how the network remains confident about its output far away from the data clusters. This explains why random noise images fed to classifiers often produce high confidence results when the input is obviously random to a human eye.