Being familiar with the MNIST dataset, as well as the results of a normal autoencoder, makes an excellent starting point for your future work. As you may recall, MNIST consists of many images of handwritten digits, each measuring 28 x 28 pixels.
Building a VAE on MNIST
Encoding
As this is an autoencoder, the first step is to build the encoding portion, which will look something like this:
First, we have our two fully connected layers:
w0 := gorgonia.NewMatrix(g, dt, gorgonia.WithShape(784, 256), gorgonia.WithName("w0"), gorgonia.WithInit(gorgonia.GlorotU(1.0)))
w1 := gorgonia.NewMatrix(g, dt, gorgonia.WithShape(256, 128), gorgonia.WithName("w1"), gorgonia.WithInit(gorgonia.GlorotU(1.0)))
We give each layer...