Deep Learning for Engineers

Next running

9 Sep - 3 Oct
5:30pm-8:00pm Mon/Thu


San Francisco



Apply for this course

Interest in deep learning based applications has grown exponentially over the past few years, due to its surprising effectiveness. While deep learning may resemble magic, it is simply a collection of algorithms capable of finding useful representations of data, at multiple levels of abstraction.

This course will demystify the fundamentals of contemporary deep learning techniques, covering just enough theory to ground hands-on application. After the course, students should be comfortable tackling their own deep learning projects, whether for their work or as side projects.


  1. Introduction to Deep Learning and Review of Relevant Math & Statistics
  2. Building a Neural Network from Scratch, Including Backpropagation
  3. Image Classification with Convolutional Neural Networks (CNNs)
  4. Optimization Techniques
  5. Training Neural Networks
  6. Common Architectures
  7. Sequence Models: Recurrent Neural Networks (RNNs) and Long Short Term Memory (LSTM) Networks
  8. Generative Adversarial Nets (GANs)

Projects and exercises

This course involves a number of hands-on programming exercises, implementing many deep learning components from scratch, as well as utilizing existing tools once we have developed a thorough understanding of them. The course will be in Python, given its high readability and being common in the deep learning field.

Assumed knowledge

Participants are expected to be confident programmers, with a recommended 2 or more years of professional experience or equivalent. All exercises will be in Python. No math background is assumed beyond high school level, although some familiarity with linear algebra is advantageous (you may enjoy watching some of Grant Sanderson’s wonderful Essence of Linear Algebra videos beforehand).

Available sessions

9 Sep - 3 Oct
5:30pm-8:00pm Mon/Thu
San Francisco

This course will next be taught by

Dr. Brian Spiering

Dr. Brian Spiering is a Professor of Computer Science at University of San Francisco, with a focus on natural language processing and artificial intelligence. At Bradfield, he teaches the Deep Learning for Engineers course. He is also active in the San Francisco tech community as a volunteer and mentor at DataKind SF Bay and Delta Analytics.