Introduction to Machine Learning
(Spring 2023)

👋 Hey! Thanks for checking out 6.390! As we all are planning for Spring23, here are some quick info.

1) Course Overview§

6.390 introduces principles, algorithms, and applications of machine learning from the point of view of modeling and prediction. Topics include e.g. formulation of learning problems; representation, over-fitting, generalization; classification, regression, reinforcement learning, sequence learning, clustering; classical and neural-network methods.

2) Prerequisites§

Concretely, things we expect you to know (we use these constantly, but don’t teach them explicitly):


  • Intermediate Python, including the notion of classes.
  • Exposure to algorithms – ability to understand & discuss pseudo-code, and implement in Python.

6.1010 [6.009] or 6.1210 [6.006] can serve as this prerequisite.

Linear Algebra

  • Fundamental matrix manipulations, e.g., transpose, multiplication, and inverse.
  • Points and planes in high-dimensional space.
  • Basic matrix calculus, e.g., gradients.

18.06, 18.C06, 18.03, or 18.700 can serve as this prerequisite.

3) Useful Background§

Things it helps to have prior exposure to, but we don’t expect (we use these in 6.390, but will discuss as we go):
  • numpy (Python package for matrix/linear algebra).
  • pytorch (Python package for neural networks).
  • Basic discrete probability, e.g., random variables, conditioning, and expectation.

4) Sections and Staff§

We will be meeting on Mondays and Wednesdays. We have seven sections and you can meet our staff here.

    Section Time Room Instructor
    1 Mon & Wed, 9:30am-11am 34-501 Shen Shen
    2 Mon & Wed, 9:30am-11am 32-044 Vince Monardo
    3 Mon & Wed, 11am-12:30pm 34-501 Tomas Lozano-Perez
    4 Mon & Wed, 11am-12:30pm 32-044 Marzyeh Ghassemi
    5 Mon & Wed, 1pm-2:30pm 34-501 Wojciech Matusik
    6 Mon & Wed, 1pm-2:30pm 32-044 Ashia Wilson
    7 Mon & Wed, 2:30pm-4pm 34-501 Shen Shen

If you pre-registered for 6.390, the Registrar will likely schedule you into a particular section during the registration week. Towards the end of registration week, we will provide info here on where to see your section assignment and what-to-do if you don't have a section.

Our first class meeting will be on Monday, Feb. 6. If at all possible, please attend the section you are scheduled into by the Registrar for this first session. Subsequently, we'll have a mechanism through which you can make changes in your scheduled section. Self-switching will be first-come-first-served and subject to section capacity constraints; the process will be detailed here.

5) Course Number Change§

Since fall 2022, all MIT EECS (Course 6) subjects have been renumbered (rationale and details can be found here). This subject used to be called 6.036; moving forward, we will refer to it internally as 6.390 ("six three-nine-oh"). But for registration purposes, please register for 6.3900 (note the extra zero).

6) Cross-registration§

  • This site is our course site and it uses MIT Kerberos for authentication. Cross-registered students will receive MIT Kerberos once their registration goes through; however, the process can take a while. We therefore strongly encourage you to cross register early if possible to avoid delayed access to course materials.

  • We follow MIT's calendar, and don't have additional extensions or accommodations based on home university calendar. Especially important will be for you to plan ahead for our two in-person exams. We'll have a midterm exam during the week of March 20 to March 24, i.e., the week before MIT's Spring Break. We'll also have a final exam during MIT's final exam week, Friday May 19 through Wednesday May 24. Exact time/room for the two exams are TBC.

  • If you're not familiar with MIT campus, you might also find the whereis site helpful.

7) Listeners§

Due to capacity and other constraints, we will not accept Listener registrants in 6.390 this semester.

8) Other Questions?§

Feel free to drop us an email at We'd love to hear from you!