In this assignmet you will use pytorch, a popular deep learning library, to create sentiment classifiers using some of the models we have talked about in class. The goal of the assignment is to familiarize yourself with pytorch, and a few of the issues specific to text processing using neural networks on GPUs. We will use sentiment analysis as an example classification problem, and consider a simple binary version of the problem. You will need to implement classifiers using Deep Averaging Networks and different Recurrent Neural Networks (i.e. LSTMs). Finally, you will need to make a thorough comparison of these approaches, and do a qualitative analysis of the errors.
The assignment requires you to fill in elements of a colab notebook, and then submit the notebook to GradeScope, along with the predictions of your models on test data. The Colab notebook, and write up template are below. In the past, we have asked you to respond to questions in the notebook. In this homework, all of the questions you need to respond to are in the write up document, including some new experiments. In the colab, all you need to do so pass the PennGrader tests.
We have used a version of this as an assignment in 519 last semester to introduce NLP with deep networks. You will be asked to go much further here, but if you are familiar with parts of this assignment, you may reuse.
Here are the materials that you should download for this assignment:
Here are the deliverables that you will need to submit: