Course Description You will learn how to implement and apply machine learning algorithms. This course emphasizes practical skills, and focuses on teaching you a wide range of algorithms and giving you the skills to make these algorithms work best. You will learn about commonly used learning techniques including supervised learning algorithms (logistic regression, linear regression, neural networks/deep learning, decision trees), unsupervised learning algorithms like k-means, reinforcement learning algorithms like Q-learning, as well as specific applications such as anomaly detection and building recommender systems. Prerequisites: Programming at the level of CS106B or 106X, probability theory at the level CS109 or STATS116 and basic linear algebra at the level of MATH51. 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 to class for lectures that go deeper into some of the math and discussion sections about applying the algorithms. This class will culminate in an open-ended final project, which the teaching team will mentor you on. Enrollment is limited.
Acknowledegment This webpage is using the code from Shuqui Qu and Ziang Xie who have built the CS229 webpage, special thanks to them.