Natural Language Processing

11-411 for undergrads | 11-611 for grads

Overview

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

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.

Schedule

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

Grading

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%).

FAQ

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