Logo black r

Deep Learning
with TensorFLow

Dataviz

Deep Learning with TensorFlow Overview

This course teaches the core concepts of deep learning using TensorFlow, Google’s open-source computation graph library.

Deep learning has become standard in the tech industry, achieving state-of-the-art results in computer vision, natural language processing, and artificial intelligence. TensorFlow provides the flexibility needed to implement and research cutting edge architectures while allowing users to focus on the structure of their models as opposed to mathematical minutiae. Students will learn modern techniques with hands-on model building, data collection/transformation, and deployment.


Prerequisites

Deep learning is not an entry-level subject. In order to get the most out of the course, students should be familiar with the following:

There will be a pre-course workshop to refresh students on the requisite linear algebra and calculus techniques. Students with familiarity with NumPy will find it easier to pick up the material, but necessary components will be taught along with the rest of the course. Course materials will be hosted on GitHub, so knowledge of the bash console, Git, and the GitHub platform are beneficial, but not required.


Outcomes

Upon completion of the Deep Learning with TensorFlow course, students have:

An understanding of the techniques, concepts, terminology, and mathematics of deep machine learning for computer vision and natural language processing
Proficiency in TensorFlow to implement, train, visualize, export, and deploy deep models from scratch, as well as utilize pre-trained sources
Skills for cleaning, normalizing, and generating data to make the most out of available datasets.
Foundational knowledge of recent deep learning literature and experience implementing concepts introduced in those papers
Questions? Enroll
Sam abrahams
Sam Abrahams
SF Instructor

Hailing from the Washington, D.C. area, Sam is a deep learning consultant and TensorFlow expert. He's spent the past two years working with both Los Angeles and San Francisco companies looking to integrate machine learning into their tech stack. Sam has been building with, contributing to, and writing about TensorFlow since it was released to the public in November of 2015. With clients, Sam has used deep learning to create real-time mobile decision making, voice-to-text solutions, and numerous image recognition models. His co-authored book, titled TensorFlow for Machine Intelligence, was published by Bleeding Edge Press in July of 2016, and his professional goal is to bridge the gap between deep learning theory and practice.

Course Structure and Syllabus

Unit 0

Linear Algebra and Calculus Workshop (Optional)

Before class officially begins, we’ll have a brief, optional, on-site workshop for those in the class who need to brush up on their linear algebra and calculus.

We won’t need all of the theoretical knowledge from those subjects, but certain practical techniques are necessary:

  • Single variable derivatives
  • Summations (and derivatives of summations)
  • Matrix multiplication
  • Matrix manipulation (transpose, inverse)

Unit 1

TensorFlow and Machine Learning Fundamentals

This unit focuses on getting students acquainted with the TensorFlow framework as well as developing an intuition for techniques that are used throughout machine learning.

  • Installing TensorFlow
  • TensorFlow core API
  • Introduction to TensorBoard
  • Linear, logistic regression
  • Gradient descent

Unit 2

Neural Network Basics

Once we have familiarity with basic machine learning concepts, we will introduce the feedforward neural network, which lays the foundation for the rest of the models in the class.

  • Neural network structure
  • Neurons, activation functions (sigmoid, tanh, ReLU)
  • Forward propagation and backpropagation
  • Dropout, softmax, cross-entropy

Unit 3

Convolutional Neural Networks

Using pixels as independent inputs has several weaknesses, is there a better way? Yes! Convolutional layers are inspired from traditional image processing techniques, and are currently used in all manner of state of the art convolutional neural networks, or CNNs.

  • Convolutions, pooling
  • AlexNet, ResNet, Inception, and beyond
  • Transfer learning (for fun and profit!)
  • Object detection

Unit 4

Recurrent Neural Networks

Sometimes your inputs come in various lengths, such as text (each sentence could be of different length), or be naturally sequential (such as time series). Recurrent neural networks, or RNNs, are designed to handle data that comes in different lengths, and have become incredibly popular for various natural language processing tasks.

  • RNN basics
  • Long short term memory (LSTM)
  • Sentence classification
  • Text generation

Unit 5

Deploying TensorFlow Models

TensorFlow includes functionality to help developers easily put their models up in a deployment setting, which is one of the more attractive features of the software. With this, students should be able to take their trained models and get them ready to be used out in the wild.

  • Rudimentary TensorFlow deployment in pure Python
  • Setting up a basic TensorFlow Serving server (with some C++)
  • Accessing your model server remotely