Natural Language Processing S20

11-411 for undergrads | 11-611 for grads


Section A: Tuesdays and Thursdays, 3:00-4:20pm (Doherty Hall 2210)
Office Hours by appointment
Teaching Assistants
TA Office Hours
(Location: GHC 5th Floor, LTI common area)
Speech and Language Processing (2nd Edition, 2007, Prentice-Hall), by Daniel Jurafsky and James Martin
Cheating Policy

Course Description

This course is about a variety of ways to represent human languages (like English and Chinese) as computational systems, and how to exploit those representations to write programs that do neat stuff with text and speech data, like

This field is called Natural Language Processing or Computational Linguistics, and it is extremely multidisciplinary. This course will therefore include some ideas central to Machine Learning and to Linguistics.

We'll cover computational treatments of words, sounds, sentences, meanings, and conversations. We'll see how probabilities and real-world text data can help. We'll see how different levels interact in state-of-the-art approaches to applications like translation and information extraction.

From a software engineering perspective, there will be an emphasis on rapid prototyping, a useful skill in many other areas of Computer Science.

Course Prerequisites

CS courses on data structures and algorithms, and strong programming skills.


# Date Topic Readings Assignments and
Project milestones
1 Jan 14 Course overview; What does it mean to know language?
Lecture Video
Chap 1
2 Jan 16 Information extraction, question answering, and NLP in IR
Lecture Video
Chap 22.0-2, 23.0-2 Assignment 1 out
3 Jan 21 Project
Lecture Video
4 Jan 23 Words, morphology, and lexicons
Lecture Videos
Chap 3.1-3.9 Assignment 1 due
Assignment 2 out
5 Jan 28 Language models and smoothing
Lecture Video
Chap 4.3-8
6 Jan 30 Noisy channel models and edit distance
Lecture Video
Chap 3.10, 3.11, 5.9
7 Feb 4 Part of speech tags
Lecture Video
Chap 5.0-3
8 Feb 6 Hidden Markov models
Lecture Video
Chap 6.0-4 Assignment 2 due
Assignment 3 out
Project Initial Plan due
9 Feb 11 Classification 1
Lecture Video
10 Feb 13 Classification 2
Lecture Video
Assignment 3 due
Assignment 4 out
11 Feb 18 Syntactic representations of natural language
Lecture Video
Last Year's Lecture Video
Chap 12.0-3
12 Feb 20 Chomsky hierarchy and natural language
Lecture Video
Chap 15 Assignment 4 due
Assignment 5 out
13 Feb 25 Context-free recognition, CKY
Lecture Video
14 Feb 27 Parsing algorithms
Lecture Video
Chap 12.7, Chap 13, Chap 14-14.2 Assignment 5 due
Assignment 6 out
15 Mar 3 Treebanks and PCFGs
Lecture Video
Chap 12.4, 14.7
Mar 5 Midterm exam
Project Progress Report due 11:59pm
Mar 9-17 Spring Break
16 Mar 19 Lexical semantics
Lecture Video
Chap 17.0-2, 19.0-3
17 Mar 24 Word embeddings/vector semantics
Lecture Video
SLP3 Chap 6
18 Mar 26 Verb/sentence semantics
Slides A
Slides B
Lecture Video
Chap 17.2-4, Chap 19.4-6
19 Mar 31 Compositional semantics, semantic parsing
Lecture Video
Chap 18.1-3 Assignment 6 due
Assignment 7 out
20 Apr 2 Discourse, entity linking, pragmatics
Chap 20.0-6, 20.8-11
21 Apr 7 Sentiment Analysis and Computational Argumentation
22 Apr 9 Speech 1
Project dry run code due 11:59 PM
23 Apr 14 Speech 2
Assignment 7 due
24 Apr 16 Non-English NLP
25 Apr 21 Interpreting Social Media
26 Apr 23 Machine Translation
Chap 25.0-1, 25.9 Final Project code due 11:59 PM
27 Apr 28 Deep Learning
28 Apr 30 Final Exam
Final Project report due May 5, 11:59pm

Competitive Project

Project description

A major component will be the project: build a program whose input is a web page P and whose output is a set of questions about the content in P (that a human could answer if she read P), and can also, if given a question Q about the content of P, answer the question intelligently. Projects will be pitted against each other in a competition at the end of the course.

Project Resources:


Students will be evaluated by exam (midterm and final, totaling 40%), regular short quizzes and weekly pencil-and-paper or small programming homework problems (30% together), and the group project (30%).


Should I take this course?

Yes, if:

Related courses elsewhere (not exhaustive!)

University of California, Berkeley, Brown University, University of Colorado, Columbia University, Cornell University, University of Illinois at Urbana-Champaign, Johns Hopkins University, University of Maryland, New York University, University of Pennsylvania, Stanford University, University of Utah, University of Wisconsin-Madison