CS 189/289A: Introduction to Machine Learning

Fall 2025 Frequently Asked Questions

Course Description

Machine learning is at the core of modern artificial intelligence, transforming how we approach problems in vision, language, robotics, recommendation systems, and countless other areas. This course introduces the theoretical foundations, algorithms, and applications of machine learning, combining mathematical rigor with practical experience.

Throughout the semester, we will explore the full pipeline of machine learning from problem formulation and working with data, to designing models and optimizing them. We will begin with a discussion of what machine learning is, how problems are framed and categorized, and the taxonomy of common learning paradigms. We will review the mathematical background necessary for the course, including probability and optimization concepts.

We will then study unsupervised learning methods, including clustering with k-means and Expectation–Maximization, and dimensionality reduction with Principal Components Analysis (PCA). We will discuss regression in detail, starting with objective functions and then moving to linear regression and its Maximum Likelihood Estimation (MLE) interpretation, and then exploring how regression connects to classification.

The deep learning portion of the course will begin with neural network fundamentals, including building non-linear models, choosing architectures and activation functions, and defining loss functions. We will cover PyTorch implementations, backpropagation, batch normalization, initialization strategies, and regularization. We will then survey other deep architectures such as Convolutional Neural Networks (CNNs), Recurrent Neural Networks (RNNs), and transformers — along with generative models such as Large Language Models (LLMs), autoencoders, and Generative Adversarial Networks (GANs).

Finally, the course will include guest lectures from leading researchers, discussions of emerging topics in the field, and opportunities to connect theoretical concepts to cutting-edge research and applications.

Offerings

  1. Fall 2025
  2. Spring 2025
  3. Spring 2024
  4. Spring 2023
  5. Spring 2022
  6. Spring 2021
  7. Spring 2020
  8. Fall 2019
  9. Spring 2019
  10. Spring 2018
  11. Fall 2017
  12. Spring 2017
  13. Spring 2016

Goals

  • Provide a rigorous foundation in the mathematics, algorithms, and concepts of machine learning.
  • Prepare students for advanced coursework and research in artificial intelligence, deep learning, computer vision, and natural language processing.
  • Enable students to implement machine learning algorithms and apply them to real-world problems.

Prerequisites

This course assumes strong preparation in mathematics and programming. The required prerequisites are:

  • Multivariable Calculus: MATH 53
  • Linear Algebra: MATH 54 or equivalent
  • Probability and Discrete Mathematics: COMPSCI 70 or equivalent

You should be comfortable with vector calculus (including gradients and the multivariate chain rule), matrix operations, probability theory (including conditional probability and Bayes’ rule), and writing/debugging complex programs in Python. If you lack preparation in these areas, you are likely to struggle.