This repository is an archive of the course CS231n: Convolutional Neural Networks for Visual Recognition (Winter 2016). If you’re even vaguely interested in this topic, you should probably take this class. It is outstanding.
To use this repository, make a fork of
it and then
tick off the items in the following syllabus as you complete
them. (You can tick off items by replacing [ ]
with [x]
in
README.md
.)
Happy learning!
Harish Narayanan, 2017
- Lecture 1: Intro to computer vision, historical context
- Lecture 2: Image classification and the data-driven approach; k-nearest neighbors; Linear classification I
- Lecture 3: Linear classification II; Higher-level representations, image features; Optimization, stochastic gradient descent
- Lecture 4: Backpropagation; Introduction to neural networks
- Assignment 1
- k-Nearest Neighbor classifier
- Training a Support Vector Machine
- Implement a Softmax classifier
- Two-Layer Neural Network
- Higher Level Representations: Image Features
- Cool Bonus: Do something extra!
- Lecture 5: Training Neural Networks Part 1; Activation functions, weight initialization, gradient flow, batch normalization; Babysitting the learning process, hyperparameter optimization
- Lecture 6: Training Neural Networks Part 2: parameter updates, ensembles, dropout; Convolutional Neural Networks: intro
- Lecture 7: Convolutional Neural Networks: architectures, convolution / pooling layers; Case study of ImageNet challenge winning ConvNets
- Lecture 8: ConvNets for spatial localization; Object detection
- Lecture 9: Understanding and visualizing Convolutional Neural Networks; Backprop into image: Visualizations, deep dream, artistic style transfer; Adversarial fooling examples
- Assignment 2
- Fully-connected Neural Network
- Batch Normalization
- Dropout
- ConvNet on CIFAR-10
- Do something extra!
- Lecture 10: Recurrent Neural Networks (RNN), Long Short Term Memory (LSTM); RNN language models; Image captioning
- Lecture 11: Training ConvNets in practice; Data augmentation, transfer learning; Distributed training, CPU/GPU bottlenecks; Efficient convolutions
- Lecture 12: Overview of Caffe/Torch/Theano/TensorFlow
- Assignment 3
- Image Captioning with Vanilla RNNs
- Image Captioning with LSTMs
- Image Gradients: Saliency maps and Fooling Images
- Image Generation: Classes, Inversion, DeepDream
- Do something extra!
- Lecture 13: Segmentation; Soft attention models; Spatial transformer networks
- Lecture 14: ConvNets for videos; Unsupervised learning
- Invited Lecture: A sampling of deep learning at Google
- Lecture 15: Conclusions