COS 470: Natural language processing
MW 14:00-15:30 -
Instructor: Behrooz Mansouri
Student Hours: M 15:30-16:30T 11:00-12:00
Course Topics
This course provides an introduction to the field of computational linguistics, aka natural language
processing (NLP) providing a theoretical foundation and hands-on (lab-style) practice in computational
approaches for processing natural language text.
We will discuss problems involving different language system components (such as meaning in context
and linguistic structures). Students will collaborate in teams on modeling and implementing natural
language processing and digital text solutions using Python and a variety of relevant tools. We will begin
by discussing machine learning methods for NLP as well as core NLP, such as language modeling, part of
speech tagging, and parsing. We will also discuss applications such as information extraction, machine
translation, text generation, and automatic summarization.
Course Materials
- Speech and Language Processing - An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition, James H. Martin, Daniel Jurafsky
- Natural Language Processing, Jacob Eisenstein
Learning Outcomes
- Describe the fundamental concepts and techniques of natural language processing
- Analyze the performance of a natural language processing system by applying the proper evaluation measures
- Design and implement real applications using natural language processing systems
- Analyze large volume text data generated from a range of real-world applications
Lectures
Assignment
Projects
This course is project-based, with no final exam. Students can find the project description here.
Labs