CS 189/289A: Introduction to Machine Learning

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. EECS 189/289A introduces the theoretical foundations, algorithms, and applications of machine learning, combining mathematical rigor with practical experience. The course explores the full machine-learning pipeline, from problem formulation and working with data to designing and optimizing models. Topics include probability and optimization, clustering and latent-variable models, dimensionality reduction, regression and classification, neural networks, and modern deep-learning architectures.
Fall 2026 Frequently Asked Questions
Offerings
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
CS 189/289A 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.