## CS 230: Deep Learning

Deep Learning is one of the most highly sought after skills in AI. We will help you become good at Deep Learning. In this course, you will learn the foundations of Deep Learning, understand how to build neural networks, and learn how to lead successful machine learning projects. You will learn about Convolutional networks, RNNs, LSTM, Adam, Dropout, BatchNorm, Xavier/He initialization, and more. You will work on case studies from healthcare, autonomous driving, sign language reading, music generation, and natural language processing. You will master not only the theory, but also see how it is applied in industry. You will practice all these ideas in Python and in TensorFlow, which we will teach. AI is transforming multiple industries. After this course, you will likely find creative ways to apply it to your work. This class is taught in the flipped-classroom format. You will watch videos and complete in-depth programming assignments and online quizzes at home, then come in to class for advanced discussions and work on projects. This class will culminate in an open-ended final project, which the teaching team will help you on. Prerequisites: Familiarity with programming in Python and Linear Algebra (matrix / vector multiplications).
CS 229 may be taken concurrently.

Terms: Aut, Win, Spr
| Units: 3-4
| UG Reqs: WAY-AQR, WAY-FR

Instructors:
Katanforoosh, K. (PI)
;
Ng, A. (PI)
;
Braatz, J. (TA)
...
more instructors for CS 230 »

Instructors:
Katanforoosh, K. (PI)
;
Ng, A. (PI)
;
Braatz, J. (TA)
;
Chuang, J. (TA)
;
Ciresi, S. (TA)
;
Desai, S. (TA)
;
Kosaraju, V. (TA)
;
Li, J. (TA)
;
Mao, H. (TA)
;
Mehr, L. (TA)
;
Mousavi, S. (TA)
;
Pal, A. (TA)
;
Rajpurkar, P. (TA)
;
Ruan, S. (TA)
;
Smith, C. (TA)
;
Waites, C. (TA)
;
Yang, J. (TA)

## CS 236: Deep Generative Models

Generative models are widely used in many subfields of AI and Machine Learning. Recent advances in parameterizing these models using neural networks, combined with progress in stochastic optimization methods, have enabled scalable modeling of complex, high-dimensional data including images, text, and speech. In this course, we will study the probabilistic foundations and learning algorithms for deep generative models, including Variational Autoencoders (VAE), Generative Adversarial Networks (GAN), and flow models. The course will also discuss application areas that have benefitted from deep generative models, including computer vision, speech and natural language processing, and reinforcement learning. Prerequisites: Basic knowledge about machine learning from at least one of
CS 221, 228, 229 or 230. Students will work with computational and mathematical models and should have a basic knowledge of probabilities and calculus. Proficiency in some programming language, preferably Python, required.

Terms: Aut
| Units: 3

Instructors:
Ermon, S. (PI)
;
Grover, A. (PI)
;
Autef, A. (TA)
;
Cao, K. (TA)
;
Choi, K. (TA)
;
Dhareshwar, P. (TA)
;
Liu, X. (TA)
;
Sabran, A. (TA)
;
Shu, R. (TA)
;
Somasundaram, S. (TA)
;
Song, Y. (TA)
;
Zakka, K. (TA)

## CS 325B: Data for Sustainable Development (EARTHSYS 162, EARTHSYS 262)

The sustainable development goals (SDGs) encompass many important aspects of human and ecosystem well-being that are traditionally difficult to measure. This project-based course will focus on ways to use inexpensive, unconventional data streams to measure outcomes relevant to SDGs, including poverty, hunger, health, governance, and economic activity. Students will apply machine learning techniques to various projects outlined at the beginning of the quarter. The main learning goals are to gain experience conducting and communicating original research. Prior knowledge of machine learning techniques, such as from
CS 221,
CS 229,
CS 231N,
STATS 202, or
STATS 216 is required. Open to both undergraduate and graduate students. Enrollment limited to 24. Students must apply for the class by filling out the form at
https://goo.gl/forms/9LSZF7lPkHadix5D3. A permission code will be given to admitted students to register for the class.

Terms: Aut
| Units: 3-5
| Repeatable for credit

## EARTHSYS 162: Data for Sustainable Development (CS 325B, EARTHSYS 262)

The sustainable development goals (SDGs) encompass many important aspects of human and ecosystem well-being that are traditionally difficult to measure. This project-based course will focus on ways to use inexpensive, unconventional data streams to measure outcomes relevant to SDGs, including poverty, hunger, health, governance, and economic activity. Students will apply machine learning techniques to various projects outlined at the beginning of the quarter. The main learning goals are to gain experience conducting and communicating original research. Prior knowledge of machine learning techniques, such as from
CS 221,
CS 229,
CS 231N,
STATS 202, or
STATS 216 is required. Open to both undergraduate and graduate students. Enrollment limited to 24. Students must apply for the class by filling out the form at
https://goo.gl/forms/9LSZF7lPkHadix5D3. A permission code will be given to admitted students to register for the class.

Terms: Aut
| Units: 3-5
| Repeatable for credit

## EARTHSYS 262: Data for Sustainable Development (CS 325B, EARTHSYS 162)

The sustainable development goals (SDGs) encompass many important aspects of human and ecosystem well-being that are traditionally difficult to measure. This project-based course will focus on ways to use inexpensive, unconventional data streams to measure outcomes relevant to SDGs, including poverty, hunger, health, governance, and economic activity. Students will apply machine learning techniques to various projects outlined at the beginning of the quarter. The main learning goals are to gain experience conducting and communicating original research. Prior knowledge of machine learning techniques, such as from
CS 221,
CS 229,
CS 231N,
STATS 202, or
STATS 216 is required. Open to both undergraduate and graduate students. Enrollment limited to 24. Students must apply for the class by filling out the form at
https://goo.gl/forms/9LSZF7lPkHadix5D3. A permission code will be given to admitted students to register for the class.

