Organization of synaptic connectivity as the basis of neural computation and learning. Perceptrons, convolutional nets, and recurrent nets. Backpropagation and Hebbian learning. Engineering applications including computer vision and natural language processing.


  • Two 80 minute lectures and one precept per week.
  • Grades (A-F) will be based on class participation (5%), problem sets (25%), midterm (30%), and final exam (40%).
  • Participation includes speaking up in lecture and precept.
  • Participation also includes activity on Piazza—ideally asking good questions, giving good answers, and upvoting others’ contributions.


  • Familiarity with linear algebra.
  • Basics of optimization and probability theory.
  • Knowledge of Python (or willingness to learn).


Prof. Sebastian Seung will lecture twice a week.

Office Hours

Online discussions

You can ask and answer questions on the Piazza site. Piazza activity counts as class participation and can enhance your grade.

Homework assignments

Homework assignments will be due on Thursdays, and should be submitted at the Blackboard site. The programming component should be submitted as a Jupyter notebook. Please submit (i) the Python notebook file, and (ii) a HTML export of the notebook clearly showing all answers and plots/visualizations.