“Deep Learning with PyTorch: Zero to GANs”.
This course is taught by Jovian.ml, a project management and collaboration platform for machine learning.
The course is divided into 6 modules, and will be taught over 6 weeks via video lectures and interactive Jupyter notebooks. Each lecture will be around 2 hours long.
Introduction to Jupyter notebooks & Data Science in Python
Creating vectors, matrices & Tensors in PyTorch
Tensor operations and gradient computations
Interoperability of PyTorch with Numpy
Linear Regression from scratch using Tensor operations
Weights, biases and the mean squared error loss function
Gradient descent and model training with PyTorch Autograd
Linear Regression using PyTorch built-ins (nn.Linear, nn.functional etc.)
Working with images from the MNIST dataset
Training and validation dataset creation
Softmax function and categorical cross entropy loss
Model training, evaluation and sample predictions
Working with cloud GPU platforms like Kaggle & Colab
Creating a multilayer neural network using nn.Module
Activation function, non-linearity and universal approximation theorem
Moving with datasets and models to the GPU for faster training
Working with the 3-channel RGB images from the CIFAR10 dataset
Introduction to Convolutions, kernels & features maps
Underfitting, overfitting and techniques to improve model performance
Improving the dataset using data normalization and data augmentation
Improving the model using residual connections and batch normalization
Improving the training loop using learning rate annealing, weight decay and gradient clip
Training a state of the art image classifier from scratch in 10 minutes
Introduction to generative modeling and application of GANs
Creating generator and discriminator neural networks
Generating and evaluating fake images of handwritten digits
Training the generator and discriminator in tandem and visualizing results
Exercises & Assignments
Week 1: Linear Regression
Week 2: Image Classification
Week 3: Feedforward neural networks
For the course project, students will create an image classification model using Convolutional neural networks, on a real-world dataset of their choice. The project will allow students to experiment with different types of models and regularization techniques. Students will also present their work at the end of the course and publish a blog post describing their approach and results.
Students will participate in a private data science competition hosted on the Kaggle platform. The competition will run for 3 weeks, allowing students to apply & improve their skills in a competitive environment. Students will gain exposure to working with cloud GPU platforms.
Students who attend at least 5 out of 6 video lectures and make valid submissions for all assignments will be eligible to receive a Certificate of Completion by Jovian.ml. Selected projects will also be receive a Best Project Award based on evaluation criteria determined by the instructors.