Terms: Aut
| Units: 3-5
| Repeatable for credit

## MATH 51: Linear Algebra, Multivariable Calculus, and Modern Applications

This course provides unified coverage of linear algebra and multivariable differential calculus, and the free course e-text connects the material to many fields. Linear algebra in large dimensions underlies the scientific, data-driven, and computational tasks of the 21st century. The linear algebra portion includes orthogonality, linear independence, matrix algebra, and eigenvalues with applications such as least squares, linear regression, and Markov chains (relevant to population dynamics, molecular chemistry, and PageRank); the singular value decomposition (essential in image compression, topic modeling, and data-intensive work in many fields) is introduced in the final chapter of the e-text. The multivariable calculus portion includes unconstrained optimization via gradients and Hessians (used for energy minimization), constrained optimization (via Lagrange multipliers, crucial in economics), gradient descent and the multivariable Chain Rule (which underlie many machine learning al
more »

This course provides unified coverage of linear algebra and multivariable differential calculus, and the free course e-text connects the material to many fields. Linear algebra in large dimensions underlies the scientific, data-driven, and computational tasks of the 21st century. The linear algebra portion includes orthogonality, linear independence, matrix algebra, and eigenvalues with applications such as least squares, linear regression, and Markov chains (relevant to population dynamics, molecular chemistry, and PageRank); the singular value decomposition (essential in image compression, topic modeling, and data-intensive work in many fields) is introduced in the final chapter of the e-text. The multivariable calculus portion includes unconstrained optimization via gradients and Hessians (used for energy minimization), constrained optimization (via Lagrange multipliers, crucial in economics), gradient descent and the multivariable Chain Rule (which underlie many machine learning algorithms, such as backpropagation), and Newton's method (an ingredient in GPS and robotics). The course emphasizes computations alongside an intuitive understanding of key ideas. The widespread use of computers makes it important for users of math to understand concepts: novel users of quantitative tools in the future will be those who understand ideas and how they fit with examples and applications. This is the only course at Stanford whose syllabus includes nearly all the math background for
CS 229, which is why
CS 229 and
CS 230 specifically recommend it (or other courses resting on it). For frequently asked questions about the differences between
Math 51 and
CME 100, see the FAQ on the placement page on the Math Department website. Prerequisite:
Math 21,
Math 42, or the math placement diagnostic (offered through the Math Department website) in order to register for this course.

Terms: Aut, Win, Spr, Sum
| Units: 5
| UG Reqs: GER:DB-Math, WAY-FR

Instructors:
Cant, D. (PI)
;
Chen, D. (PI)
;
Chetard, B. (PI)
;
Dore, D. (PI)
;
Helfer, J. (PI)
;
Izzo, Z. (PI)
;
Kim, G. (PI)
;
Kraushar, N. (PI)
;
Larson, H. (PI)
;
Lucianovic, M. (PI)
;
Perlman, M. (PI)
;
Sloman, L. (PI)
;
Taylor, C. (PI)
;
Trettel, S. (PI)
;
Wang, G. (PI)
;
White, B. (PI)
;
Wieczorek, W. (PI)
;
Ying, L. (PI)
;
Zavyalov, B. (PI)
;
Angelo, R. (TA)
;
Arana Herrera, F. (TA)
;
Cant, D. (TA)
;
Guijarro Ordonez, J. (TA)
;
He, J. (TA)
;
Helfer, J. (TA)
;
Izzo, Z. (TA)
;
Libkind, S. (TA)
;
Mackey, W. (TA)
;
Nguyen, D. (TA)
;
Sloman, L. (TA)
;
Wang, G. (TA)
;
Zachos, E. (TA)
;
Zhang, S. (TA)

## STATS 229: Machine Learning (CS 229)

Topics: statistical pattern recognition, linear and non-linear regression, non-parametric methods, exponential family, GLMs, support vector machines, kernel methods, deep learning, model/feature selection, learning theory, ML advice, clustering, density estimation, EM, dimensionality reduction, ICA, PCA, reinforcement learning and adaptive control, Markov decision processes, approximate dynamic programming, and policy search. Prerequisites: knowledge of basic computer science principles and skills at a level sufficient to write a reasonably non-trivial computer program in Python/numpy, familiarity with probability theory to the equivalency of CS109 or
STATS116, and familiarity with multivariable calculus and linear algebra to the equivalency of
MATH51.

Terms: Aut, Spr, Sum
| Units: 3-4

Instructors:
Avati, A. (PI)
;
Charikar, M. (PI)
;
Ma, T. (PI)
;
Ng, A. (PI)
;
Re, C. (PI)
;
Arad Hudson, D. (TA)
;
Caron, P. (TA)
;
Chen, E. (TA)
;
Chen, Y. (TA)
;
Ding, T. (TA)
;
Jia, Z. (TA)
;
Jiang, Q. (TA)
;
Jin, Y. (TA)
;
Khani, F. (TA)
;
Khosla, K. (TA)
;
Ko, M. (TA)
;
Kurenkov, A. (TA)
;
Li, J. (TA)
;
Rajpurkar, P. (TA)
;
She, J. (TA)
;
Sheng, H. (TA)
;
Smit, A. (TA)
;
Steinberg, E. (TA)
;
Tlili, F. (TA)
;
Wang, G. (TA)
;
Wei, C. (TA)
;
Xiong, Z. (TA)
;
Yang, J. (TA)
;
Zhang, K. (TA)
;
Zhang, V. (TA)
;
Zhu, M. (TA)

Filter Results: