Stanford CS231n Assignment Tutorials
This page lists all the assignment tutorials I wrote for CS231n: Convolutional Neural Networks for Visual Recognition. You can find the syllabus in their course page: http://cs231n.stanford.edu/syllabus.html
As of this writing, the most recent intake is winter 2016; if you are from a newer/older intake, the contents of the lectures and assignments might be altered slightly, but they all should be still using python2.
These are more of my own notes, designed to supplement the existing materials provided in the course, but since I wrote it as if I am teaching myself, it qualifies as tutorials as well. I can’t ascertain that my solutions are 100% correct since I never did enrolled on the course myself; I’m not a Stanford student, just pick up this course with a few of my course mates since we need the knowledge for out upcoming final year projects.
My final solutions are in my github repository. As of this writing, I’ve yet walk through the whole course; you can see my progress as I marked the assignments in the README file in the repository. I can’t guarantee that I will actually finish the whole thing, or even write a tutorial for each one:
- Assignment #1
- Q1: k-Nearest Neighbor classifier (20 points)
- Q2: Training a Support Vector Machine (25 points)
- Q3: Implement a Softmax classifier (20 points)
- Q4: Two-Layer Neural Network (25 points) ~ I won’t be writing for this one; Karpathy did an intuitive neural network case study write up which you can practically copy paste as solution.
- Q5: Higher Level Representations: Image Features (10 points)
- Assignment #2
- Q1: Fully-connected Neural Network (30 points)
- Q2: Batch Normalization (30 points)
- Q3: Dropout (10 points)
- Q4: ConvNet on CIFAR-10 (30 points)
- Assignment #3
- Q1: Image Captioning with Vanilla RNNs (40 points)
- Q2: Image Captioning with LSTMs (35 points)
- Q3: Image Gradients: Saliency maps and Fooling Images (10 points)
- Q4: Image Generation: Classes, Inversion, DeepDream (15 points)