By day, Dave Snowdon is a mild-mannered programmer working on Virtual Desktop Infrastructure at VMware. By night, when not asleep, plans world domination by social emotional robots powered by python and clojure. Before he was virtualised Dave worked for Xerox Research in France and, back in the mists of time, developed one of the first distributed multi-user virtual reality environments as part of his PhD work at Manchester.
More recently, he has been devoting his time to understanding machine learning with a particular emphasis on deep neural networks.
In this lab we'll build three neural networks in java. We'll start with an introduction to what neural networks are and how they work and build a simple network from scratch in java. We'll then take a look at the deeplearning4j framework and use it to build two more complex "deep" networks one to classify images and the another to process text.
By the end of this lab you should have enough understanding to experiment with neural networks for your own projects and understand the two main types of neural network architecture: convolutional networks (typically used for image processing) and recurrent networks (used for sequential or time series data).