Time:
Tu/Th, 11:00am–12:20pm
Location:
KAP 140
Instructors:
Prof. David Chiang (chiang@isi.edu)
Prof. Kevin Knight (knight@isi.edu)
Teaching Assistant:
Qing Dou (qdou@isi.edu)

Course Description

Computers process massive quantities of information every day in the form of human language, yet machine understanding of human language remains one of the great challenges of computer science. How can advances in computing technology enable more intelligent processing of all this language data? Will computers ever be able to use this data to learn language like humans do? This course provides a systematic introduction to statistical models of human language, with particular attention to the structures of human language that inform them and the structured learning and inference algorithms that drive them. This is a lecture course, not a seminar course, but aims to cover both fundamental and cutting-edge research issues.

Audience This graduate course is intended for PhD students (or undergraduate or masters students who want to continue to a PhD program) who want to deepen their understanding of current natural language processing (NLP) research.

Prerequisites Students are expected to be proficient in programming, basic algorithms and data structures, discrete math, and basic probability theory.

Related Courses This course is part of USC's curriculum in natural language processing. There is a sister course, Applied Natural Language Processing (CSCI 544), offered in the Spring semester. You can take these two in either order.

Textbooks

Requirements and policies (subject to change)

CourseworkStudents will experiment with existing NLP software toolkits and write their own programs. Grades will be based on:

All assignments and the project will be due at the beginning of class (11am) on the due date. Late assignments will be accepted with a 30% penalty up to one week late. No exceptions can be made except for a grave reason.

Students are expected to submit only their own work for homework assignments. They may discuss the assignments with one another but may not collaborate with or copy from one another.

Statement on Academic Integrity USC seeks to maintain an optimal learning environment. General principles of academic honesty include the concept of respect for the intellectual property of others, the expectation that individual work will be submitted unless otherwise allowed by an instructor, and the obligations both to protect one's own academic work from misuse by others as well as to avoid using another's work as one's own. All students are expected to understand and abide by these principles. Scampus, the Student Guidebook, contains the Student Conduct Code in Section 11.00, while the recommended sanctions are located in Appendix A: http://www.usc.edu/dept/publications/SCAMPUS/gov. Students will be referred to the Office of Student Judicial Affairs and Community Standards for further review, should there be any suspicion of academic dishonesty. The Review process can be found at: http://www.usc.edu/student-affairs/SJACS.

Syllabus

Date Topic Instructor Slides/Readings Assignments
Tue, Aug 27 Introduction. Applications of Natural Language Processing. Knight and Chiang HW0: nothing to turn in.
Unit One: Sequence Models
Thu, Aug 29 Basic automata theory. Finite-state acceptors and transducers. Knight Quiz 1: Probability and statistics.
Tue, Sep 3
Thu, Sep 5 Weighted finite-state acceptors and transducers. The noisy-channel model. HW1 out: finite-state methods.
Tue, Sep 10 Language models and their applications.
Learning models from data.
Chiang
Thu, Sep 12
Add/drop deadline
Knight HW 1 due
Tue, Sep 17 String transformations and their applications. Quiz 2: language models.
Thu, Sep 19 HW2 out: language models.
Tue, Sep 24
Unit Two: Learning Language
Thu, Sep 26 Unsupervised training. Expectation-Maximization. The Forward-Backward algorithm. Knight HW 2 due
Tue, Oct 1
Thu, Oct 3 HW 3 out: Expectation-Maximization.
Quiz 3: Expectation-Maximization.
Tue, Oct 8 Bayesian inference: Variational methods. Monte Carlo methods: Metropolis-Hastings, Gibbs sampling, sampling from FSTs, slice sampling, particle filtering.
Thu, Oct 10
Tue, Oct 15 Spectral learning. HW 3 due
Quiz 4: Bayesian methods.
Thu, Oct 17 TBD
Tue, Oct 22 Discriminative training. The perceptron algorithm. Conditional random fields. Max-margin training. Discriminative unsupervised training. Chiang
Thu, Oct 24 HW4 out: discriminative training.
Tue, Oct 29 Quiz 5: discriminative training.
Unit Three: Tree Models
Thu, Oct 31 Context-free grammars (CFGs). Parsing. Inside-Outside algorithm. Chiang HW4 due
Tue, Nov 5
Thu, Nov 7 Statistical parsing. HW 5 out: context-free grammars.
Tue, Nov 12 Initial project proposal due
Quiz 6: context-free grammars.
Thu, Nov 14
Withdraw deadline
Synchronous context-free grammars and machine translation.
Chiang HW 5 due
Tue, Nov 19 Dependency parsing. Spanning trees. Chu-Liu-Edmonds algorithm. Matrix-Tree Theorem Dou Final project proposal due
Thu, Nov 21 Tree-adjoining grammars and graph rewriting grammars. Chiang
Tue, Nov 26
Thu, Nov 28 Thanksgiving – no class
Tue, Dec 3 Project interim presentations You
Thu, Dec 5
Wed, Dec 18 Final projects due

Suggested Readings

[LY90] The estimation of stochastic context-free grammars using the inside-outside algorithm.
K. Lari and S. J. Young.
Computer Speech and Language, 1990: 4:35-56.
[SSP95] Principles and Implementation of Deductive Parsing.
Stuart Shieber, Yves Schabes, and Fernando Pereira.
Journal of Logic Programming, 1995: 24 (1-2): 3-36.
[H08] Tutorial on Semirings and Advanced Dynamic Programming in NLP (slides).
Liang Huang
Tutorial given at COLING 2008 and NAACL 2009.
[KS09] Tutorial on Writing Systems, Transliteration, and Decipherment (slides).
Kevin Knight and Richard Sproat
Tutorial given at NAACL 2009.
[CG98] An Empirical Study of Smoothing Techniques for Language Modeling
Stanley F. Chen and Joshua Goodman
Technical Report TR 10-98, Computer Science Group, Harvard University.
[DLR77] Maximum Likelihood from Incomplete Data via the EM Algorithm
A.P. Dempster, N.M. Laird, and D.B. Rubin
Journal of the Royal Statistical Society, Vol. 39, No. 1, 1977
[C97] The EM Algorithm
Michael Collins
[D02] The Expectation Maximization Algorithm
Frank Dellaert
Technical Report, 2002
[B06] The Expectation Maximization Algorithm -- A short Tutorial.
Sean Borman

Some useful Python modules