Neural Networks for Visual Recognition
Based off Stanford cs231n. Neural Networks for Visual Recognition.
This is my work on the Stanford cs231n Winter 2016 assignments.
In these assignments, I coded the layer architecture needed for vanilla neural networks, convolutional neural networks and recurrent neural networks, such as the loss functions, and the forward/backward passes for convolutional layers, pooling layers, affine layers, recurrent and LSTM layers.
Guide for Students
I have implemented both naive and vectorized versions of layer passes whenever required. I try to make my code short and efficient, for elegance of appearance. The downside is that it may be hard to decipher at times my implementations; however since my code is fairly well commented, you may understand it given a background in the material.
I am not a Stanford student but I found the material really interesting. The assignments really helped me get an understanding for the material. Use my work as a guide if you wish but please do not plagarize! Remember, the marks aren't worth much, but the understanding of neural networks that comes with completing (and struggling at times) the assignments yourself is priceless!