Machine Learning
Title  Machine Learning (53111) 

Quarter  Spring 2020 
Instructor  Amitabh Chaudhary (amitabh@cs.uchicago.edu) 
Website  
Syllabus  This course is open to MPCS students only. This course introduces the fundamental concepts and techniques in data mining, machine learning, and statistical modeling, and the practical knowhow to apply them to realworld data through Pythonbased software. The course examines in detail topics in both supervised and unsupervised learning. These include linear and logistic regression and regularization; classification using decision trees, nearest neighbors, naive Bayes, boosting, random trees, and artificial/convolutional neural networks; clustering using kmeans and expectationmaximization; and dimensionality reduction through PCA and SVD. Students use Python and Python libraries such as NumPy, SciPy, matplotlib, and pandas for for implementing algorithms and analyzing data. 
Prerequisites (Courses)  1. B+ or above in MPCS 51042 Python Programming (or in core programming requirement with prior knowledge of Python)

Prerequisites (Other)  Univariate Calculus and Basic Multivariate Calculus (double integrals, partial derivatives, integrationbyparts, Taylor series). This course assumes both mathematical maturity and programming fluency. In particular, students are expected to code complicated machine learning algorithms from scratch (without a template) and debug them on their own. Not approved for CAPP or MACS students. 
Satisfies  Elective

Time  Wednesday 5:308:30PM 
Location  Ryerson 251 