how-to-train-your-neural-net icon indicating copy to clipboard operation
how-to-train-your-neural-net copied to clipboard

Deep learning research implemented on notebooks using PyTorch.

GitHub license GitHub stars GitHub forks GitHub issues

How to train your neural net poster

How To Train Your Neural Net

This repo contains notebooks on training deep learning models for various tasks in the domains of Computer Vision, Natural Language Processing, and Time Series Forecasting using CUDA enabled PyTorch 1.0+.

Table of Contents

Basics

  • Self-Attention in Computer Vision.
  • Convolutional Neural Networks.
  • Data Loaders and Loss Functions.
  • Recurrent Neural Networks.
  • PyTorch Samplers.
  • Tensors and Autograd.

Computer Vision

  • Classification
    • Binary image classification using Hotdog-NotHotdog dataset.
    • Multiclass image classification using Rock-Paper-Scissor dataset.
  • Network Pruning
    • Learning both weights and connections for efficient neural networks. [NIPS 2015]
  • Domain Adaptation
    • Unsupervised domain adaptation by backpropagation. [ICML 2015]
    • Deep Domain Confusion: Maximizing for Domain Invariance. [Arxiv 2014]
  • Visual Attention
    • Non-local Neural Networks. [CVPR 2018]
    • Squeeze and Excitation [CVPR 2018]
    • CBAM: Convolutional Block Attention Module [ECCV 2018]
  • Visual Explanation
    • Grad-CAM: Visual Explanations from Deep Networks via Gradient-Based Localization. [ICCV 2017]
  • Semantic Segmentation
    • Fully Convolutional Network for Semantic Segmentation. [CVPR 2015]
    • Learning deconvolution network for semantic segmentation. [ICCV 2015]
    • U-Net: Convolutional Networks for Biomedical Image Segmentation [MICCAI 2015]

Natural Language Processing

  • Word Vectors [GLoVe].
  • Understanding Padding and Packing for RNNs.
  • Named Entity Recognition (Conll database)
    • RNN
  • Text Classification
    • Binary text classification (Yelp Reviews).
      • RNN
      • CNN
      • RNN+CNN
    • Multi-class text classification (BBC news categorization).
      • RNN
      • CNN
      • RNN+CNN

Tabular

  • Classification
    • Multiclass classification using DNN.
    • Binary classification using DNN.
  • Regression
    • Multiple Regression using DNN.
  • Time Series Forecasting
    • Univariate Forecasting - Single Step - RNN.
    • Univariate Forecasting - Multi Step - RNN.

Blog Post

You can find the related blog-posts here.