Time: Term 2 (Jan-Apr 2022), MW 9:00-10:30
Location: DMP 101 (virtual until Jan 24, Zoom link will be posted on Canvas)
Instructor: Vered Shwartz Office hours: By appointment, contact through Canvas
TA: Sahithya Ravi Office hours: By appointment

Course Description

Natural language processing (NLP) is a growing field within artificial intelligence. The fundamental goal of NLP is to program computers capable of human-level understanding of natural language. Common NLP applications include personal assistants and chatbots, automatic translation, question answering, sentiment analysis and summarization. Among the main challenges of NLP research is that human language is often ambiguous and underspecified. A person processing language relies heavily on their commonsense knowledge and reasoning abilities to resolve these ambiguities and complete missing information. Machine learning based NLP models, on the other hand, lack this commonsense and often make absurd mistakes. In this course, we will discuss the various topics, including the following:

  • What is commonsense and why do we need it in NLP? How does it relate to earlier attempts in AI to teach machines commonsense?
  • How do we measure commonsense reasoning abilities? How good are our existing models?
  • How can commonsense be acquired? What are the many challenges in acquiring commonsense knowledge?
  • How can we incorporate such knowledge into NLP models?
  • Can we teach computers to reason?
The course assumes you have an understanding of machine learning and deep learning, and basic familiarity with NLP. If you haven't taken a previous NLP course, I will refer you to online tutorials. The course will involve attending class, reading, presenting, and discussing papers, two homework assignments, and a research project on an idea you are passionate about in this space.

Tentative Schedule

Date Topic Links
10/1 What is commonsense?
12/1 Commonsense benchmarks
17/1 Acquiring commonsense knowledge
19/1 Commonsense knowledge captured by text representations
24/1 Methods
26/1 Incorporating commonsense into representations
31/1 Reasoning
2/2 Temporal commonsense
7/2 Multiword Expressions
9/2 Social commonsense and ethics (guest lecture by Maarten Sap)
14/2 Project proposals
21/2 Midterm break, no class
28/2 Narrative Understanding (guest lecture by Faeze Brahman)
2/3 Multimodal commonsense
7/3 Paper presentations
23/3 Explainability (guest lecture by Ana Marasović)
28/3 Project final presentations


Project proposal, report, and final presentation (in groups) 40%
Assignments 2 assignments, 20% each (individually) 40%
Paper Presentations presenting one research paper (individually) 20%


The project will be done in groups of 2-3. You may choose any research problem related to the course topics. You will be required to:
  1. Submit a written project proposal, describing the research problem, existing literature, the data and methods you will use, how you plan to evaluate your method (if applicable), and a proposed timeline.
  2. Present the project proposal to the class.
  3. Submit a written final project report.
  4. Present the final project presentation to the class.
Details on the different tasks will be published on Canvas.


The course will have two assignments. They will be published on Canvas.

Paper Presentations

Each student will choose one research paper about commonsense reasoning in NLP from this list (you are welcome to suggest other related papers that have been published in NLP or ML conferences and workshops, but please verify with me). You will be required to read the paper you selected thoroughly, understand the main contribution of the paper and find strengths and weaknesses. You will then prepare a 15-minute presentation accompanied by slides and present the paper in class (the duration of the presentation might change depending on enrollment). If you re-use the original slides from the paper's authors, indicate this on the slides. I will let you know when you need to choose a paper and a timeslot for presentation.