This is a curated list of tutorials, projects, libraries, videos, papers, books and anything related to the incredible PyTorch. Feel free to make a pull request to contribute to this list.
Table Of Contents
- Table Of Contents
- Tutorials
- Large Language Models (LLMs)
- Tabular Data
- Visualization
- Explainability
- Object Detection
- Long-Tailed / Out-of-Distribution Recognition
- Activation Functions
- Energy-Based Learning
- Missing Data
- Architecture Search
- Continual Learning
- Optimization
- Quantization
- Quantum Machine Learning
- Neural Network Compression
- Facial, Action and Pose Recognition
- Super resolution
- Synthetesizing Views
- Voice
- Medical
- 3D Segmentation, Classification and Regression
- Video Recognition
- Recurrent Neural Networks (RNNs)
- Convolutional Neural Networks (CNNs)
- Segmentation
- Geometric Deep Learning: Graph & Irregular Structures
- Sorting
- Ordinary Differential Equations Networks
- Multi-task Learning
- GANs, VAEs, and AEs
- Unsupervised Learning
- Adversarial Attacks
- Style Transfer
- Image Captioning
- Transformers
- Similarity Networks and Functions
- Reasoning
- General NLP
- Question and Answering
- Speech Generation and Recognition
- Document and Text Classification
- Text Generation
- Text to Image
- Translation
- Sentiment Analysis
- Deep Reinforcement Learning
- Deep Bayesian Learning and Probabilistic Programmming
- Spiking Neural Networks
- Anomaly Detection
- Regression Types
- Time Series
- Synthetic Datasets
- Neural Network General Improvements
- DNN Applications in Chemistry and Physics
- New Thinking on General Neural Network Architecture
- Linear Algebra
- API Abstraction
- Low Level Utilities
- PyTorch Utilities
- PyTorch Video Tutorials
- Community
- To be Classified
- Links to This Repository
- Contributions
Tutorials
- Official PyTorch Tutorials
- Official PyTorch Examples
- Dive Into Deep Learning with PyTorch
- Minicourse in Deep Learning with PyTorch (Multi-language)
- Practical Deep Learning with PyTorch
- Deep Learning Models
- C++ Implementation of PyTorch Tutorial
- Simple Examples to Introduce PyTorch
- Mini Tutorials in PyTorch
- Deep Learning for NLP
- Deep Learning Tutorial for Researchers
- Fully Convolutional Networks implemented with PyTorch
- Simple PyTorch Tutorials Zero to ALL
- DeepNLP-models-Pytorch
- MILA PyTorch Welcome Tutorials
- Effective PyTorch, Optimizing Runtime with TorchScript and Numerical Stability Optimization
- Practical PyTorch
- PyTorch Project Template
- Semantic Search with PyTorch
Large Language Models (LLMs)
- LLM Tutorials
- General
- Starcoder 2, family of code generation models
- GPT Fast, fast and hackable pytorch native transformer inference
- Mixtral Offloading, run Mixtral-8x7B models in Colab or consumer desktops
- Llama
- Llama Recipes
- TinyLlama
- Mosaic Pretrained Transformers (MPT)
- VLLM, high-throughput and memory-efficient inference and serving engine for LLMs
- Dolly
- Vicuna
- Mistral 7B
- BigDL LLM, library for running LLM (large language model) on Intel XPU (from Laptop to GPU to Cloud) using INT4 with very low latency1 (for any PyTorch model)
- Simple LLM Finetuner
- Petals, run LLMs at home, BitTorrent-style, fine-tuning and inference up to 10x faster than offloading
- Japanese
- Chinese
- Retrieval Augmented Generation (RAG)
- Embeddings
- Applications
- Finetuning
- Training
- Quantization
Tabular Data
- PyTorch Frame: A Modular Framework for Multi-Modal Tabular Learning
- Pytorch Tabular,standard framework for modelling Deep Learning Models for tabular data
- Tab Transformer
- PyTorch-TabNet: Attentive Interpretable Tabular Learning
- carefree-learn: A minimal Automatic Machine Learning (AutoML) solution for tabular datasets based on PyTorch
Visualization
- Loss Visualization
- Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization
- Deep Inside Convolutional Networks: Visualising Image Classification Models and Saliency Maps
- SmoothGrad: removing noise by adding noise
- DeepDream: dream-like hallucinogenic visuals
- FlashTorch: Visualization toolkit for neural networks in PyTorch
- Lucent: Lucid adapted for PyTorch
- DreamCreator: Training GoogleNet models for DeepDream with custom datasets made simple
- CNN Feature Map Visualisation
Explainability
- Neural-Backed Decision Trees
- Efficient Covariance Estimation from Temporal Data
- Hierarchical interpretations for neural network predictions
- Shap, a unified approach to explain the output of any machine learning model
- VIsualizing PyTorch saved .pth deep learning models with netron
- Distilling a Neural Network Into a Soft Decision Tree
- Captum, A unified model interpretability library for PyTorch
Object Detection
- MMDetection Object Detection Toolbox
- Mask R-CNN Benchmark: Faster R-CNN and Mask R-CNN in PyTorch 1.0
- YOLO-World
- YOLOS
- YOLOF
- YOLOX
- YOLOv10
- YOLOv9
- YOLOv8
- Yolov7
- YOLOv6
- Yolov5
- Yolov4
- YOLOv3
- YOLOv2: Real-Time Object Detection
- SSD: Single Shot MultiBox Detector
- Detectron models for Object Detection
- Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks
- Whale Detector
- Catalyst.Detection
Long-Tailed / Out-of-Distribution Recognition
- Distributionally Robust Neural Networks for Group Shifts: On the Importance of Regularization for Worst-Case Generalization
- Invariant Risk Minimization
- Training Confidence-Calibrated Classifier for Detecting Out-of-Distribution Samples
- Deep Anomaly Detection with Outlier Exposure
- Large-Scale Long-Tailed Recognition in an Open World
- Principled Detection of Out-of-Distribution Examples in Neural Networks
- Learning Confidence for Out-of-Distribution Detection in Neural Networks
- PyTorch Imbalanced Class Sampler
Activation Functions
Energy-Based Learning
Missing Data
Architecture Search
- EfficientNetV2
- DenseNAS
- DARTS: Differentiable Architecture Search
- Efficient Neural Architecture Search (ENAS)
- EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks
Continual Learning
Optimization
- AccSGD, AdaBound, AdaMod, DiffGrad, Lamb, NovoGrad, RAdam, SGDW, Yogi and more
- Lookahead Optimizer: k steps forward, 1 step back
- RAdam, On the Variance of the Adaptive Learning Rate and Beyond
- Over9000, Comparison of RAdam, Lookahead, Novograd, and combinations
- AdaBound, Train As Fast as Adam As Good as SGD
- Riemannian Adaptive Optimization Methods
- L-BFGS
- OptNet: Differentiable Optimization as a Layer in Neural Networks
- Learning to learn by gradient descent by gradient descent
- Surrogate Gradient Learning in Spiking Neural Networks
- TorchOpt: An Efficient Library for Differentiable Optimization
Quantization
Quantum Machine Learning
- Tor10, generic tensor-network library for quantum simulation in PyTorch
- PennyLane, cross-platform Python library for quantum machine learning with PyTorch interface
Neural Network Compression
- Bayesian Compression for Deep Learning
- Neural Network Distiller by Intel AI Lab: a Python package for neural network compression research
- Learning Sparse Neural Networks through L0 regularization
- Energy-constrained Compression for Deep Neural Networks via Weighted Sparse Projection and Layer Input Masking
- EigenDamage: Structured Pruning in the Kronecker-Factored Eigenbasis
- Pruning Convolutional Neural Networks for Resource Efficient Inference
- Pruning neural networks: is it time to nip it in the bud? (showing reduced networks work better)
Facial, Action and Pose Recognition
- Facenet: Pretrained Pytorch face detection and recognition models
- DGC-Net: Dense Geometric Correspondence Network
- High performance facial recognition library on PyTorch
- FaceBoxes, a CPU real-time face detector with high accuracy
- How far are we from solving the 2D & 3D Face Alignment problem? (and a dataset of 230,000 3D facial landmarks)
- Learning Spatio-Temporal Features with 3D Residual Networks for Action Recognition
- PyTorch Realtime Multi-Person Pose Estimation
- SphereFace: Deep Hypersphere Embedding for Face Recognition
- GANimation: Anatomically-aware Facial Animation from a Single Image
- Shufflenet V2 by Face++ with better results than paper
- Towards 3D Human Pose Estimation in the Wild: a Weakly-supervised Approach
- Unsupervised Learning of Depth and Ego-Motion from Video
- FlowNet 2.0: Evolution of Optical Flow Estimation with Deep Networks
- FlowNet: Learning Optical Flow with Convolutional Networks
- Optical Flow Estimation using a Spatial Pyramid Network
- OpenFace in PyTorch
- Deep Face Recognition in PyTorch
Super resolution
- Enhanced Deep Residual Networks for Single Image Super-Resolution
- Superresolution using an efficient sub-pixel convolutional neural network
- Perceptual Losses for Real-Time Style Transfer and Super-Resolution
Synthetesizing Views
Voice
Medical
- Medical Zoo, 3D multi-modal medical image segmentation library in PyTorch
- U-Net for FLAIR Abnormality Segmentation in Brain MRI
- Genomic Classification via ULMFiT
- Deep Neural Networks Improve Radiologists' Performance in Breast Cancer Screening
- Delira, lightweight framework for medical imaging prototyping
- V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation
- Medical Torch, medical imaging framework for PyTorch
- TorchXRayVision - A library for chest X-ray datasets and models. Including pre-trainined models.
3D Segmentation, Classification and Regression
- Kaolin, Library for Accelerating 3D Deep Learning Research
- PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation
- 3D segmentation with MONAI and Catalyst
Video Recognition
- Dancing to Music
- Devil Is in the Edges: Learning Semantic Boundaries from Noisy Annotations
- Deep Video Analytics
- PredRNN: Recurrent Neural Networks for Predictive Learning using Spatiotemporal LSTMs
Recurrent Neural Networks (RNNs)
- SRU: training RNNs as fast as CNNs
- Ordered Neurons: Integrating Tree Structures into Recurrent Neural Networks
- Averaged Stochastic Gradient Descent with Weight Dropped LSTM
- Training RNNs as Fast as CNNs
- Quasi-Recurrent Neural Network (QRNN)
- ReSeg: A Recurrent Neural Network-based Model for Semantic Segmentation
- A Recurrent Latent Variable Model for Sequential Data (VRNN)
- Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networks
- Attention-Based Recurrent Neural Network Models for Joint Intent Detection and Slot Filling
- Attentive Recurrent Comparators
- Collection of Sequence to Sequence Models with PyTorch
- Vanilla Sequence to Sequence models
- Attention based Sequence to Sequence models
- Faster attention mechanisms using dot products between the final encoder and decoder hidden states
Convolutional Neural Networks (CNNs)
- LegoNet: Efficient Convolutional Neural Networks with Lego Filters
- MeshCNN, a convolutional neural network designed specifically for triangular meshes
- Octave Convolution
- PyTorch Image Models, ResNet/ResNeXT, DPN, MobileNet-V3/V2/V1, MNASNet, Single-Path NAS, FBNet
- Deep Neural Networks with Box Convolutions
- Invertible Residual Networks
- Stochastic Downsampling for Cost-Adjustable Inference and Improved Regularization in Convolutional Networks
- Faster Faster R-CNN Implementation
- Paying More Attention to Attention: Improving the Performance of Convolutional Neural Networks via Attention Transfer
- Wide ResNet model in PyTorch -DiracNets: Training Very Deep Neural Networks Without Skip-Connections
- An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition
- Efficient Densenet
- Video Frame Interpolation via Adaptive Separable Convolution
- Learning local feature descriptors with triplets and shallow convolutional neural networks
- Densely Connected Convolutional Networks
- Very Deep Convolutional Networks for Large-Scale Image Recognition
- SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size
- Deep Residual Learning for Image Recognition
- Training Wide ResNets for CIFAR-10 and CIFAR-100 in PyTorch
- Deformable Convolutional Network
- Convolutional Neural Fabrics
- Deformable Convolutional Networks in PyTorch
- Dilated ResNet combination with Dilated Convolutions
- Striving for Simplicity: The All Convolutional Net
- Convolutional LSTM Network
- Big collection of pretrained classification models
- PyTorch Image Classification with Kaggle Dogs vs Cats Dataset
- CIFAR-10 on Pytorch with VGG, ResNet and DenseNet
- Base pretrained models and datasets in pytorch (MNIST, SVHN, CIFAR10, CIFAR100, STL10, AlexNet, VGG16, VGG19, ResNet, Inception, SqueezeNet)
- NVIDIA/unsupervised-video-interpolation
Segmentation
- Detectron2 by FAIR
- Pixel-wise Segmentation on VOC2012 Dataset using PyTorch
- Pywick - High-level batteries-included neural network training library for Pytorch
- Improving Semantic Segmentation via Video Propagation and Label Relaxation
- Super-BPD: Super Boundary-to-Pixel Direction for Fast Image Segmentation
- Catalyst.Segmentation
- Segmentation models with pretrained backbones
Geometric Deep Learning: Graph & Irregular Structures
- PyTorch Geometric, Deep Learning Extension
- PyTorch Geometric Temporal: A Temporal Extension Library for PyTorch Geometric
- PyTorch Geometric Signed Directed: A Signed & Directed Extension Library for PyTorch Geometric
- ChemicalX: A PyTorch Based Deep Learning Library for Drug Pair Scoring
- Self-Attention Graph Pooling
- Position-aware Graph Neural Networks
- Signed Graph Convolutional Neural Network
- Graph U-Nets
- Cluster-GCN: An Efficient Algorithm for Training Deep and Large Graph Convolutional Networks
- MixHop: Higher-Order Graph Convolutional Architectures via Sparsified Neighborhood Mixing