Credit Hours: 4
Class Time and Location:
Tuesday/Thursday 3:25 - 4:40, CSB 601
Course Description:
Instructor:
TA:
Prerequisites: CSC242
Textbook:
Supplementary Texts (on reserve in Carlson library):
Course Materials:
Grading:
Homework:
This course is an introduction to natural language processing:
constructing computer programs that understand natural language.
Topics include English phrase structure, parsing, semantic analysis,
knowledge representation, and NL system design.
Len Schubert
Department of Computer Science
Room 733, Computer Studies Building
University of Rochester
E-mail:
lastname at cs dot rochester dot edu
Office Hours: Tuesday and Thursday 5:00 - 6:00 (or by appointment)
Benjamin Van Durme
(lastname (as one word) at cs dot rochester dot edu)
Office Hours: Tuesday and Thursday, 9:30-10:30 (tentative), CSB 615
Knowledge of LISP (or scheme) is assumed, and some acquaintance with
context-free grammars (e.g., from CSC 280, CSC 254 or LIN 220) is helpful.
A prior logically oriented course such as CSC 244, CSC 219, or PHL 110
is also very desirable.
James Allen,
Natural Language Understanding,
Benjamin/Cummings, 2nd edition, 1995.
Some course materials may be made available through this (or the TA's) web page.
Lectures will involve use of overhead slides and the board, and copies
of the slides (and some other informal notes) will be provided to students
via the web or as hard copy.
Top-down parse example
The following contribute to the grades (where percentage weights
may be adjusted upward or downward by up to 3%):
The homework assignments will include problems requiring written
answers and Lisp programming. The problems will be based on the lectures
that have been given.
due 3:15pm, Oct. 10/06
The later Lisp assignments may form a staged
NLP project, perhaps aimed at simple text summarization, or knowledge
extraction, or something similar. This may well involve use of some
pre-existing code, such as parsers and logical form generators. It
may also involve use (and perhaps further development) of resources
such as lexicons and text or treebank corpora.
due 3:15pm, Sept. 26/06
Lisp Assignment 2 due 3:15pm, Oct. 12/06
Brown corpus extract for Lisp assignments 2-4
Assignment 3 (non-Lisp part) due 3:15pm, Oct. 24/06
Lisp Assignment 3 due 3:15pm, Nov. 2/06
Assignment 4 Due: 3:15pm, Nov. 21/06
Lisp assignment 4 due: 3:15pm, Nov. 30/06
Assignment 5 due: 5:00pm, Dec. 8/06
The project/essay for graduate students can be on a freely chosen topic in natural language processing, but could also be an elaboration, in some direction, of the assigned project. (But in all cases some delving into the relevant literature is expected; i.e., even a programming-oriented project should describe how the work relates to the state of the art, though in less depth than an essay-style project.) Essays/project writeups are typically 3500-7000 words in length, and should be well-written and well-organized, and should include illustrative examples, relevant citations, and should show the author's ability to digest and clearly present (in his or her own words) technically nontrivial material and to contribute novel ideas and a personal perspective. Project topics should be thought about as early as possible. Some more detailed guidelines will be provided.
Academic honesty policy:
In your writing, problem-solving and programming, you are expected to use your own ideas, your own words, and your own code, unless otherwise indicated (e.g., you are advised to use some code written by the TA, or from some other source). Where you do use another author's text verbatim, give a proper citation, and similarly, where you make permissible use of code from a non-prescribed source, cite your source. The following applies to assignments that you've been asked to do individually (as opposed to any group project that might possibly be assigned, and explicitly designated as such).Students may discuss among themselves the nature of the problems or tasks assigned, but not the solutions. If you collaborated with someone (namely, worked on a problem with someone or shared your solution with someone), then on your paper report who the persons are. The points you earn on that particular problem will be divided by the total number of students involved in the collaboration. Failure to report collaboration, if detected, will result in a penalty---the entire score of the paper will be reduced to zero.
Course Goals and Schedule:
The goals are to learn ...In more general terms, after taking this course you should
- basic concepts of English syntax (grammar), including features and ``unbounded movement";
- basic techniques of parsing (syntactic analysis);
- basic concepts of semantic representation, and techniques for mapping syntactic structures to (preliminary) logical forms ;
- basic techniques of structural and lexical disambiguation, including statistical techniques based on text corpora;
- ``deindexing": converting context-dependent logical forms to context-independent ones;
- basic concepts of knowledge representation and reasoning (KR & R), and techniques of using world knowledge and knowledge of discourse structure to infer causal (etc.) connections between sentences;
- (esp. grads) basic concepts of speech acts and the beliefs, desires, obligations, intentions, and plans underlying them, and how these shape communication.
- have a sense of the current state of the art, major difficulties, and future prospects in NLU;
- be ready to delve into the more specialized and research literature;
CL, Ann. Meet. of the ACL, EACL, COLING, ANLP, Linguistics and Philosophy, special workshops (e.g., AAAI Spring and Fall Symposia, workshops on speech, discourse, dialogue, large corpora, knowledge extraction, question-answering, etc.)
General AI literature: AIJ, JAIR, CI, Cog. Sci., AAAI, IJCAI, ECAI, ...
- have some awareness of the new vistas opened by large computerized text/speech corpora -- disambiguation, learning syntax, semantic categories, world knowledge, ...
- be able to program basic techniques for parsing, interpretation, corpus processing, etc., in Lisp.
The course schedule made available through this link (as a pdf file) will also be handed out in the first class. The schedule is approximate and subject to adjustment.
Slides from lectures:
(A slide-printing script is available
here, and now a 10 times
faster version (with only slightly lower resolution) is available
here,
both thanks to Fabrizio Morbini.)
07: Auxiliaries, Passives, Imperatives, Y-N-Questions
08: Questions, Gaps, and Parsing with Gaps
09: Other Unbounded Dependencies
10: Towards Deterministic Parsing
14: Semantic Interpretation Intro
17: Interpreting PPs, Simple Relatives, and Yes-No Questions
19: Further Issues in Semantic Interpretation