CS759/859 Spring 2024
CS759/859 - Natural Language Processing
Class information
Start Date | End Date | Days | Time | Location |
---|---|---|---|---|
1/23/2024 | 5/2/2024 | Tue/Thurs | 3:40pm - 5:00pm | KING N101 |
Office hours: Wednesday 1 PM to 2 PM, location: Online (see MyCourses announcement for Zoom link)
Prerequisites: CS 515 (or equivalent) and MATH 539 or MATH 644
Description: This class covers natural language processing, including both methods and well-known applications. Methods discussed will range from classical probabilistic methods such as Naive Bayes and Hidden Markov Models, to contemporary neural network methods, including word vector models, recurrent neural networks, and Transformer-based models. Applications discussed will include text classification, machine translation, and conversation systems (among others).
Syllabus
Key information
Syllabus subject to change This syllabus is subject to change. I will make an announcement when this happens, but it is on you as students to keep up.
Mandatory reporter I am a mandatory reporter. What this means is if I hear about a situation where a student is being or has been sexually harassed, assaulted, stalked, or otherwise endangered, I am legally obligated to file a report with the UNH DEI office. That said, I am more than happy to help students find guidance in dealing with these types of situations, subject to my reporting requirements.
Course overview
This course is a special topics lecture on natural language processing for graduate students and advanced undergraduates. Every class session will consist of a lecture, with a weekly homework assignment due the following week. Homeworks will be distributed and completed in Python as Google Colab notebook, with the exact details of distribution and submission to follow.
There will be a final exam in-class the week before the official finals week, precise date TBD.
There will be a final project, chosen from a list of potential topics, with a milestone check-in, a final submission, and a mandatory poster session at the end of the semester.
There is no required textbook, nor mandatory readings.
Grading distribution
The grading distribution is as follows:
65% - Homeworks
20% - Final project
10% - Final exam
5% - Attendance and classroom activities
Late policy
Homeworks and project milestones can be turned in up to 5 days late, with a stacking 10% per-day penalty on the maximum possible grade, before receiving a zero.
Attendance policy
In-person attendance is encouraged and 5% of the final grade will be based on attendance and participation in discussion and classroom activities.
I am happy to accommodate life events. If you get COVID or have some other pressing reason to attend remotely, I can temporarily move the class to a hybrid format. I’m also happy to grant excused absences for medical or family problems, or various other kinds of emergencies. Let me know as early as possible if you need either of these kinds of accommodation.
Academic honesty policy
Students are welcome to ask for and give each other assistance on the homework assignments, but these assignments should be completed individually and your work should be your own.
Given the specialized nature of the topic, it is unlikely that AI coding tools such as ChatGPT will be effective in completing the weekly homework assignments. But needless to say, the use of these kinds of tools is not allowed.
Generally speaking, I will follow the UNH academic honesty policy, which lays out what is considered cheating and what the process is for dealing with cases of reported academic dishonesty.
Schedule
Week | Lecture | Day | Date | Description | Slides | Notebook |
---|---|---|---|---|---|---|
1 | 1 | Tu | 1/23 | Introduction to NLP | ||
1 | 2 | Th | 1/25 | Basics of linguistics | ||
2 | 3 | Tu | 1/30 | Representing text numerically | Drive link | |
2 | 4 | Th | 2/1 | Vector similarity and nearest-neighbors classification | Drive link | |
3 | 5 | Tu | 2/6 | Nearest-neighbors clustering | Drive link | |
3 | 6 | Th | 2/8 | Dimension reduction | Drive link | |
4 | 7 | Tu | 2/13 | Basics of statistical language modeling | Drive link | |
4 | - | Th | 2/15 | Class cancelled | ||
5 | 8 | Tu | 2/20 | More statistical LMs and Naive Bayes | Drive link | |
5 | 9 | Th | 2/22 | Hidden Markov Models | No notebook | |
6 | 10 | Tu | 2/27 | Linear and logistic regression | Drive link | |
6 | 11 | Th | 2/29 | Introduction to PyTorch | Drive link | |
7 | 12 | Tu | 3/5 | Feedforward neural nets | Drive link | |
7 | 13 | Th | 3/7 | Word vector models | Drive link | |
8 | 14 | Tu | 3/12 | Basic recurrent neural nets | Drive link | |
8 | 15 | Th | 3/14 | Sequence tagging with RNNs | Drive link | |
- | - | Tu | 3/19 | Spring break-no class | ||
- | - | Th | 3/22 | Spring break-no class | ||
9 | 16 | Tu | 3/26 | Language modeling with RNNs | No notebook | |
9 | 17 | Th | 3/28 | Prompt engineering | No notebook | |
10 | 18 | Tu | 4/2 | Language modeling with RNNs (part 2) | Drive link | |
10 | 19 | Th | 4/4 | Sequence-to-sequence models | Drive link | |
11 | 20 | Tu | 4/9 | Sequence-to-sequence models (part 2) | Drive link | |
11 | - | Th | 4/11 | Class cancelled | ||
12 | 21 | Tu | 4/16 | Transformers | Drive link | |
12 | 22 | Th | 4/18 | BERT and friends | Drive link | |
13 | 23 | Tu | 4/23 | Practical prompt engineering | Drive link | |
13 | 24 | Th | 4/25 | Model evaluation | ||
14 | 25 | Tu | 4/30 | Interpretability | ||
14 | 26 | Th | 5/2 | Bias and fairness | ||
15 | - | Tu | 5/7 | Reading day | ||
15 | - | Th | 5/11 | Exams week | ||
16 | - | Tu | 5/16 | Exams week |