Skip to content

A resource for learning about PyTorch and deep learning.

License

Notifications You must be signed in to change notification settings

HalimSD/pytorch-tutorials

 
 

Repository files navigation



Open In Youtube


pytorch-tutorials

Table of Contents

Summary

In this repository, you will find tutorials aimed at helping people get up to speed with PyTorch and PyTorch Lightning. Links to the relevant docs and associated youtube channel and PyPI project can be found in the badges above. My ultimate intent is to have a little series associated with all of the PyTorch libraries (vision, text, audio,..) but for now it's just vision.

I hope this is useful to you! Please comment on youtube if you have corrections/comments or suggestions for how to make this project and associated package more useful. Thanks!

Intro to Computer Vision

This tutorial series consists of six youtube videos (one intro and five tutorials) and five public colab notebooks so you can follow along with the video. We begin by building a model to count objects in an image, then conduct image segmentation using UNET, and finally, learn how to train Faster RCNN and Mask RCNN on a custom dataset. We work with the same simple and configurable dataset of images throughout the series. We finish with some examples of how to apply this model to real images and videos in Part 5. The series will be most useful to those who have some PyTorch and machine learning experience and are interested in deep learning for computer vision tasks. We will also be using Pytorch Lightning extensively which is a great tool for organizing deep learning projects so if you are new to that tool, this series will be a good primer and tour of the features on offer. Each tutorial contains a video and a colab notebook so you can follow along with the video and easily do your own explorations.

In my experience, it is challenging to build intuition for how deep learning works in practice without actually trying to train models. So my hope is that this will be a good way for people to get their hands dirty without a large barrier to entry in set-up or prior experience. I highly encourage people to make a copy of the colab notebooks you can edit (open the notebook by right-clicking the badges below, then click "save a copy in drive") and follow along with it while watching the videos. My idea with this project was to make small configurable datasets that would enable people (and myself) to gain an intuition for how to train bigger models (FasterRCNN, MaskRCNN,...) without needing to run on a cluster or train for a week to see how things work. The idea is that the youtube videos and associated colab notebooks walk through everything in detail (hopefully not excruciating detail) and then the classes and utility functions we make in the colab notebooks are all found in the pytorch-tutorials pypi package so that people can easily make their own sandbox to play around in. Documentation for that package is found here.

TLDR: By the end of the series, a PyTorch computer vision novice should have the tools to train any of the models we cover on a custom dataset (Part 1 - Part 4) and also quickly apply a trained mask rcnn model to their own images and videos (Part 5).

Part 0: Summary and Introduction

Part 1: Object Counting with CNNs

  • Open In Colab

Part 2: Image Segmentation with UNET

  • Open In Colab

Part 3: Object Detection with Faster RCNN

  • Open In Colab

Part 4: Instance Segmentation with Mask RCNN

  • Open In Colab

Part 5: Applying Mask RCNN in the Wild

How to Reach Me

  • If you have any suggestions for how to make this resource more useful please comment on the youtube channel.
  • If something in the package is broken please submit an issue on GitHub.
  • For work stuff or to just say hi reach out over linked-in.


License: MIT


Note: This project is not affiliated with pytorch in any way.

About

A resource for learning about PyTorch and deep learning.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%