CS585: Natural Language Processing
If you've joined the class late, please check Blackboard for announcements, and please complete the course survey ASAP.
Course: CS 585: Natural Language Processing
Instructor: Dr. Aron Culotta
Meetings: 1:50 - 3:05 pm T/R Stuart Building 113
E-mail: culotta at cs.iit.edu
Office Hours: T/R 11:00 a.m. - 12:00 p.m.
Office: Stuart Hall 229B
TAs: Sihan Zhao (szhao31 at hawk); office hours W 11:00 a.m. - 12:00 p.m.
See the Schedule for a detailed list of readings and due dates.
CS585 Natural Language Processing: Provide theoretical and practical overview of natural language processing, including syntax, semantics, and discourse analysis. Focus on the latest statistical and probabilistic approaches to the problem. Prerequisite: CS430
- Speech and Language Processing, Jurafsky & Martin (we'll use parts of the 1st edition as well as the 3rd edition, which is in progress).
- Natural Language Processing with Python, Byrd et al.
- Deep Learning, Goodfellow et al.
200 points - Assignments (4 @ 50 points each)
100 points - Quizzes (4 @ 25 points each)
100 points - Test 1
100 points - Test 2
100 points - Project
600 total points
- Please read IIT's Academic Honesty Policy
- All work you turn in must be done by you alone
- You may not look at the solution of any other student prior to the due date.
- All violations will be reported to
- The first violation will result in a failing grade for that assignment/test. The second will result in a failing grade for the course.
Late Submission Policy
- Late assignments will not be accepted, unless:
- There is an unavoidable medical, family, or other emergency; and
- You notify me prior to the due date.
- Provide practical and theoretical understanding of syntactic parsing
- Provide practical and theoretical understanding of probabilistic approaches to text classification, parsing, and discourse processing
- Provide practical and theoretical understanding of latest neural network learning methods for language processing.
Contribution to general objectives
a. An ability to apply knowledge of computing and mathematics appropriate to the discipline.
c. An ability to design, implement and evaluate a computer-based system, process, component, or program to meet desired needs.
f. An ability to communicate effectively with a range of audiences.
i. An ability to use current techniques, skills, and tools necessary for computing practices.
j. An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices.