Getting Started with Tensorflow 2.0
This course focuses on introducing the TensorFlow 2.0 framework - exploring the features and functionality that it offers for building and training neural networks. This course discusses how TensorFlow 2.0 differs from TensorFlow 1.x and how the use of the Keras high-level API and eager execution makes TensorFlow 2.0 a very easy to work with even for complex models.
What you'll learn
TensorFlow has long been a powerful and widely used framework for building and training neural network models. In recent years though other frameworks such as PyTorch have gained popularity specifically due to their intuitive programming model which uses dynamic execution graphs. Now TensorFlow 2.0 offers all the ease of use of other frameworks along with TensorFlow's performance and functionality. TensorFlow's use of the Keras high-level API makes designing and training neural networks very straightforward while eager execution makes prototyping and debugging models simple.
First, you will explore the basic features in TensorFlow 2.0 and how its programming model differs from TensorFlow 1.x versions. You will understand the basic working of a neural network and its active learning unit, the neuron.
Next, you will compare and contrast static and dynamic computation graphs and understand the advantages and disadvantages of working with each kind of graph. You will get hands-on exploring execution in TensorFlow 2.0 in eager execution mode and harness the performance efficiencies of static graphs by using the tf.function decorator to decorate ordinary Python functions.
You will then learn how a neural network is trained using gradient descent optimization and how the GradientTape() library in TensorFlow calculates gradients automatically during the training phase of your neural network model.
Finally, you will learn how different APIs in Keras lend themselves to different use-cases. Sequential models consisting of layers stacked one on top of the other are simple and have long been supported by Keras. You will also explore the Functional API and model subclassing in Keras and then use these APIs to build regression as well as classification models
When you’re finished with this course, you will have the skills and knowledge to harness the computational power of the TensorFlow 2.0 framework and choose between the different model-building strategies available in Keras.
Table of contents
- The Computation Graph 3m
- Static and Dynamic Computation Graphs 7m
- Demo: TensorFlow V1 Sessions to Execute Static Computation Graphs 7m
- Demo: TensorBoard to Visualize Graphs 2m
- Demo: Eager Execution 4m
- tf.function 8m
- Demo: Running in Graph Mode Using @tf.function 6m
- Demo: Statements with Python Side Effects in Graph Mode 5m
- Demo: Instantiating Variables in Graph Mode 5m
- Gradient Descent 6m
- Forward and Backward Passes 3m
- Calculating Gradients Using Gradient Tape 5m
- Reverse Mode Automatic Differentiation 4m
- Demo: Gradient Tape for Gradient Calculations 4m
- Demo: Understanding Gradient Tape Operations 6m
- Demo: Simple Regression Using Gradient Calculation 8m
- Demo: Simple Regression with a Sequential Model 4m
- The Functional API and Model Subclassing 5m
- Demo: Exploring the Heart Disease Dataset 5m
- Demo: Building a Model Using the Keras Functional API 7m
- Demo: Exploring and Processing the Wine Dataset 4m
- Demo: Building and Training a Multi Class Classification Model Using Model Subclassing 6m
- Summary and Further Study 2m