CS 229
Machine Learning
Handout #1: Course Information

Meeting Times and Locations

Lectures: MW 1:30PM-2:50PM.   420-040 (Jordan Hall basement)

Discussion sections: Fridays, 1:30-2:50pm   Location: 420-040 (optional attendance)

Teaching Staff

Professor: John Duchi
Office: Sequoia 126

Course Coordinator: Swati Dube
Office: Gates 127

Teaching Assistants:
Albert Haque (Head TA)
Anshul Samar
Bryan McCann
Claire Donnat
Evan Rosenman
Huafei Wang
Ivaylo Bahtchevanov
Kelvin Gu
Marco Alban
Matteo Sesia
Michael Zhu
Rina Friedberg
Stephanie Tsai
Vehbi Deger

Contact Information

If you and have a homework, technical or general administrative question about CS229, for you to get the fastest possible response, please post it on our Piazza forum. To contact the CS229 teaching staff directly, you can also email us at For telephone numbers and information about office hours (where we can help you in person), see Office Hours and Contact Information

Course Description

This course provides a broad introduction to machine learning and statistical pattern recognition. Topics include: supervised learning (generative/discriminative learning, parametric/non-parametric learning, neural networks, support vector machines); unsupervised learning (clustering, dimensionality reduction, kernel methods); learning theory (bias/variance tradeoffs; VC theory; large margins); reinforcement learning and adaptive control. The course will also discuss recent applications of machine learning, such as to robotic control, data mining, autonomous navigation, bioinformatics, speech recognition, and text and web data processing.


Students are expected to have the following background:

Course Materials

There is no required text for this course. Notes will be posted periodically on the course web site. The following books are recommended as optional reading:

   Richard Duda, Peter Hart and David Stork, Pattern Classification, 2nd ed. John Wiley & Sons, 2001.
   Tom Mitchell, Machine Learning. McGraw-Hill, 1997.
   Richard Sutton and Andrew Barto, Reinforcement Learning: An introduction. MIT Press, 1998
   Trevor Hastie, Robert Tibshirani and Jerome Friedman, The Elements of Statistical Learning. Springer, 2009

Course handouts and other materials can be downloaded from

Online Resources

Homeworks and Grading

There will be four written homeworks, one midterm, and either a major open-ended term project or a 24 hour take-home final exam (the term project option will require instructor approval). The homeworks will contain written questions and questions that require some Matlab programming. In the term project, you will investigate some interesting aspect of machine learning or apply machine learning to a problem that interests you.

We try very hard to make questions unambiguous, but some ambiguities may remain. Ask if confused or state your assumptions explicitly. Reasonable assumptions will be accepted in case of ambiguous questions.

Honor code: We strongly encourage students to form study groups. Students may discuss and work on homework problems in groups. However, each student must write down the solutions independently, and without referring to written notes from the joint session. In other words, each student must understand the solution well enough in order to reconstruct it by him/herself. In addition, each student should write on the problem set the set of people with whom s/he collaborated.

Further, since we occasionally reuse problem set questions from previous years, we expect students not to copy, refer to, or look at the solutions in preparing their answers. It is an honor code violation to intentionally refer to a previous year's solutions. This applies both to the official solutions and to solutions that you or someone else may have written up in a previous year.

Late assignments: Each student will have a total of seven free late (calendar) days to use for homeworks, project proposals and project milestones. Once these late days are exhausted, any assignments turned in late will be penalized 20% per late day. However, no assignment will be accepted more than three days after its due date, and late days cannot be used for the final project poster or writeup. Each 24 hours or part thereof that a homework is late uses up one full late day.

Assignment submission: We will be using Gradescope to handle assignment submissions. Hard copy and email submissions will not be accepted.

The term project may be done in teams of up to three persons. The midterm is open-book/open-notes, and will cover the material of the first part of the course. It will take place on Monday, May 9, 2016 from 6-9 pm (location TBD).


To review material from the prerequisites or to supplement the lecture material, there will occasionally be extra discussion sections held on Friday. An announcement will be made whenever one of these sections is held. Attendance at these sections is optional.

Communication with the Teaching Staff

If you have a question that is not confidential or personal, encourage you to post it on our forum on Piazza. To contact the teaching staff directly, we strongly encourage you to come to office hours. If that is not possible, you can also email us at the course staff list, (consisting of the TAs and the professor). By having questions sent to all of us, you will get answers much more quickly. Of course, confidential or personal questions can still be sent directly to Professor Duchi or the TAs.

For grading questions, please talk to us after class or during office hours. Regrade policies will be updated soon. Stay tuned.

Answers to commonly asked questions and clarifications to the homeworks will be posted on the FAQ.

Comments to

Home Page