The Convolutional Neural Network in this example is classifying images live in your browser, at about 10 milliseconds per image. It takes an input image and transforms it through a series of functions (e.g. convolution, rectification, pooling) into class probabilities at the end. The parameters of this function are learned with backpropagation on a dataset of (image, label) pairs. In this class, you will learn how to build and train these networks. This particular 17-layer network is classifying
CIFAR-10 images into one of 10 classes and was trained with
ConvNetJS.
Course Description
Computer Vision has become ubiquitous in our society, with applications in search, image understanding, apps, mapping, medicine, drones, and self-driving cars. Core to many of these applications are the tasks of image classification, localization and detection. This course is a deep dive into details of neural network architectures with a focus on learning end-to-end models for these tasks, particularly image classification. During the 10-week course, students will learn to implement, train and debug their own neural networks and gain a detailed understanding of cutting-edge research in computer vision. The final assignment will involve training a multi-million parameter convolutional neural network and applying it on the largest image classification dataset (ImageNet). We will focus on teaching how to set up the problem of image recognition, the learning algorithms (e.g. backpropagation), practical engineering tricks for training and fine-tuning the networks and guide the students through hands-on assignments and a final course project. Much of the background and materials of this course will be drawn from the
ImageNet Challenge.