Learning Machines: Theory to Practice

Patrick Hebron

Over the last decade, machine learning has undergone a philosophical Renaissance
through the innovation of a set of computational models and algorithms often referred
to as Deep Learning. These ideas have led to concrete advancements in long-standing
applied domains such as classification and time-series prediction. But the real
excitement over Deep Learning lies in its yet untapped potential. This course will
introduce some of the core technical concepts within Deep Learning and explore how
these emerging capabilities will transform the next generation of computing interfaces
such as search engines, intelligent assistants, connected homes and open-world video
games. In the first half of the semester, we will use class time and weekly incremental
programming exercises to explore the underlying theory and key algorithms of
machine learning as well as some of the more abstract insights offered by Deep
Learning into vexing phenomenological questions like:
Why do we replay and reconfigure memories in our dreams?
Why do we use only a small portion of our brains at any given time?
Why can we catch a baseball without being able to recite Newton’s equations?
And most importantly, what defines learning as a phenomenon?
In the second half of the semester, we will look at the emerging applications of these
technologies to art, design and toolmaking, culminating in final projects that relate the
techniques studied in this course to any field of human-computer interaction.
Required Text:
Anderson, Britt. Computational Neuroscience and Cognitive Modelling: A Student’s
Introduction to Methods and Procedures. Los Angeles: SAGE, 2014.
Programming Platform:
This course will be taught in Python and will expose students to scientific computing
andvisualization libraries including SciPy and Matplotlib.