Course Announcements
Jan 10, 2021 | Welcome to CS205L! Please sign up on Piazza for more course info and announcements. |
Summary
A survey of numerical approaches to the continuous mathematics used throughout computer science with an emphasis on machine and deep learning. Although motivated from the standpoint of machine learning, the course will focus on the underlying mathematical methods including computational linear algebra and optimization, as well as special topics such as automatic differentiation via backward propagation, momentum methods from ordinary differential equations, CNNs, RNNs, etc. Written homework assignments and (straightforward) quizzes focus on various concepts; additionally, students can opt in to a series of programming assignments geared towards neural network creation, training, and inference.
This course replaces 205A and satisfies all similar requirements.
A Motivational Thought
"Everyone is sure of this [that errors are normally distributed], Mr. Lippman told me one day, since the experimentalists believe that it is a mathematical theorem, and the mathematicians that it is an experimentally determined fact."--Henri Poincaré
General Info
- Lectures: Tuesdays and Thursdays, 12:30pm to 1:50pm
- Textbooks: The required textbook for this course is Scientific Computing (Revised 2nd Edition).
- Prerequisites: Math 51; Math 104 or 113 or equivalent or comfort with the associated material.
- This course will be recorded: Livestreams will be available on Canvas (see Piazza for more info), and the recording will be made available within a few hours after class.
Course Policy
- 50% Problem Sets:
- Released every Thursday night on Piazza, the written problem sets will have 6 questions each, and will be due a week from release. Questions will have 1-3 star(s) difficulty level assigned to them; a sum of 7 stars is required for each homework.
- See the assignments section for more information.
- 50% Weekly Quiz:
- Every Monday afternoon (except for the first week), TAs will give an oral quiz on the contents of the previous week. A list of 3-5 questions will be released each Thursday along with the written problem sets. The following Monday, log on to an interactive session with TAs on Nooks, and a TA will pick 1 question from the list to ask you.
- See the assignments section for more information.
- Optional Programming Assignments:
- Starting the first week, you may optionally choose to attempt the Programming Assignment. If your Programming Assignment grade for that week is higher than your Problem Set grade, then 1/3 of your Problem Set grade is replaced with your Programming Assignment grade. Similarly, if your Programming Assignment grade for that week is higher than your Weekly Quiz grade, then 1/3 of your Weekly Quiz grade is replaced with your Programming Assignment grade. (That is, attempting these can only raise, not lower, your grade.)
Note: In subsequent weeks, after the first week, one may only opt in to the Programming Assignments if they completed all prior Programming Assignments.
- Starting the first week, you may optionally choose to attempt the Programming Assignment. If your Programming Assignment grade for that week is higher than your Problem Set grade, then 1/3 of your Problem Set grade is replaced with your Programming Assignment grade. Similarly, if your Programming Assignment grade for that week is higher than your Weekly Quiz grade, then 1/3 of your Weekly Quiz grade is replaced with your Programming Assignment grade. (That is, attempting these can only raise, not lower, your grade.)