Skip to content

anuraglahon16/DeepLearning-with-PyTorch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DeepLearning with PyTorch

“Deep Learning with PyTorch: Zero to GANs”.

This course is taught by Jovian.ml, a project management and collaboration platform for machine learning.

Syllabus

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.

Module 1: PyTorch Basics - Tensors & Gradients

Introduction to Jupyter notebooks & Data Science in Python

Creating vectors, matrices & Tensors in PyTorch

Tensor operations and gradient computations

Interoperability of PyTorch with Numpy

Module 2: Linear Regression & Gradient Descent

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.)

Module 3: Logistic Regression for Image Classification

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

Module 4: Feedforward Neural Networks & GPUs

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

Module 5a: Image Classification using Convolutional Neural Networks

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

Module 5b: Data Augmentation, Regularization and Residual Networks

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

Module 6: Image Generation using Generative Adversarial Networks (GANs)

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

Weekly Assignments

Week 1: Linear Regression

Week 2: Image Classification

Week 3: Feedforward neural networks

Course Project

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.

Kaggle In-Class Competition

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.

Certificate of Completion

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.

About

“Deep Learning with PyTorch: Zero to GANs”.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages