In this undergraduate-level class on machine learning, students will learn about the theoretical foundations of machine learning and how to apply machine learning to solve new problems. Machine learning is an exciting and fast-moving field of Computer Science with many recent consumer applications (e.g., Microsoft Kinect, Google Translate, Iphone's Siri, digital camera face detection, Netflix recommendations, Google news) and applications within the sciences and medicine (e.g., predicting protein-protein interactions, species modeling, detecting tumors, personalized medicine). In the first part of the course, we will cover supervised prediction algorithms including linear and logistic regression, support vector machines, and nearest-neighbor methods. In the second part of the course, we will cover clustering (e.g., K-means), dimensionality reduction (e.g., PCA), recommender systems, density estimation, Bayesian networks, and time-series modeling (e.g., hidden Markov models).
Grading: about 7 homework assignments, a midterm and final exam.
Pre-requisites: Students must either have taken Basic Algorithms (CSCI-UA.0310) or be taking it concurrently. Linear algebra (MATH-UA 140) is strongly recommended as a pre-requisite, and knowledge of multivariable calculus will be helpful. Students should also have good programming skills.
Textbooks: No textbook is required for this class.
Readings: Excited about the class and want to get an early start on the reading? The assigned reading for the first week is the (freely available) first chapter Introduction to Machine Learning from Kevin Murphy's book.