At Learnopencv.com, we have adopted a mission of spreading awareness and educate a global workforce on Artificial Intelligence. Taking a step further in that direction, we have started creating tutorials for getting started in Deep Learning with PyTorch. We hope that this will be helpful for people who want to get started in Deep Learning and PyTorch.
PyTorch for Beginners
We have created a series of tutorials for absolute beginners to get started with PyTorch and Torchvision. There are lots of tutorials on the PyTorch website and we have tried to write these tutorials in such a way that there is minimum overlap with those tutorials.
Here is a list of tutorials in this series:
Introduction to PyTorch: Basics
This post is an introduction to PyTorch for those who just know about PyTorch but have never actually used it. We cover the basics of PyTorch Tensors in this tutorial with a few examples. Check out the full tutorial.
PyTorch for Beginners: Image Classification using Pre-trained models
In this tutorial, we introduce the Torchvision package and discuss how we can use it for Image Classification. We compare different models on the basis of Speed, Accuracy, model size etc, which will help you decide which models to use in your applications. Check out the full tutorial.
Image Classification using Transfer Learning in PyTorch
In this tutorial, we discuss how to perform Transfer Learning using pre-trained models using PyTorch. We use a subset of the CalTech256 dataset to perform Image Classification to distinguish between 10 different types of animals. Check out the full tutorial.
PyTorch Model Inference using ONNX and Caffe2
In this tutorial, we look at the deployment pipeline used in PyTorch. We discuss how to convert models trained in PyTorch to a universal format called ONNX. Then we load the model see how to perform inference in Caffe2 ( another Deep Learning library specifically used for deploying deep learning models ). Check out the full tutorial.
PyTorch for Beginners: Semantic Segmentation using torchvision
In this post, we discuss how to use pre-trained Torchvision models for Semantic Segmentation. The two models that are covered are Fully Convolutional Network and DeepLab v3. Check out the full tutorial.
Faster R-CNN Object Detection with PyTorch
In this tutorial, we will cover Faster R-CNN object detection with PyTorch. We will learn the evolution of object detection from R-CNN to Fast R-CNN to Faster R-CNN. Check out the full tutorial.
Mask R-CNN Instance Segmentation with PyTorch
In this tutorial, we will discuss a bit of theory behind Mask R-CNN and how to use pre-trained Mask R-CNN model in PyTorch to carry out Instance Segmentation. We will also compare Faster R-CNN and Mask R-CNN based on inference time and memory requirement. Check out the full tutorial.
Ensuring Training Reproducibility in PyTorch
In this post, we will go over the steps necessary to ensure you are able to reproduce a training experiment in PyTorch at least with the same version and same platform (OS etc.). We will discuss briefly about the sources of randomness in training, the effect of randomness and how to ensure reproducible training experiments. Check out the full tutorial.
Multi-Label Image Classification with PyTorch
In this tutorial, we will take a look at multi-output classification or image tagging, which is one of the modifications of image classification task. We will use the Fashion Product dataset to carry out image tagging. Check out the full tutorial.
PyTorch C++ Front-end: Tensors
In this tutorial, we will discuss how to setup libtorch and how to create Tensors in libtorch. Check out the full tutorial.
Pytorch C++ Frontend Part II : Inputs,weights and bias
In this tutorial, we will first discuss briefly about perceptrons and activation functions. Next we will see how we can build neural networks in C++ using libtorch. Check out the full tutorial here.
CPU Performance Comparison of OpenCV and other Deep Learning frameworks
In this post, we will compare the performance of various Deep Learning inference frameworks on a Image Classification, Object Detection, Object Tracking and Pose Estimation on the CPU. Check out the full tutorial.
EfficientNet: Theory + Code
In this post, we will discuss the paper “EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks”. We will also see how EfficientNet can be implemented in Keras and PyTorch. Check out the full tutorial.
Applications of Foreground-Background separation with Semantic Segmentation
In this post, we will use DeepLab v3 in torchvision for foreground-background separation related applications. We will also have a look at Greenscreen Matting application using torchvision. Check out the full tutorial here.
Fully Convolutional Image Classification on Arbitrary Sized Image
In this post, we will learn how to perform image classification on arbitrary sized images without using the computationally expensive sliding window approach. Check out the full tutorial here.
CNN Receptive Field Computation Using Backprop
In this post,we will discuss about the concept of receptive fields in a neural network to understand what a network “sees” We will use backpropagation to compute the receptive field. Check out the full tutorial.
t-SNE for Feature Visualization
In this tutorial, we will learn about t-SNE, which is one of the most popular algorithms for Dimensionality Reduction. We will see how it can be used for visualizing multidimensional data in lower dimensions. Check out the full tutorial.
More tutorials to come…