CSE 447/517, Winter 2026
Tues/Thurs 10:00-11:20am, CSE2 G20 (Gates, ground floor)
Instructor:Robert Minneker
Teaching Assistant:Anagha Rao
Teaching Assistant:Boyang "Boe" Zhou
Announcements
- Office Hours will begin the week of January 12th.
Summary
This course covers methods for designing systems that intelligently process natural language text data. The course is hands-on and project-based, focusing on building and evaluating practical NLP systems.
Prerequisites
CSE 312 (prob/stats) and CSE 332 (data structures/algos); recommended: MATH 208 (linear algebra). CSE 446 (machine learning) is recommended before or concurrently.
Calendar
Tentative and subject to change. More details will be added as the quarter continues.
| Week | Date | Topics | Readings | Key Dates |
|---|---|---|---|---|
| 1 | Tue Jan 6 | Logistics/Introduction [pdf] [pptx] | Eis 1 | |
| Thu Jan 8 | Words and Tokens [pdf] [pptx] | J&M III 2; Eis 2 | A0 out | |
| 2 | Tue Jan 13 | Text Classification [pdf] [slides] [blog] | J&M III 4; Eis 2 | |
| Thu Jan 15 | Text Classification [pdf] [slides] | J&M III 4; Eis 2 | A1 out | |
| 3 | Tue Jan 20 | N-gram Language Models [pdf] [slides] | J&M III 3; Eis 3 | |
| Thu Jan 22 | Embeddings [pdf] [slides] | J&M III 5 | ||
| 4 | Tue Jan 27 | Embeddings [pdf] [slides] | J&M III 5 | 517 Prop. 447 Ckpt 1 |
| Thu Jan 29 | Neural Networks [pdf] [slides] | J&M III 6 | A1 due | |
| 5 | Tue Feb 3 | Neural Networks - Noah Smith [pdf] [slides] | A2 out | |
| Thu Feb 5 | Transformers | J&M III 8 | ||
| 6 | Tue Feb 10 | Transformers | J&M III 8 | |
| Thu Feb 12 | Transformers | J&M III 8 | 517 V1 447 Ckpt 2 | |
| 7 | Tue Feb 17 | Pre-training | J&M III 7 | A2 due |
| Thu Feb 19 | Decoding | J&M III 7 | A3 out | |
| 8 | Tue Feb 24 | Post-training | ||
| Thu Feb 26 | LLMs - Finetuning | 447 Ckpt 3 | ||
| 9 | Tue Mar 3 | LLMs - Prompting | ||
| Thu Mar 5 | LLMs - Evaluation | A3 due | ||
| 10 | Tue Mar 10 | LLMs - Building applications | ||
| Thu Mar 12 | LLMs - Where to go from here? | 517 V2 447 Ckpt 4 |
Resources
Assignments/Grading
- A0 (Python and Pytorch Tutorial / Review): Optional, no submission.
- A1 (Text Classification and N-gram language models): 15%
- A2 (Neural Text Classification and Neural Language Modeling): 15%
- A3 (Transformers and Natural Language Generation): 20%
- Final Project: 50%
- This will be a major component of the final grade see instructions below:
- Participation: up to 4% bonus
- Course surveys, completion based activities
Note: Assignments/Grading subject to change based on factors like class performance, compute feasibility, and topics covered during the course.
Policies
Late policy. Each student will be granted 5 late days to use over the duration of the quarter. You can use a maximum of 3 late days on any one assignment. Weekends and holidays are also counted as late days. Late submissions are automatically considered as using late days. Using alloted late days will not affect your grade. However, assignments submitted late after all late days have been used will receive no credit. Late days may not be used on the final project submission. Be careful!
Academic honesty. Homework assignments are to be completed individually. Verbal collaboration on homework assignments is acceptable, as well as re-implementation of relevant algorithms from research papers, but everything you turn in must be your own work, and you must note the names of anyone you collaborated with on each problem and cite resources that you used to learn about the problem. The project proposal is to be completed by a team. Suspected violations of academic integrity rules will be handled in accordance with UW guidelines on academic misconduct.
On ChatGPT, Copilot, and other AI assistants (adopted from Greg Durrett): Understanding the capabilities of these systems and their boundaries is a major focus of this class, and there’s no better way to do that than by using them!
We strongly encourage you to use ChatGPT to understand concepts in AI and machine learning. You should see it as a another tool like web search that can supplement understanding of the course material.
You are allowed to use ChatGPT and Copilot for programming assignments. However, usage of ChatGPT must be limited in the same way as usage of other resources like websites or other students. You should come up with the high-level skeleton of the solution yourself and use these tools primarily as coding assistants.
You are permitted to use ChatGPT for conceptual questions on assignments, but discouraged from doing so. It will get some of these questions right and some of them wrong. These questions are meant to deepen your understanding of the course content. Heavily relying on ChatGPT for your answers will negatively impact your learning.
An example of a good question is, “Write a line of Python code to reshape a Pytorch tensor x of [batch size, seqlen, hidden dimension] to be a 2-dimensional tensor with the first two dimensions collapsed.” Similar invocation of Copilot will probably be useful as well. An example of a bad question would be to try to feed in a large chunk of the assignment code and copy-paste the problem specification from the assignment PDF. This is also much less likely to be useful, as it might be hard to spot subtle bugs. As a heuristic, it should be possible for you to explain what each line of your code is doing. If you have code in your solution that is only included because ChatGPT told you to put it there, then it is no longer your own work in the same way.
Accommodations. If you have a disability and have an accommodations letter from the Disability Resources office, I encourage you to discuss your accommodations and needs with me as early in the semester as possible. I will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the office of Disability Resources for Students, I encourage you to apply here.
Note to Students
Take care of yourself! As a student, you may experience a range of challenges that can interfere with learning, such as strained relationships, increased anxiety, substance use, feeling down, difficulty concentrating and/or lack of motivation. All of us benefit from support during times of struggle. There are many helpful resources available on campus and an important part of having a healthy life is learning how to ask for help. Asking for support sooner rather than later is almost always helpful. UW services are available, and treatment does work. You can learn more about confidential mental health services available on campus here. Crisis services are available from the counseling center 24/7 by phone at +1 (206) 616-7777 (more details here).
Acknowledgments
This site was built using Kevin Lin’s package Just the Class, which is built on Just the Docs and based on prior offerings by Yulia Tsvetkov and Noah Smith.