This is a remix from https://github.com/DeepLearningDTU/02456-deep-learning
This is the next steps in learning how to use PyTorch. The purpose is to get the audience to get the audience familiar with building machine learning models in PyTorch.
NOTE In these labs cuda is used extensively. If you have a cuda enabled machine, read the README.md in the root of this repo on how to use nvidia-docker.
In this lab you will implement a simple feed forward neural network in PyTorch.
- http://neuralnetworksanddeeplearning.com/chap1.html
- http://neuralnetworksanddeeplearning.com/chap2.html
Train a FFN classifier to solve the half moon problem.
Train a FFN classifier to recognize handwritten digits.
In this lab you will implement a convolutional neural network in PyTorch.
Train a CNN classifier to recognize handwritten digits.
Use the cluttered MNIST dataset along with a Spatial Transformer Network to make a CNN classifier to recognize handwritten digits.
This lab contains first real use of cuda support.
Autoencoders and MNIST.
Train an autoencoder on MNIST to encode a target given some input.
This lab shows how sequences can be used with recurrent neural networks to learn to classify text.
- https://www.youtube.com/watch?v=yCC09vCHzF8
- http://karpathy.github.io/2015/05/21/rnn-effectiveness/
- https://einstein.ai/research/learning-when-to-skim-and-when-to-read
- http://papers.nips.cc/paper/5021-distributed-representations-of-words-andphrases
Train a bag of words model to classify positive and negative sentences.
Train a recurrent neural network to classify positive and negative sentences.
Note this lab is very slow without a GPU. See README.md
in root folder.
Combine all previous labs (FFN, CNN, RNN) to compete in the leaf classification challenge.
Nothing.
Train different models and submit the results to Kaggle.
Test your newly acquired skills on the most notorious classification challenges: Text Entailment.
- Stanford Natural Language Inference (SNLI), Bowman et al.
- Rocktäschel et al.
- McCann et al. (bleeding edge research, advanced reading material, focus on the BCN model in section five)
Build data loader, model, loss function, optimizer and training loop from scratch. Notice that replicating the BCN model is a difficult task and may take a significant amount of time.