This is an old revision of the document!
Work with sequential data in Pytorch by building a Char-RNN for text generation
For this lab, you will submit an ipython notebook via learningsuite.
There are many resources for character level recurrent neural networks. This Blog Post will be helpful in understanding the potential, and getting a basic understanding.
This lab will have three parts:
Part 1: Build RNN with built-in methods, train on _textfile.txt_
Part 2: Build your own LSTM Cell
Part 3: Build your own GRU Cell
Part 4: Generate awesome text with a dataset of your choice
This is an example output from The Lord of the Rings, after only 20 minutes of training.
“Who now further here the learnest and south, looking slow you beastion, and that is all plainly day.”
Your notebook will be graded on the following:
At this point in the semester, we have worked primarily with
Step 1. Get a colab notebook up and running with GPUs enabled.
Step 2. Install pytorch and torchvision
!pip3 install torch !pip3 install torchvision !pip3 install tqdm
Step 3. Import pytorch and other important classes
import torch import torch.nn as nn import torch.nn.functional as F import torch.optim as optim from torch.utils.data import Dataset, DataLoader import numpy as np import matplotlib.pyplot as plt from torchvision import transforms, utils, datasets from tqdm import tqdm assert torch.cuda.is_available() # You need to request a GPU from Runtime > Change Runtime Type
Step 4. Construct
- a model class that inherits from “nn.Module”
- a dataset class that inherits from “Dataset” and produces samples from https://pytorch.org/docs/stable/torchvision/datasets.html#fashion-mnist
Step 5. Create instances of the following objects:
Step 6. Loop over your training dataloader, inside of this loop you should