O'Reilly logo
live online training icon Live Online training

Deep Learning with TensorFlow

enter image description here

Jon Krohn

Relatively obscure a few short years ago, Deep Learning is ubiquitous today across data-driven applications as diverse as machine vision, super-human game-playing, and natural language processing (NLP). This Live Training builds on the fundamentals of Deep Learning to develop a more in-depth understanding of Artificial Neural Networks using TensorFlow.

Many data and software professionals have become comfortable with architecting Deep Learning models using high-level APIs like Keras, PyTorch and MXNet. These APIs are often convenient because they abstract away the matrix-level nuances of designing neural nets, thereby facilitate quicker model-building. On the flipside, however, these APIs can obfuscate a strong understanding of how Deep Learning works, contain run-time inefficiencies, and hamper modelling possibilities. Through the development of a matrix-level appreciation of TensorFlow, Deep Learning is more thoroughly grasped, inefficiencies can be stamped out, and modelling possibilities become infinite.

To facilitate an intuitive understanding of matrix-level Deep Learning, essential theory will be introduced visually and pragmatically. Theory is then brought to life with interactive demos and hands-on exercises in TensorFlow, by far the most popular Deep Learning library.

What you'll learn-and how you can apply it

  • Understand the high-level theory and key language around TensorFlow graphs
  • Develop an advanced understanding of Deep Learning down to its matrix-level operations
  • Architect and train both Dense Nets and ConvNets, which are applicable to modelling any output given some input, with particular utility in the fields of Machine Vision, Natural Language Processing (NLP), and Deep Reinforcement Learning

Common Misunderstandings:

  • Building and training models in TensorFlow is not more challenging than using a high-level Deep Learning API like Keras -- it simply requires knowledge of the essentials of TensorFlow graph terminology
  • Using TensorFlow instills a more thorough appreciation of neural networks, enabling the creation of more innovative Deep Learning models
  • Through the construction of matrix-level TensorFlow graphs, one can customize modelling to both obtain more detailed feedback and avoid run-time inefficiencies

This training course is for you because...

  • You already have a working understanding of the fundamentals of Deep Learning
  • You want to move behind the high-level abstraction of Deep Learning APIs like Keras, PyTorch or MXNet to access the exquisite heart of matrix-level neural-network operations
  • You’d like to expand the range of Deep Learning models you can conceive of and construct

Prerequisites

  • Experience with an object-oriented programming language, e.g., Python (all code demos during the training will be in Python)
  • A working understanding of the fundamentals of Deep Learning would make it a lot easier to follow along with the training

Materials, downloads, or Supplemental Content needed in advance:

  • During class, we’ll work on Jupyter notebooks interactively in the cloud via the Safari JupyterHub platform. A link will be provided at the beginning of class.
  • Alternatively, if you’d like to run this Live Training’s Jupyter notebooks on your own local machine or server, cross-platform step-by-step instructions are available here

Resources:

About your instructor

Schedule

The timeframes are only estimates and may vary according to how the class is progressing

Segment 1: Introducing TensorFlow Graphs (90 min)

  • Training Overview
  • The Elements of a TensorFlow Graph
  • Constructing and Executing a TensorFlow Graph
  • Training a (Simple) Linear Model in TensorFlow
  • Review of Prerequisite Deep Learning Theory

Segment 2: Dense Neural Networks in TensorFlow (60 min)

  • Review a Dense Net in Keras
  • Designing a Dense Net in TensorFlow
  • Training a Dense Net in TensorFlow

Segment 3: Convolutional Neural Networks in TensorFlow (30 min)

  • Review a ConvNet in Keras
  • ConvNets in TensorFlow
  • Summary: When to Use TensorFlow Instead of Keras or another API