Course Description

This upper-level undergraduate course will cover the fundamentals of natural language processing. The course will introduce core problems such as machine translation, language modeling, text classification, parsing, and question answering and then teach state-of-the-art techniques to solve such problems. During the course, students will learn and derive mathematical models and algorithms for NLP, and learn about fascinating complexities and challenges human language presents. Students will complete homework assignments containing written and programming components, group final project and an exam, applying techniques learned during the semester. The course is intended for students in CS as well as linguistics students with appropriate computational background.


Course Staff
Instructor: Eunsol Choi
Office: GDC 3.810
Office Hour: Thursdays 10:00 - 11:00 AM (GDC 3.810)

Teaching Assistant: Anirudh Srinivasan (anirudhs AT
Office Hour location: GDC 3rd floor balcony
Office Hour: Monday 2:00 - 3:00 PM

Course Interface

The lectures will be in person at GDC 1.304 (Tue/Thurs 3:30-4:45PM) unless otherwise notified. Some lectures (e.g., guest lectures) can be conveyed online. In either case, the lectures will be recorded and available from canvas. We will have a Piazza for class communication and Gradescope for all assignment submissions.

There won’t be a single textbook for the course. The readings will be a combination of recent research papers and chapters from the following online, freely available textbooks. Please look at the course schedule for details.

Course Components

Class Participation (10%)
The scores will be based on in class activities (attending lectures, engage in class room activities) and activities on Piazza forum, etc.

Exam (25%) There will be one in-class exam near the end of the semester, covering materials discussed in class so far.

Assignments (40%)
There will be four assignments (counts 10% to final grade each), and assignments will have written components and programming components. New assignments will be released roughly when previous assignments are due on Gradscope.

HW1: Classifier   
HW2: Sequence Tagging

Final Project (25%)
The details on final project will be released later, stay tuned! You are allowed – and encouraged – to work in a group of two students.

Late submission policy
Each student is given 6 slip days (24 hour extension) to use throughout the semester (updated Feb 2th to have 6 instead of 5 slip days). This can be used for assignments only, not final project or exam. If you are working as a team, for each 24 hour extension, a slip day from each member will be consumed. Any number of these days can be applied to any assignment to extend the deadline for that assignment by that many days. E.g., you can turn in Assignment 1 one day late and Assignment 4 one day late, using two slip days total. Slip days can only be used for assignments, not for any component of the final project. Slip days cannot be used fractionally: submitting an assignment 1 hour late incurs 1 slip day, 25 hours late incurs 2 slip days, etc. For each day late an assignment is turned in not covered by a slip day or negotiated extension (listed above), 15% of the credit for that assignment will be deducted. So, an assignment turned in two days late will automatically lose 30%.

Course Policy

Academic Integrity Please read the departmental guidelines. While it is encouraged to discuss with classmates, all materials should be your own (and your teammates for group projects). When you use someone else’s material (i.e., figures, open sourced codes), you should cite them properly and make it very clear which parts are your work.

Notice about students with disabilities
The university is committed to creating an accessible and inclusive learning environment consistent with university policy and federal and state law. Please let me know if you experience any barriers to learning so I can work with you to ensure you have equal opportunity to participate fully in this course. If you are a student with a disability, or think you may have a disability, and need accommodations please contact Services for Students with Disabilities (SSD). Please refer to SSD’s website for contact and more information: If you are already registered with SSD, please deliver your Accommodation Letter to me as early as possible in the semester so we can discuss your approved accommodations and needs in this course.

Notice about absences
The only absences that will be considered excused are for religious holidays or extenuating circumstances due to an emergency. If you plan to miss class due to observance of a religious holiday, please let us know at least two weeks in advance. You will not be penalized for this absence, although you will still be responsible for any work you will miss on that day if applicable. Check with us for details or arrangements.

Personal Pronouns
Professional courtesy and sensitivity are especially important with respect to individuals and topics dealing with differences of race, culture, religion, politics, sexual orientation, gender, gender variance, and nationalities. Class rosters are provided to the instructor with the student’s legal name, unless they have added a “preferred name” with the Gender and Sexuality Center. I will gladly honor your request to address you by a name that is different from what appears on the official roster, and by the gender pronouns you use (she/he/they/ze, etc). Please advise me of any changes early in the semester so that I may make appropriate updates to my records. For instructions on how to add your pronouns to Canvas, visit

Sharing of Course Materials is Prohibited
No materials used in this class, including, but not limited to, lecture hand-outs, videos, assessments (quizzes, exams, papers, projects, homework assignments), in-class materials, review sheets, and additional problem sets, may be shared online or with anyone outside of the class unless you have my explicit, written permission. Unauthorized sharing of materials promotes cheating. It is a violation of the University’s Student Honor Code and an act of academic dishonesty. I am well aware of the sites used for sharing materials, and any materials found online that are associated with you, or any suspected unauthorized sharing of materials, will be reported to Student Conduct and Academic Integrity in the Office of the Dean of Students. These reports can result in sanctions, including failure in the course.

Class Recordings
Class recordings are reserved only for students in this class for educational purposes and are protected under FERPA. The recordings should not be shared outside the class in any form. Violation of this restriction by a student could lead to Student Misconduct proceedings.