Vanilla GAN with Numpy

Generative Adversarial Networks (GANs) have achieved tremendous success in generating high-quality synthetic images and efficiently internalising the essence of the images that they learn from. Their potential is enormous, as they can learn to do that for any distribution of data. In order to keep up with the latest advancements, I decided to explore their… Continue reading Vanilla GAN with Numpy

Implementing a LSTM from scratch with Numpy

In this post, we will implement a simple character-level LSTM using Numpy. It is trained in batches with the Adam optimiser and learns basic words after just a few training iterations.The full code is available on GitHub. Figure 1: Architecture of a LSTM memory cell Imports import numpy as np import matplotlib.pyplot as plt Data… Continue reading Implementing a LSTM from scratch with Numpy

Deriving the backpropagation equations for a LSTM

In this post I will derive the backpropagation equations for a LSTM cell in vectorised form. It assumes basic knowledge of LSTMs and backpropagation, which you can refresh at Understanding LSTM Networks and A Quick Introduction to Backpropagation. Derivations Forward propagation We will firstly remind ouselves of the forward propagation equations. The nomenclature followed is… Continue reading Deriving the backpropagation equations for a LSTM