The goals of this assignment are as follows:
- Develop proficiency with PyTorch tensors
- Gain experience using notebooks on Google Colab
- Understand the basic Image Classification pipeline and the data-driven approach (train/predict stages)
- Understand the train/val/test splits and the use of validation data for hyperparameter tuning
- Implement and apply a k-Nearest Neighbor (kNN) classifier
Notebooks:
The goals of this assignment are as follows:
- Implement and apply a Multiclass Support Vector Machine (SVM) classifier
- Implement and apply a Two layer neural network classifier
- Understand the differences and tradeoffs between these classifiers
- Practice implementing vectorized gradient code by checking against naive implementations, and using numeric gradient checking
Notebooks:
The goals of this assignment are as follows:
- Understand Neural Networks and how they are arranged in layered architectures
- Understand and be able to implement modular backpropagation
- Implement various update rules used to optimize Neural Networks
- Implement Batch Normalization for training deep networks
- Implement Dropout to regularize networks
- Understand the architecture of Convolutional Neural Networks and get practice with training these models on data
Notebooks:
fully_connected_networks.ipynb
The goals of this assignment are:
- Understand how autograd can help automate gradient computation
- See how to use PyTorch Modules to build up complex neural network architectures
- Understand and implement recurrent neural networks
- See how recurrent neural networks can be used for image captioning
- Understand how to augment recurrent neural networks with attention
- Use image gradients to synthesize saliency maps, adversarial examples, and perform class visualizations
- Combine content and style losses to perform artistic style transfer
Notebooks:
rnn_lstm_attention_captioning.ipynb
The goals of this assignment are:
- Learn about the object detection pipeline
- Understand how to build an anchor-based single-stage object detectors
- Understand how to build a two-stage object detector that combines a region proposal network with a recognition network
Notebooks:
single_stage_detector_yolo.ipynb
two_stage_detector_faster_rcnn.ipynb
The goals of this assignment are:
- Understand Generative Adversarial Networks (GANs)
- Implement Vanila GAN, LS-GAN, DC-GAN
Notebooks:
generative_adversarial_networks.ipynb
EECS 498-007 / 598-005 Deep Learning for Computer Vision Fall 2019