Skip to content

Federico-abss/pytorch_gans

Repository files navigation

Pytorch: From Zero to GANs

This repository documents my work done during the Deep Learning course based on Pytorch and offered from Jovian.ml, the lessons were streamed on the Freecodecamp youtube channel, my Jovian profile contains all the notebooks written during the course.

the course was composed of six lessons and 5 projects

Module 1: PyTorch Basics - Tensors & Gradients

  • Introduction to Jupyter notebooks & Data Science in Python
  • Tensor operations and gradient computations
  • What is 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.)

First Assignment: Exploring Pytorch
Medium blogpost about the assignment

Module 2: Stocastic Linear Regression & Working With Pictures

  • Converting images into Input that a ML Model can use
  • 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

Second Assignment: Creating a ML Model

Module 3: 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 datasets and models to the GPU for faster training

Third Assignment: Creating a Multilayered Network

Module 4: Image Classification using Convolutional Neural Networks

  • Working with cloud GPU platforms like Kaggle & Colab
  • Creating a multilayer neural network using nn.Module
  • Introduction to Convolutions, kernels & features maps
  • Activation function, non-linearity and universal approximation theorem

Module 5: 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
  • Underfitting, overfitting and techniques to improve model performance

Module 6: Image Generation using Generative Adverserial 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

Final Project

Linear regression model built on the WHO Life Expectancy dataset to predict Life Expectancy.

Using AI to predict Life Expectancy
Medium Blogpost about the final project

Certificate of completion!

certificate

About

Deep Learning with Pytorch, ML course offered from Jovian.ml

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published