How do I learn machine learning? by Parag K Mital
Answer by Parag K Mital:
We’ve just launched a new course which will get you up to date with the state of the art in Deep Learning w/ Tensorflow:
Unlike other courses, this is an application-led course, teaching you fundamentals of Tensorflow as well as state-of-the-art algorithms by encouraging exploration through the development of creative thinking and creative applications of deep neural networks. We’ve already built a very strong community with an active forum and Slack, where students are able to ask each other questions and learn from each others approaches on the homework. I highly encourage you to try this course. There are plenty of *GREAT* resources for learning Tensorflow. But this is the only comprehensive online course that will both teach you how to use Tensorflow and develop your creative potential for understanding how to apply the techniques in creating Neural Networks.
This course introduces you to deep learning: the state-of-the-art approach to building artificial intelligence algorithms. We cover the basic components of deep learning, what it means, how it works, and develop code necessary to build various algorithms such as deep convolutional networks, variational autoencoders, generative adversarial networks, and recurrent neural networks. A major focus of this course will be to not only understand how to build the necessary components of these algorithms, but also how to apply them for exploring creative applications. We'll see how to train a computer to recognize objects in an image and use this knowledge to drive new and interesting behaviors, from understanding the similarities and differences in large datasets and using them to self-organize, to understanding how to infinitely generate entirely new content or match the aesthetics or contents of another image. Deep learning offers enormous potential for creative applications and in this course we interrogate what's possible. Through practical applications and guided homework assignments, you'll be expected to create datasets, develop and train neural networks, explore your own media collections using existing state-of-the-art deep nets, synthesize new content from generative algorithms, and understand deep learning's potential for creating entirely new aesthetics and new ways of interacting with large amounts of data.
Course runs July 21, 2016 – December 31, 2016
Session 1: Introduction To Tensorflow (July 21, 2016)
We'll cover the importance of data with machine and deep learning algorithms, the basics of creating a dataset, how to preprocess datasets, then jump into Tensorflow, a library for creating computational graphs built by Google Research. We'll learn the basic components of Tensorflow and see how to use it to filter images.
Session 2: Training A Network W/ Tensorflow (August 2, 2016)
We'll see how neural networks work, how they are "trained", and see the basic components of training a neural network. We'll then build our first neural network and use it for a fun application of teaching a neural network how to paint an image, and explore such a network can be extended to produce different aesthetics.
Session 3: Unsupervised And Supervised Learning (August 16, 2016)
We explore deep neural networks capable of encoding a large dataset, and see how we can use this encoding to explore "latent" dimensions of a dataset or for generating entirely new content. We'll see what this means, how "autoencoders" can be built, and learn a lot of state-of-the-art extensions that make them incredibly powerful. We'll also learn about another type of model that performs discriminative learning and see how this can be used to predict labels of an image.
Session 4: Visualizing And Hallucinating Representations (August 30, 2016)
This sessions works with state of the art networks and sees how to understand what "representations" they learn. We'll see how this process actually allows us to perform some really fun visualizations including "Deep Dream" which can produce infinite generative fractals, or "Style Net" which allows us to combine the content of one image and the style of another to produce widely different painterly aesthetics automatically.
Session 5: Generative Models (September 13, 2016)
The last session offers a teaser into some of the future directions of generative modeling, including some state of the art models such as the "generative adversarial network", and its implementation within a "variational autoencoder", which allows for some of the best encodings and generative modeling of datasets that currently exist. We also see how to begin to model time, and give neural networks memory by creating "recurrent neural networks" and see how to use such networks to create entirely generative text.