Natural Language Processing

http://cs.jhu.edu/~jason/465
).
Course catalog entry: This course is an indepth overview of techniques for processing human language. How should linguistic structure and meaning be represented? What algorithms can recover them from text? And crucially, how can we build statistical models to choose among the many legal answers?
The course covers methods for trees (parsing and semantic interpretation), sequences (finitestate transduction such as tagging and morphology), and words (sense and phrase induction), with applications to practical engineering tasks such as information retrieval and extraction, text classification, partofspeech tagging, speech recognition, and machine translation. There are a number of structured but challenging programming assignments. Prerequisite: 600.226 or equivalent. [Applications, 3 credits]
Course objectives: Welcome! This course is designed to introduce you to some of the problems and solutions of NLP, and their relation to linguistics and statistics. You need to know how to program (e.g., 600.120) and use common data structures (600.226). It might also be nice—though it's not required—to have some previous familiarity with automata (600.271) and probabilities (600.475, 550.420, or 550.310). At the end you should agree (I hope!) that language is subtle and interesting, feel some ownership over some of NLP's formal and statistical techniques, and be able to understand research papers in the field.
Lectures:  MWF 34 or 34:15, Hackerman B17.  
Prof:  Jason Eisner  ()  
TA:  Dingquan Wang   
CAs:  Miles Zhang

Akshay Srivatsan   
Office hrs: 
For Prof: After class until 4:30; or by appt in Hackerman 324C For TA/CAs: Ding: TuTh 1011 in Hackerman 322. Akshay, Miles: TBA.  
Discussion session:  TAled session (optional) for activities/discussion/questions/review: TBA  
Discussion site: 
https://piazza.com/class/ijwfi1y4u3d6nh
... public questions, discussion, announcements  
Web page:  http://cs.jhu.edu/~jason/465  
Textbook: 
Jurafsky & Martin, 2nd ed. (semirequired  P98.J87 2009 in Science Ref section on CLevel) Roark & Sproat (recommended  P98.R63 2007 in same section) Manning & Schütze (recommended  free online PDF version here!)  
Policies: 
Grading: homework 50%, participation 5%, midterm 15%, final 30% Submission: TBA Lateness: floating late days policy Honesty: CS integrity code, JHU undergraduate policies, JHU graduate policies Intellectual engagement: much encouraged Disabilities: If you need accommodations for a disability, obtain a letter from Student Disability Services, 385 Garland, (410) 5164720. integrity code Announcements: Read mailing list and this page!  
Related sites: 

This class is in the "flexible time slot" MWF 34:30. Please keep the entire slot open. Class will usually run 34, followed by office hours in the classroom from 44:30 (stick around to get your money's worth). However, class will sometimes run till 4:15 in order to keep up with the syllabus. I'll try to give advance notice of these "long classes," which among other things make up for noclass days when I'm out of town.
We'll also schedule a onceperweek discussion session led by your TA. This optional session will focus on solving problems together. That's meant as an efficient and cooperative way to study for an hour: it reinforces the past week's class material without adding to your homework load. Also, if you come to discussion session as recommended, you won't be startled by the exam style — the discussion problems are taken from past exams and are generally interesting.
Warning: The schedule below may change. Links to future lectures and assignments may also change (they currently point to last year's versions).
Warning: I sometimes turn off the PDF links when they are not up to date with the PPT links. If they don't work, just click on "ppt" instead.
>Week  Monday  Wednesday  Friday  Suggested Reading  
1/25  No class (blizzard day) 
Introduction
(ppt)

Assignment 1 given: Designing CFGs Modeling grammaticality (ppt) 


2/1 
Language models
(ppt)

Probability concepts
(ppt; video lecture)

Bayes' Theorem
(ppt) Smoothing ngrams (ppt) 


2/8 
Assignment 2 given: Probabilities Smoothing continued 
Catchup day (we'll be behind schedule by now) 
(& another sign meant 3 ... ?) 


2/15 
Assignment 3 given: Language Models Contextfree parsing (ppt) 
Assignment 2 due Contextfree parsing 
Quick inclass quiz: Loglinear models Earley's algorithm (ppt) 


2/22 
Extending CFG
(summary
(ppt))

Probabilistic parsing
(ppt)

Assignment 4 given: Parsing Parsing tricks (ppt) 
 
2/29 
Assignment 3 due Human sentence processing (ppt) 
Semantics
(ppt)

Semantics continued



3/7 
Assignment 5 given: Semantics Semantics continued 
Midterm exam (34:30 in classroom) 
Learning in the limit
(ppt)



3/14 
No class (spring break) 
No class (spring break) 
No class (spring break) 

3/21 
Forwardbackward algorithm (ppt)
(Excel spreadsheet; Viterbi version; lesson plan; video lecture)

Assignment 4 due Forwardbackward continued 
Assignment 6 given: Hidden Markov Models Expectation Maximization (ppt) 


3/28 
Midterm exam moved here? Finitestate algebra (ppt) 
Finitestate machines

Assignment 5 due Finitestate implementation (ppt) 


4/4 
Assignment 7 given: FiniteState Modeling Noisy channels and FSTs (ppt) 
Noisychannel FSTs continued

Finitestate tagging
(ppt)



4/11 
Assignment 6 due Programming with regexps (ppt) 

Optimal paths in graphs



4/18 
Structured prediction
(ppt)

Current NLP tasks and competitions
(ppt)

Applied NLP continued (ppt)  Explore links in "NLP tasks" slides  
4/25  Applied NLP continued (ppt)  Topic models 
Assignment 7 due Machine translation 


5/2  Final exam: Fri 5/6, 25pm 