The goal of this course is to understand the foundations of machine learning, in particular deep learning. We will cover the mathematical basics and provide a brief introduction to Python and cutting-edge deep learning frameworks but all students are ultimately expected to have some familiarity with programming.