About this class
This course provides a broad introduction to
natural language processing.
We target this class mainly at advanced
undergraduates and graduate students in computer
science, but welcome other students that have the necessary
background and programming skills. We expect students to have
some programming experience (we use Python 3), as well as a basic
exposure to algorithms, calculus, linear algebra, probability
and statistics. We do not assume any prior knowledge of
machine learning or linguistics.
Course Objectives
At the end of this course, students should
have a good understanding of the research questions and methods used
in different areas of natural language
processing. Students should also be able to use this knowledge to implement
simple natural language processing algorithms and
applications. Students who take this course for 4 hours credit
should also be able to understand and evaluate original research papers
in natural language processing that build on and go beyond the
textbook material covered in class.
Course Structure and Platforms
This semester, CS447 is back in person! (Please come to class)
In addition to this website, we will use
Campuswire for
discussion, Canvas for grades, and Gradescope for quizzes and assignments.
We will add your Illinois email to these platforms.
Lecture videos will also be available on Mediaspace
Required Readings
Our class is loosely based on the Jan 7, 2023 draft of the 3rd Edition of Jurafsky and Martin's Speech and Language Processing.
Almost all required readings will be taken from this book. You can also get a single PDF of the Jan 7, 2023 draft.
Assessment
Instead of one midterm and one final exam, we will have
twelve online quizzes and eight peer-reviewed assignments throughout the semester. We will also have four programming
assignments (homeworks). You will have two weeks to complete each quiz and peer-graded assignment, and three weeks for each programming assignment.
Specific dates and deadlines for these can be found on our main page.
Additionally, students taking the class for four
credits are expected to complete a literature review by the end of the semester. We will provide a number of suggestions for topics.
For students taking the class for three hours
credit, grades are composed of the following two components:
- 25.0% Quizzes
- 25.0% Peer-Graded Assignments
- 50.0% Homework Assignments
- 18.75% Quizzes
- 18.75% Peer-Graded Assignments
- 37.5% Homework assignments
- 25.0% Literature Review
Please read our Academic Integrity Policy. In particular, you are encouraged to discuss any assignments with your peers, but you must write and submit your own solutions (this includes any code that is not explicitly provided with the assignments). If you are taking the course for 4 hours credit, your literature survey must also be your own work. In particular, the report must be written in your own words. You must properly cite all sources that have been consulted, including papers, text books, websites and existing software. You are not allowed to use tools like ChatGPT for any assignments in this class, except for the purpose of generating output that an assignment requires you to analyze.
Late Policy: We are unable to accept late submissions for the assignments unless you have contacted Prof. Hockenmaier in advance and you have been given an extension (which we will only grant in exceptional cases, e.g. for medical reasons).