Machine Learning is about developing systems that automatically improve their performance through experience. It has found massive applications in real products. Examples include systems that recommend online videos, automatic translating languages, and autonomous driving vehicles. This course covers the theory, models, and practical algorithms for machine learning from a variety of perspectives. Topics include learning problems (supervised learning, unsupervised learning, reinforcement learning, online learning); modeling tools (graphical models, neural networks, kernel methods, tree methods); as well as theoretical foundations (learning theory, optimization). We focus on both the principles, analytical skills and implementation practice. This course is suitable for graduate students who want to pursue a career in AI/ML, conduct research in this area, or apply ML methods in their own projects. No prior knowledge of machine learning is assumed.
Prerequisite: Linear algebra (MATH 3B), Vector Calculus (6A), Probability and Statistics (PSTAT 120A, 120B), algorithms (CS 130A & 130B), and familiarity with Python programming.