Course Syllabus

Welcome to the Fall 2022 Computational Cognitive Science Class!

1 Instructor information and how to contact us

We're here for you all this semester -- so that we can reach everyone most effectively, check this to make sure your question gets to the right place:

1. Is it on this syllabus? Especially for logistical questions (e.g. will live sessions be recorded?), check to see if it's on this syllabus, which we are updating regularly to answer common questions.

2. Is it on / can it go on Piazza? We're strongly encouraging everyone to use our course Piazza (see the 'Piazza' tab), as much as possible for any logistical, problem set / project related, or general question that you think anyone else in the class might be interested in. We'll be checking this daily, and it's the best way to transmit knowledge and cache old answers. :) 

3. Can I email the TA mailing list? Please email the course staff mailing list if you have a personal question that isn't specific to a particular instructor -- this goes to all of us, and better enables any one of us to reply to you.

Instructor: Josh Tenenbaum (jbt@mit.edu)

TAs: Sam Tenka, Meagan Jens, Christian Belser, Joao Loula, Thomas Clark.

Staff mailing list:  9.66-staff@mit.edu

Piazza: We've switched over to Piazza for general questions! Using tags, asking questions at the highest level of generality, and upvoting questions you share is an even faster way to reach us (and everyone should feel free to answer each others' questions.) 

TA Office Hours:

Sam: Tuesdays at 4pm-5pm in the atrium (3rd floor open area in building 46; side of the open area farther from stata)

Sam: Thursday at 6pm-7pm in the atrium (3rd floor open area in building 46; side of the open area farther from stata)

Thomas: Mondays 4pm and Wednesdays 1pm in 46-4107. Please sign up for a slot on Doodle: https://doodle.com/bp/thomasclark1/966-office-hours-signup-thomas.

Christian: Mondays 1pm, 46-4199. If I'm not there check my Zoom room: https://mit.zoom.us/j/97628677157  

2 Course Organization

The class this year has the following components:

  • Lectures from 1pm to 2:30pm ET on Tuesdays and Thursdays at the Singleton Auditorium (46-3002).
  • Recitations with the TAs will take place on Thursdays and Fridays at 4pm: 46-3189

All the course materials for each week -- readings, assignments, lecture slides -- are posted under Modules for each week of the class.

3 Course Description

An introduction to computational theories of human cognition, and the computational frameworks that could support human-like artificial intelligence (AI).  Our central questions are: What is the form and content of people's knowledge of the world across different domains, and what are the principles that guide people in learning new knowledge and reasoning to reach decisions based on sparse, noisy data?  We survey recent approaches to cognitive science and AI built on these principles:

* World knowledge can be described using probabilistic generative models; perceiving, learning, reasoning and other cognitive processes can be understood as Bayesian inferences over these generative models.

* To capture the flexibility and productivity of human cognition, generative models can be defined over richly structured symbolic systems such as graphs, grammars, predicate logics, and most generally probabilistic programs.

* Inference in hierarchical models can explain how knowledge at multiple levels of abstraction is acquired.

* Learning with adaptive data structures allows models to grow in complexity or change form in response to the observed data.

* Approximate inference schemes based on sampling (Monte Carlo) and deep neural networks allow rich models to scale up efficiently, and may also explain some of the algorithmic and neural underpinnings of human thought.

We will introduce a range of modeling tools, including core methods from contemporary AI and Bayesian machine learning, as well as new approaches based on probabilistic programming languages.  We will show how these methods can be applied to many aspects of cognition, including perception, concept learning and categorization, language understanding and acquisition, common-sense reasoning, decision-making and planning, theory of mind and social cognition.  Lectures will focus on the intuitions behind these models and their applications to cognitive phenomena, rather than detailed mathematics.  Recitations will fill in mathematical background and give hands-on modeling guidance in several probabilistic programming environments, including WebPPL and Gen.

4 Prequisites

(1) Basic probability and statistical inference as you would acquire in 9.014, 9.40, 18.05, 18.600, 6.008, 6.036, 6.041, or 6.042, or an equivalent class.  If you have not taken one of these classes, please talk to the instructor after the first day.  (2) Previous experience with programming, especially in Matlab, Python, Scheme or Javascript, which form the basis of the probabilistic programming environments we use.   Also helpful would be previous exposure to core problems and methods in artificial intelligence, machine learning, or cognitive science.  

5 Requirements and Grading (to be updated)

Participation: Attendance at lectures is required. Recitations are optional. Students must attend at least 80% of lectures, and not miss more than 2 in a row. We will be monitoring attendance via exit tickets that you will complete during each lecture. Students failing to meet the attendance requirement will be penalized by one full letter grade (for example, the grade will go from an A- to a B-). The only exception to this attendance requirement is by specific exemption from the S^3 Deans or DAS (Disability and Access Services).

Problem Sets [60%]:  There will be 4 problem sets.

  • Problem Set 1: Released September 20th, Due October 4th.
  • Problem Set 2: Released October 14th, Due October 24th.
  • Problem Set 3: Released October 31th, Due November 14th.
  • Problem Set 4: Dates TBD

Final Project [40%]: this is a project-based course. You will submit a project proposal and a paper-style write up for a final course project. Projects can be done individually or in groups of 2-3, but proportionately more work is expected for a group project.

Late Policy: A late penalty of 5% per day will be applied to late problem sets, up to 1 week past the deadline. We can't accept work later than 1 week after the deadline except in extraordinary circumstances because doing so would hinder our ability to discuss solutions with students in a timely manner.

Collaboration Policy: Students are allowed to talk and work with others on problem sets, but the work they write up and hand in must be their own.  Students should also indicate the names of anyone that they worked with or collaborated with. 

The Institute obliges us to remind you of its policy on integrity. It can be found at the website http://web.mit.edu/academicintegrity/. Please read it if you have not already done so.

Consistent with MIT policy, there is no curve or pre-set grade distribution for this class.

Please let us know on an individual basis if you have a learning disability or other special concern you would like us to be aware of.

6 Student Support Resources

This is a semester where things gradually try to go back to normal. However, it’s still not completely the same as before. Don't hesitate to reach out to any of us if you need support for any reason.

Student Support Services (S^3) is a resource for students to help manage academic and personal issues that may affect learning. If you are an undergraduate and need to submit late work due to extenuating circumstances (extended illness, family emergency,  etc.), please speak with S^3 and have them contact the TAs to make arrangements.