Deep Learning for Engineers

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
  3. Image Classification with Convolutional Neural Networks (CNNs)
  4. Optimization Techniques
  5. Training Neural Networks: Learning Rates, Activation Functions and Dropout
  6. Common Architectures
  7. 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.

Deep Learning for Software Engineers is offered as a special guest course by Dr. Brian Spiering.

Dr. Spiering is a Professor of Computer Science at University of San Francisco. He teaches humans the languages of computers (primarily Python) and teaches computers the languages of humans (through natural language processing and artificial intelligence).

He is active in the San Francisco tech community as a volunteer and mentor at DataKind SF Bay and Delta Analytics.

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).

Schedule and price

This course is being offered as a special guest course by Dr. Brian Spiering, running 5:30pm-8:00pm Mondays and Wednesdays from 4-27 June 2018.

All classes are conducted in person at Bradfield, in small group seminar style. As such, places are strictly limited.

The total cost of tuition is $1,800.

Apply now Still have questions? Contact us.

[email protected]
576 Natoma St
San Francisco, California
© 2016 Bradfield School of Computer Science