CS 6120/4120: Natural Language Processing

Time and Location: Mondays from 6:00 pm - 9:00 pm in Shillman Hall 415

Instructor: Lu Wang, Office Rm 911, 177 Huntington Ave.

Staff and Office Hours:

Discussion Forum: Piazza, sign up at piazza.com/northeastern/fa2018/cs6120

Important Announcement

[9/5/2018] We will have a quiz with 20 simple True or False questions (relevant to probability, statistics, and linear algebra) in the first lecture (9/10/2018). This quiz will be graded, but will not be counted in your final score if you're enrolled in CS6120/CS4120. The purpose of this quiz is to indicate the expected background of students. 80% of the questions should be easy to answer. If you find yourself struggling with this quiz, it's possible that you need to catch up on the background or it may be preferable to take one or two preliminary courses. For students previously do not take any algorithm course (CS 5800 or CS 7800, see Prerequisites), an 80% or above is required to enroll in this course.

Course Description (and Syllabus)

This course aims to introduce fundamental tasks in natural language processing, and its recent advances based on machine learning algorithms (e.g., neural networks) and applications for interdisciplinary subjects (e.g., computational social science). The course materials are mostly delivered as lectures, and accompanied with reading materials. The students will be evaluated based on assignments, a research-driven course project, and an open-book final exam.

Please find the syllabus here: [Link]

Textbooks and Reference


This course is designed for graduate students and senior undergraduate students majoring in computer science, linguistics, and other related areas. Students who take this course are expected to be able to write code in some programming languages (e.g., Python, Java, or C/C++) proficiently, and finish courses in algorithms (CS 5800 or CS 7800), multivariable calculus, probability, and statistics. Linear algebra is optional, but highly recommended.


Blackboard is used for electronic submission. Assignment or report turned in late will be charged 20 points (out of 100 points) off for each late day (i.e. 24 hours). Each student has a budget of 5 days throughout the semester before a late penalty is applied. You may want to use it wisely, e.g. save for emergencies. Each 24 hours or part thereof that a submission is late uses up one full late day. Late days are not applicable to final presentation. Each group member is charged with the same number of late days, if any, for their submission.

Grades will be determined based on two assignments, eight in-class tests, one course project, one open-book exam, and participation:


September 10

September 17 (quiz 1)

September 24 (quiz 2)

October 1 (quiz 3)

October 8 (NO CLASS, Columbus Day)

October 15 (quiz 4)

October 22 (quiz 5)

October 29 (quiz 6)

November 5 (quiz 7)

November 12 (NO CLASS, Veterans Day)

November 19 (quiz 8)

November 26

December 3

Academic Integrity

This course follows the Northeastern University Academic Integrity Policy. All students in this course are expected to abide by the Academic Integrity Policy. Any work submitted by a student in this course for academic credit should be the student's own work. Collaborations are allowed only if explicitly permitted. Violations of the rules (e.g. cheating, fabrication, plagiarism) will be reported.