CS690: Natural Language Processing
Spring 2011
Time and Location: Tue, Thu 1:10pm – 3:00pm, Irvine 110
Instructor: Razvan Bunescu
Office: Stocker 337
Office Hours: Tue, Thu 10:30am – 12pm, or by email appointment
Email: bunescu @ ohio edu
Textbook:
Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition, by Daniel Juraksfy and James E. Martin. McGraw Hill, 2008 (2nd edition).
Recommended Supplementary Text:
Foundations of Statistical Natural Language Processing by Christopher Manning and Hinrich Schütze. MIT Press, 1999.
Course description:
Natural Language Processing (NLP) is a branch of Artificial Intelligence concerned with developing computer systems that can process, understand, or communicate in natural language. Major applications of NLP include information retrieval and web search, information extraction, question answering, machine translation, sentiment analysis, text mining, and speech recognition. This graduate level course will give a fairly broad overview of NLP, with a primary focus on tasks that are widely seen as fundamental for a natural language understanding system such as part of speech tagging, syntactic parsing, word sense disambiguation, semantic role labeling, coreference resolution, and semantic parsing.
Prerequisites:
Students are expected to exhibit basic knowledge of formal languages (regular and context free grammars) and to be comfortable with programming in Java. Relevant background material in elementary linear algebra, probability theory and information theory will be made available during the course. Knowledge of machine learning and linguistics will be very useful, though not strictly necessary.
Lecture notes:
- Syllabus & Introduction
- Language Models
- Part of Speech Tagging
- Syntax and Grammars
- Syntactic Parsing
- Statistical Parsing
- Lexical Semantics and Word Sense Disambiguation
- Semantic Role Labeling
Homework Assignments:
Final Project:
Online resources: